آسیب‌پذیری سرریز بافر هیپ در Sudo

یک آسیب‌پذیری سرریز بافر هیپ در ابزار Sudo، با شناسه CVE-2021-3156 و شدت بالا (امتیاز ۷.۸ از ۱۰) که به هر کاربر محلی اجازه می‌دهد بدون احراز هویت به عنوان کاربر root، در سیستم‌های لینوکسیِ آسیب‌پذیر دسترسی root بگیرد.

Sudo _مخفف Superuser do_ یک قابلیت پیش‌فرض در اکثر توزیعات لینوکس و سیستم‌عامل‌های مبتنی بر یونیکس است که به کاربران اجاز ه می‌دهد دستورات را به عنوان کاربر root اجرا کنند. بنابراین، این حمله شامل ارتقاء سطح دسترسیِ غیرمجاز با سوءاستفاده از قابلیت سودمند لینوکس می‌باشد که به دلیل سرریز بافر هیپ اتفاق می‌افتد و از مدیریت نادرست بک‌اسلش‌ها ‌در آرگومان‌های دستور ناشی می‌شود. در واقع، Sudo نمی‌تواند تجزیه‌ی پارامترهای دستور را به درستی انجام دهد.

از آنجا که ابزار Sudo نمی‌تواند پارامترهای دستور را به درستی تجزیه و مدیریت کند، اگر آرگومانِ خط فرمان با بک‌اسلش (\) خاتمه یابد _مانند دستور \ sudo make me a sandwich_ آنگاه کامپیوتر فراتر از بک‌اسلش را می‌خواند (کاراکترِ موردِ انتظار ِبعدی) و کاراکتر خارج از محدوده را در بافر کپی می‌کند. این امر به مهاجم اجازه می‌دهد تا حافظه را با هر اندازه بافر که می‌خواهد بازنویسی کند. از لحاظ تئوری مهاجم نباید بتواند از این طریق حافظه‌ی هیپ را با داده‌های دلخواه بازنویسی کند، اما اجرای Sudo با i- یا s- موجب می‌شود به طور خودکار از کاراکترهای خاصی که همراه بک‌اسلش می‌آیند صرف‌نظر شود. بنابراین، با یک بک‌اسلش دیگر مانند \\، از بک‌اسلش صرف‌نظر می‌شود و در نتیجه، سیاست امنیتی کاربران Sudoer که مشخص می‌کند چه کاربرانی چه دستوراتی می‌توانند اجرا کنند، پیش از آنکه مورد بررسی قرار گیرد با یک کاراکتر خاص نادیده گرفته می‌شود.

نسخه‌های تحت تأثیر
این آسیب‌پذیری، تمام نسخه‌های قدیمی Sudo (از ۱.۸.۲ تا ۱.۸.۳۱p2) و تمام نسخه‌های پایدار آن (از ۱.۹.۰ تا ۱.۹.۵p1) را تحت تأثیر قرار می‌دهد.

روش شناسایی
با انجام مراحل زیر می‌توان سیستم آسیب‌پذیر را شناسایی نمود:
۱. با یک کاربر غیر root به سیستم وارد شوید.
۲. دستور sudoedit -s / را اجرا کنید.
۳. اگر سیستم آسیب‌پذیر باشد، در پاسخ خطایی بازگردانده می‌شود که با “:sudoedit” شروع می‌شود.
۴. اگر سیستم‌ وصله شده باشد و آسیب‌پذیر نباشد، در پاسخ خطایی بازگردانده می‌شود که با “:Usage” شروع می‌شود.

توصیه‌های امنیتی
آسیب‌پذیری مذکور در Sudo نسخه‌‌ی ۱.۹.۵p2برطرف شده است.

 

منبع خبر:

https://securityaffairs.co/wordpress/113900/hacking/sudo-vulnerability-cve-2021-3156.html

https://capsule8.com/blog/heap-overflow-in-sudo-the-struggling-escape-artist-cve-2021-3156