بررسی تخصصی حمله سایبری به صدا و سیما – بخش سوم

در بخش اول مطلب بررسی تخصصی حمله سایبری به صدا و سیما گفتیم که در چند ماه گذشته، موج جدیدی از حملات سایبری ایران را فرا گرفته است. این حملات به‌هیچ‌وجه به سادگی تخریب چهره‌ی وب‌سایت‌ها نیستند؛ این موج جدید زیرساخت‌های ملی را هدف گرفته و اختلالاتی اساسی در خدمات عمومی ایجاد کرده است. سپس در بخش دوم مطلب به تجزیه‌و‌تحلیل عمیق حمله انجام شده به صدا و سیما پرداختیم.

Backdoorهای ایجاد شده در حمله سایبری به صدا و سیما

WinScreeny

نام این ابزار از مسیر PDB می‌آید: C:\work\winscreeny\winscreeny\obj\Debug\winscreeny.pdb. هدف اصلی این Backdoor گرفتن اسکرین‌شات از رایانه‌ی قربانی است. دو نمونه از این Backdoor پیدا شد: اولین نمونه نسخه‌ی منتشرشده است که با نام mslicval.exe در VT آپلود شده بود و دومین نمونه نسخه‌ی Debug است که precg2.exe نام دارد. بدیهی است که این فایل‌ها همراه با Artifactهای دیگری که کشف شده بودند، در VT آپلود شدند.

این Backdoor را می‌توان براساس آرگومان خط فرمان به شیوه‌های مختلفی اجرا کرد:

  • None – یک SimpleTCPServer را اجرا می‌کند که روی پورت ۱۸۰۰۰ گوش می‌کند.
  • service – به‌عنوان یک سرویس با نام Service1 اجرا می‌گردد. در شروع، این سرویس یک Task برنامه‌ریزی‌شده را با دستور زیر اجرا می‌کند:

 schtasks /create /TN \”Microsoft\\Windows\\.NET Framework\\.NETASM\”/TR \” <file_path> \” /ST <current_time + 1:10> /SC ONCE /F.

  • setup – سعی می‌کند با استفاده از عملکرد LsaAddAccountRights API سطح دسترسی بالایی به دست آورد و سپس خود را به‌عنوان یک سرویس اجرا کند.

بدافزار روی پورت ۱۸۰۰۰ گوش‌به‌زنگِ Packetها می‌ماند و برای هر Packet پیام حاوی دستور scr= که با روش POST ارسال شده بود را چک می‌کند. اگر این شرایط محیا شوند، بدافزار یک اسکرین‌شات را در فایلی به نام screeny-<timestamp>.png ذخیره کرده و اگر حمله موفیت‌آمیز باشد، یک پیام «Done» برای مهاجم نمایش داده می‌شود.

شکل ۵ – کد ذخیره‌ی Winscreeny Screenshot

جالب توجه است که نسخه‌ی منتشرشده‌ی این بدافزار قابلیت اجرای دستور را نیز دارد: از دستور =s پشتیبانی می‌کند که یک XORed رشته‌ی کدگذاری‌شده با base64 را با کلید یک بایتی 0x24 دریافت می‌کند. رشته‌ی کدگشایی‌شده توسط cmd اجراشده و نتیجه‌ی اجرا به سرور بازگردانی می‌شود. کدی که به این ویژگی رسیدگی می‌کند نیز مجدداً در HttpService Backdoor مورد استفاده قرار می‌گیرد.

HttpCallbackService

HttpCallbackService یک Remote Administration Tool یا RAT با یک مسیر PDB آشنا است:

C:\work\simpleserver\HttpCallbackService\obj\Release\HttpCallbackService.pdb

 C&C URL آن را می‌توان به دو شیوه مشخص کرد: یک آرگومان خط فرمان یا فایل پیکربندی callservice.ini. سپس مقداری که دریافت می‌شود با یک رشته‌ی کوتاه تکمیل می‌گردد:?m=  اگر URL با «.aspx» یا «.php» تمام شود؛ =m اگر URL با «/» تمام شود و یا =m/ در هر مورد دیگر.

متأسفانه، هیچ پیکربندی یا Artifact دیگری پیدا نشد که به HttpCallbackService مربوط باشد، درنتیجه سرور C&C در این حمله همچنان ناشناس است.

