آسیب پذیری

آسیب پذیری ارتقاء مجوز از راه دور در Apache CouchDB

آسیب پذیری CVE-2017-12635 در آبان ماه سال گذشته کشف و اطلاع رسانی شده است. ساعاتی قبل اکسپلویت این آسیب پذیری نیز منتشر شده است.

به دلیل تفاوت‌هایی که میان پارسر JSON مبتنی بر Erlang و پارسر مبتنی بر Javascript وجود دارد، در نسخه‌های ۱.۷.۰ و ۲ تا قبل از ۲.۱.۱ از پایگاه داده Apache CouchDB امکان ارسال مستندات[۱] _users با کلیدهای تکراری[۲] برای نقش‌ها[۳] وجود دارد. از این نقش‌ها برای کنترل دسترسی در درون پایگاه داده استفاده می شود. بهره بردار موفقیت آمیز از این آسیب پذیری بخصوص برای نقش _admin می‌تواند مجوز دسترسی در سطح مدیر را در اختیار کاربر قرار دهد.

این آسیب در کنار آسیب‌پذیری CVE-2017-12636 (اجرای کد از راه دور) به کاربر غیر مدیر اجازه اجرای دستورات shell را در ماشین سرور به‌عنوان کاربر سیستمی پایگاه داده می‌دهد.

بهترین امتیاز۹.۸ بحرانی
امتیاز تأثیر۵.۹
وضعیت اکسپلویتمنتشرشده
بردار حملهشبکه
پیچیدگی حملهآسان

 

توجه: ساعاتی پیش اکسپلویت این آسیب‌پذیری منتشرشده و در دسترس عموم قرار دارد!

برای آنکه وضعیت این آسیب‌پذیری را در سامانه ارزیابی کنید ساده‌ترین روش یافتن مستنداتی با کلیدهای تکراری است. برای وارسی این مسئله می‌توان از دستور زیر برای پایگاه داده _user استفاده کرد.

curl -s ‘admin:password@127.0.0.1:5984/_users/_all_docs?include_docs=true’ | grep -E ‘”roles”.+”roles”‘

 

همچنین دستور زیر برای پایگاه داده _replicator

curl -s ‘admin:password@127.0.0.1:5984/_users/_all_docs?include_docs=true’ | grep -E ‘“_replication_state”.+”_replication_state”‘

 

برای رفع این مشکل پایگاه داده را به نسخه ۱.۷.۱ و یا ۲.۱.۱ ارتقاء دهید.

 

[۱] Documents

[۲] Duplicate

[۳] Roles

آسیب پذیری ارتقاء مجوز از راه دور در Apache CouchDB
To Top