هر ۵ ثانیه، HttpCallbackService با استفاده از روش webClient.DownloadString درخواستی را به C&C URL می‌فرستد تا فهرستی از دستورات که توسط \r\n تقسیم‌بندی می‌شوند، دریافت گردند. اگر بدافزار هیچ دستوری را در ۵ دقیقه‌ی آخر دریافت نکند و isStayAliveMode Flag غیرفعال شود، این پنجره‌ی زمانی به یک دقیقه افزایش پیدا می‌کند.
موارد زیر دستوراتی هستند که توسط RAT پشتیبانی می‌گردند:

دستور آرگومان‌ها اقدام
Upload upload_path، محتوای کدگذاری‌شده‌ی base64 آپلود یک فایل به رایانه‌ی قربانی ممکن است سرور فایل را در چند بخش بفرستد، که هر کدام از آن‌ها از base64 کدگشایی شده و در فایل ضمیمه می‌شوند
Download نام فایل دانلود کردن فایل از رایانه‌ی قربانی به سرور C&C، فایل توسط base-64 کدگذاری شده و بخش‌های ۱۰۲۴۰۰ بایتی ارسال می‌شود
stay-alive فعال‌سازی isStayAliveMode Flag و تغییر تایمر به ۵ ثانیه
cool-down غیرفعال کردن isStayAliveMode Flag
پیشفرض رشته‌ی دستور اجرای دستور در cmd و بازگردانی نتایج به سرور C&C

وقتی‌که نتایج دستورات در سرور آپلود شوند، داده‌ها به یک URL کمی متفاوت ارسال می‌گردد: اکنون عدد «۱» به C&C URL که قبلاً تعریف شده بود اضافه می‌شود. داده‌ها با استفاده از روش WebClient.UploadValues در فرمت زیر ارسال می‌گردد:

  • download=<file_name>\r\n————–\r\n<base64 of chunk> برای دستور دانلود
  • <command>\r\n————–\r\n<result> برای دستور cmd

HttpService

HttpService یک Backdoor دیگر است که روی یک پورت به‌خصوص گوش‌به‌زنگ است: می‌تواند یک آرگومان دستور خط، پورت از پیش تعریف شده بسته به نمونه یا مقداری از فایل پیکربندی باشد: <exe_name>.ini. چندین نمونه با پورت‌های پیشفرض ۱۹۳۳۶، ۱۹۳۳۴، ۱۹۳۳۳ و همچنین دو فایل پیکربندی متفاوت که با مقادیر ۱۹۳۳۶ و ۱۹۳۳۵T در VT آپلود شده بودند، پیدا شد.

هر نمونه دارای یک نسخه‌ی هاردکد شده است. فایل‌هایی که کشف شدند به سه نسخه‌ی متفاوت تعلق دارند: ۰.۰.۵، ۰.۰.۱۱v4H و ۰.۰.۱۵v4H. نسخه‌ی ۰.۰.۵ به یک پورت به‌خصوص با یک سرور Simple TCP گوش می‌دهد، درحالی‌که ۰.۰.۱۱v4H و ۰.۰.۱۵v4H برمبنای Simple HTTP Server هستند. تمام آن‌ها از HTML Agility Pack برای HTML Parsing و کتابخانه‌ی IonicZip برای اقدامات فشرده‌سازی استفاده می‌کنند.

بالاترین نسخه (۰.۰.۱۵v4H) از Backdoor دارای چندین قابلیت است، از جمله اجرای دستور و دستکاری فایل‌ها.

اجرای دستور: دستور «cmd» باعث می‌شود که Backdoor دستور مشخصی را با cmd.exe اجرا کند و نتیجه را در قالب زیر نمایش دهد: <div style=’color: red’><result_string></div>. به‌علاوه، وقتی‌که Backdoor دستور «=i» را دریافت می‌کند، می‌تواند یک cmd shell تعاملی را اجرا کند که آرگومان‌هایش می‌توانند موارد زیر باشند:

  • «۱» – دریافت خروجی از Shell و ارسال آن به C&C.
  • «۲» – پایان دادن به Shell تعاملی و پاکسازی.
  • پیشفرض – کدگشایی و رمزگشایی رشته‌ی XORed و سپس اجرای دستور در Shell و ذخیره‌ی خروجی.

این بدافزار نیز مشابه WinScreeny، دارای دستور «=s» با رشته‌ی XORed با کلید یک بایتی 0x24 به‌عنوان یک آرگومان است. رشته‌ی کدگشایی‌شده توسط cmd.exe اجرا شده و نتیجه به سرور بازگردانی می‌شود.

اتصالات پراکسی: پس‌ازاینکه دستور «=p» یا «=b» دریافت شد، Backdoor از رایانه‌ی قربانی به‌عنوان یک پراکسی به URLی استفاده می‌کند که به‌عنوان یک آرگومان آن را دریافت می‌نماید. Backdoor با این URL ارتباط برقرار می‌کند، درخواست C&C Server را تغییر جهت می‌دهد و منتظر یک پاسخ می‌ماند تا آن را دوباره به C&C بفرستد.

دانلود و آپلود فایل‌ها: دستور «=f» یا «=۱» به Backdoor این توانایی را می‌دهد که فایلی را که به‌عنوان یک آرگومان ارائه می‌شود از مسیر دانلود کند یا یک فایل که به‌عنوان آرگومان ارائه می‌شود را با محتوای بدنه‌ی پیام بنویسد. پس‌ازاینکه بدافزار دستور «=m» را دریافت می‌کند، بدنه‌ی پیام را در مسیر <base_directory><client_address>.out می‌نویسد، داده را از <base_directory><client_address>.in می‌خواند و آن را به C&C می‌فرستد. اگر فایل وجود نداشته باشد، بدافزار فایل را می‌سازد و آن را به تاریخ و زمانی کنونی می‌نویسد.

اجرای دستورات SQL: دستور “con=” / “c=” رشته‌ی اتصال SQL DB و SQL Query را دریافت کرده و نتیجه را به سرور بازمی‌گرداند.

دستکاری فایل‌های Local: دستور «<path>» چک می‌کند که آیا فایل یا دایرکتوری وجود دارد یا خیر و سپس براساس مقدار Query یکی از سه کار زیر را انجام می‌دهد:

  • zip»» – ساخت یک فایل zip از محتوای دایرکتوری و بازگرداندن آن به C&C.
  • unzip»» – Unzip کردن فایل با استفاده از مسیری که توسط C&C فراهم شده است.
  • del»» – فایل را حذف می‌کند.

جالب اینجاست که در تمام این موارد، بدافزار کل محتوای دایرکتوری (شامل ساب‌دایرکتوری‌ها) را به‌عنوان یک صفحه‌ی HTML ارسال می‌کند که بسته به نوع فایل حاوی کلیدهای Zip، Unzip و Delete هستند. رابط کاربری از سوی مهاجم این شکل را دارد:

شکل ۶ – صفحه‌ی HTML با فهرست دایرکتوری که به سرور C&C بازگردانده شده است

ServerLaunch Dropper

نمونه‌ی HttpServer نسخه‌ی ۰.۰.۵ همراه با Dropper آن به نام dwDrvInst.exe ارسال شد که از فایل‌های قابل‌اجرای نرم‌افزار دسترسی از راه دور که توسط شرکت DameWare ساخته شده است، تقلید می‌کند. مسیر PDB این ابزار دارای الگوی مشابهی است، C:\work\ServerLaunch\Release\ServerLaunch.pdb

 اما این ابزار در زبان ++C نوشته شده است، نه مثل بقیه به NET. و تقریباً دو ماه قبل از حمله در ۲ دسامبر ۲۰۲۱ جمع‌آوری شده است.

ServerLaunch حاوی سه فایل قابل‌اجرا در منابع است که آن‌ها را در ionic.zip.dll، httpservice2 و httpservice4، که همگی در C:\Users\Public\ هستند Drop می‌کند. سپس بدافزار هم httpservice2 و هم httpservice4 را بدون آرگومان شروع می‌کند. هر یک از آن‌ها دارای پورت از پیش تعریف شده‌ی متفاوتی است که روی آن گوش‌به‌زنگ باشد و احتمالاً به مهاجم این قابلیت را می‌دهد که از افزونگی ارتباط C&C اطمینان حاصل کند.

ارتباط بین فایل‌ها و حمله

به چندین ابزار مختلف و برخی از Artifactهای مرتبط به استفاده از آن‌ها اشاره شد. واضح است که تمام این ابزار توسط یک عامل ساخته شده‌اند و به هم مرتبط هستند. مثلاً ابزار Screenshot به نام Winscreeny حاوی عملکرد آپلود Screenshotها برای مهاجمین نیست و این امر احتمالاً نشان می‌دهد که برای انجام عملیات روی Backdoorهای دیگر حساب می‌کند. نام تکرارشونده‌ی Service1 برای تمام ابزار نشان می‌دهد که اگر Backdoorهای مختلف روی سیستم یکسانی کار کنند، اکثراً با آرگومان‌های خط فرمان یا فایل‌های پیکربندی فراهم شده اجرا می‌گردند.

با توجه به اینکه نمونه‌ها به یکدیگر مرتبط هستند، می‌توان به ارتباط بین این فایل‌ها و حمله‌ی سایبری صداوسیما پی برد.

  • کل کلاستر فعالیت به‌هم‌پیوسته است و اکثراً از IPهای ایران در بازه زمانی یکسانی، احتمالاً توسط پاسخ‌دهنده به حادثه، به VT ارسال شدند.
  • فایل‌های صوتی و تصویری مورد استفاده‌ی این ابزار با فایل‌هایی که به‌طور زنده روی تلویزیون ایران پخش شده بود، یکسان هستند. حساب توییتر GhyamSarnegouni@ که در این ویدئو نمایش داده شده بود حاوی چند ویدئو از کانال‌های تلویزیونی است که هم ویدئو و هم صداهایی که در موردش صحبت شد در آن قرار دارند.
  • چندین Artifact مثل Matrox DSX، Autocue QTV، TFI Arista Playout Server و غیره که در نمونه‌ها به آن‌ها اشاره شده بود نشان می‌دهند که این فایل‌ها برای محیط پخش بزرگ‌تری مد نظر قرار گرفته بودند.
  • از بین Artifactهای جرم‌شناسی که همراه با ویدئو و فایل‌های قابل‌اجرا ارسال شده بود، فایل‌های Windows Event Viewer کشف شدند که حاوی شواهدی بودند که نشان می‌دادند سعی شده بود نمونه‌ها در محیط شبکه تلویزیون ایران اجرا شوند، دامینی که به‌صورت عمومی Resolve نمی‌شود. مهر زمانی این Logهای به‌خصوص زمانی بعد از حادثه را نشان می‌دهد.

شکل ۸ – Screenshot از Log برنامه کاربردی که حاوی شواهد اجرای Wiper است.

  • چندین شواهد جرم‌شناسی دیگر از این کلاستر فایل VT حاوی Artifactهای دیگری بودند که مستقیماً به صداوسیما ارتباط داشتند. مثلاً یک ابزار داخلی به نام MIT_FreeSizeService (md5:307e7440a15c8eed720566f067a2e96b) دارای لوگوی صداوسیما است و Memory Dump نرم‌افزار MetaSAN به نام executable.4504.exe (md5:1fc57ccec4668bbcbebaa9c734a437ba) دارای رشته‌های حافظه است که نشان می‌دهند نرم‌افزار از دامین MIT-TV روی این سیستم اجرا شده بود.

شکل ۹ – ارسال ابزار ناشناس به VT که دارای رشته‌ی MIT (مشابه نام دامین) و حاوی لوگوی صداوسیما است

IOCها

فایل‌های حمله:

Hash نام شرح
۱۶۰۷f31ac66dfec739dc675ade921582acb8446c2ac7d6d1bc65a3e993fc5b54 msdskint.exe Wiper
۴۲ed646eed4f949c456c637a222e7d94dd8ac67ed5ebda5e63c7b7979076d9cf msdskint.exe Wiper
۸bdf6e262966a59a7242d279e511dd694467f07d1d76c456a0c26d0db2ec48a8 HttpService2.exe HttpService
۴۲۷c105859c3dc62ece790e41a42b0f6ae587496a07d3bd190143179cdf6c6bd HttpService4.exe HttpService
e3d61cbbfbe41295dd52acff388d1d8b1d414a143d77def4221fd885aae6cd83 HttpService2.exe HttpService
۰۹۶bae94e09059e2e3106503353b1b4f7116fa667600ca2ab3fa7591708e645a HttpService4.exe HttpService
۱۳a016b8f502c81e172c09114f25e4d8a8632768aefd56c5f6d147e9b6466216 HttpService4.exe HttpService
ea740894227ae1df923997edb7bda3a00f523fbff7cc02d3b5e6b3de19d672fc HttpCallbackService.exe HttpCallbackService
۶۲b692be251feb63af2723a68975976b749cab20014ffaa6488af80f4f03e0a1 dwDrvInst.exe ServerLaunch
۴۱e0c19cd6a66b4c48cc693fd4be96733bc8ccbe91f7d92031d08ed7ff69759a precg2.exe WinScreeny
e9e4a8650094e4de6e5d748f7bc6f605c23090d076338f437a9a70ced4a9382d mslicval.exe WinScreeny
d788ebc7ee98c222f46d7ca2347027643784a78b5954c9a31734ec1b197bc2aa Avar.exe Avar
۱۱۵۵dd06e0b108bde3addcdbd5d1da4dc18ca245c39ce7d967f8971eb0f88dbb SimplePlayout.exe SimplePlayout
a25215c9adce51a3ecfe34c802d3e7d865cf410ddbe10101e3b41f6ba11347a4 TSE_90E11.mp4 فایل ویدئوی MP4
۴cc21810d786dca94e01d0714d37e3f097ff6e3813bf6e17a9bd86cd9a4ceb2b TSE_90E11.001 فایل WAV
۷ea7b20b87ded3c297ec0890ee8a396427d70caf983b42f479d8fad38629b684 playoutabcpxtveni.bat
bc8de80a28c8ae55415ccdfece270f6548f067fc2a00e799baf0279d4d560807 breakusufjkjdil.bat
۱۹۷f13580ec249fa84b1e54f978c5cab60f22561a2fab2ff60bdb2d5bfa25512 avapweiguyyyw.bat
efc8f12c53d1730fa8ac00cfa60e63ab43d90f42879ef69d7f6fb9978246f9cb playjfalcfgcdq.bat
a2d493c2cb25fc03f5d31cf3023b473d71d38b972eccdb7873f50d2344ea7753 simpleplayout.ini
c305b3cb96a34258a3e702526de6548b2de99449c0839a9aea518accc7c861ab ۴۳۶۷۴۸-HttpService4.exe.ini
۸b74c08c33cd8a0cc1eaf822caeaad6b54bc39e4839e575f3c0ece4bb8992408 ۴۳۶۷۵۱-HttpService4_2.exe.ini

Artifactهای جرم‌شناسی

Hash نام شرح
0daa0aefdc6d0641eb06e62bc8c92a0696aa8089258cb2d3552ac137d53237ec sec.evtx Log رخداد امنیتی از یکی از سیستم‌ها
a3b9bd57e6b281610e570be87883d907992bdf7be3bcd37885ee2cf97d930cd3 application.evtx Log رخداد برنامه‌های کاربردی از یکی از سیستم‌ها
۰۶۷ae6ecfd108a79a32eb1a76a262868d8f3a9a7924b26091f0e2229152bdd9d lastfile2 مسیر به آخرین فایلی که Wiper شده و توسط Wiper حذف شده بود

منبع:

https://research.checkpoint.com/2022/evilplayout-attack-against-irans-state-broadcaster

ایمیل خود را وارد کنید و عضو خبرنامه شوید.
Start typing to see posts you are looking for.

جهت ثبت درخواست همین حالا فرم را تکمیل نمایید.

با تکمیل فرم و ارسال درخواست خود، همکاران و کارشناسان ما در اسرع وقت با شما تماس خواهند گرفت.

جهت دانلود کاتالوگ شرکت همین حالا فرم را تکمیل نمایید.

جهت دانلود گزارش امنیتی 2023 همین حالا فرم را تکمیل نمایید.

در دنیای امنیت چه خبر؟
جهت دریافت آخرین اخبار دنیای امنیت شبکه و اطلاعات ایمیل خود را وارد کنید.