۶ شهریور ۱۳۹۷

آنچه از حمله بدافزار TRITON می‌آموزیم

در ماه دسامبر ۲۰۱۷ گزارش شد که در اثر حمله یک بدافزار به تاسیسات یک پتروشیمی نفت و گاز، سیستم ایمنی این پتروشیمی خاموش شده است. بدافزاری به نام TRITON (همچنین TRISIS یا HatMan) از دیگر حملات سایبری صنعتی فراتر رفته است؛ زیرا به طور مستقیم با سامانه ایمنی تاسیسات (Safety Instrumented System) که به اختصار SIS نامیده می‌شود، در تعامل است و آن را کنترل می‌کند. SIS آخرین خط دفاع ایمنی اتوماتیک برای تاسیسات صنعتی است که برای جلوگیری از نابودی تجهیزات و حوادث فاجعه‌بار مانند انفجار و آتش‌سوزی طراحی شده است.

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

این حمله تا قبل از رسیدن به هدف نهایی خود (از کارانداختن فرآیند فیزیکی) کشف شد. بدافزار TRITON اکنون در اینترنت به راحتی قابل دسترسی است. ممکن است لازم باشد بدانید کجا بدنبال آن بگردید، اما پیداکردن آن غیرممکن نیست. این بدافزار می‌تواند توسط افراد با مهارت‌های برنامه‌نویسی نسبتا کم ایجاد شود تا حملات پیچیده را پیاده‌سازی کند. تیم تحقیقاتی-امنیتی Nozomi  Networks این حمله را مورد بررسی قرارد داد تا منابع موردنیاز، چگونگی توسعه و علت شکست این حمله را کشف کند. نتایج این تحقیقات در سایت Black Hat USA قرار گرفته است. در این خبرنامه نیز گام‌های بازسازی این حمله معرفی می‌شود. این تحقیقات نشان داد که زمان، تلاش، منابع مالی و سطح مهارت لازم برای ایجاد چارچوب بدافزار TRITON آنقدر هم زیاد نیست؛ هر مهاجم باانگیزه‌ای با تسلط به مهارت‌های مهندسی معکوس و درک جزئی از سیستم‌های صنعتی می‌توانند یک چارچوب بدافزار همانند TRITON ایجاد کند.

این تحقیقات هم‌چنین نشان داد که حمله TRITON با نفوذ به شبکه IT با استفاده از حملات شناخته‌شده که به راحتی قابل پیاده‌سازی هستند، آغاز شد. مهاجمان از طریق سیستم‌هایی که برای هر دو محیط در دسترس بودند، به شبکه OT (تکنولوژی عملیاتی) نفوذ کردند. در شبکه OT، بازیگران تهدید قابلیت آلوده‌سازی ایستگاه کاری مهندسی برای سیستم SIS را داشتند. برای ایجاد این آلودگی احتمالا از تکنیک مهندسی اجتماعی استفاده شده است به این صورت که مهندس با دریافت یا دانلود فایل با یک نام قانونی (در این تحقیق با نام “trilog.exe”)، راه نفوذ به سیستم را باز کرده است. این نام اینطور نشان می‌دهد که dropper (فایل آلوده)، یک فایل تمیز و قابل‌اجرا می‌باشد که مربوط به Triconex و قابلیت‌های گزارش آن (TRIconex LOGING filename) است.

هدف اصلی از dropper این بود که پی‌لود مخرب را به هدف (در این تحقیق کنترل کننده SIS) منتقل کند. پس از اجرا، این فایل مخرب، پی‌لود واقعی را به حافظه تزریق می‌کند. پی‌لود مخرب شامل دو فایل باینری با نام‌های inject.bin و imain.bin می‌باشد. یکی از کارهایی که این dropper انجام می‌دهد این است که این فایل‌ها را خوانده و در حافظه Triconex اجرا می‌کند. dropper به زبان پایتون توسعه یافته و در داخل فایل اجرایی trilog.exe کامپایل شده است. این فایل شامل پیاده‌سازی پروتکل TriStation است که توسط بازیگران تهدید، مهندسی معکوس شده است و برای برقراری ارتباط با دستگاه هدف مورد استفاده می‌باشد.

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

  • دریافت تجهیزات مهندسی TRITON
  • دریافت کنترل‌کننده Triconex
  • مهندسی معکوس TriStation Suite
  • کاربران قدرتمند ناشناس یا بدون ضمانت
  • تجزیه و تحلیل سخت افزار Triconex
  • اجرای پروتکل پشته TriStation

علت انجام نشدن مرحله پایانی حمله Triton

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

در مورد TRITON مرحله نهایی این حمله گم شده است. پس از اینکه Triconex هدف با نرم افزار مخرب آلوده شد، یکی از پردازنده‌های اصلی هشدار افزونگی داد. این عمل سه پردازنده اصلی را مجبور به اجرای پروتکل خاموشی ایمنی کرد. معلوم نیست که آیا این هشدار به خاطر dropper در حال تزریق بدافزار به حافظه و یا یک نقص غیرمنتظره هنگام اجرای پی‌لود در OT بوده است. یکی از محتمل‌ترین فرضیات این است که مهاجم یک پی‌لود خاص OT با یک دسترسی حافظه نامناسب تزریق کرده است که منجر به اختلال شده است. در این تحقیق زیرساخت Triconex، از جمله اتصال یک دستگاه میدان به کنترل‌کننده (یک کمپرسور و یک بالون) دوباره بازسازی شد. برنامه‌ای که توسط کنترل‌کننده کنترل می‌شود، کمپرسور را اجرا می‌کند که فرآیند تورم و تخلیه را در یک روش خاص، هماهنگ و مداوم کنترل می‌کند. سپس از قابلیت های TRITON برای تزریق یک فرمان استفاده شد که رفتار ناظر امنیتی را تغییر داد و باعث شد که بالون بیش از حد متورم شده و در نتیجه یک انفجار رخ داد.

نتایج

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

 

منابع

[۱]. “Understanding TRITON and the Missing Final Stage of the Attack” , ۰۹, Aug, 2018, https://threatpost.com/understanding-triton-and-the-missing-final-stage-of-the-attack/134895

[۲]. “TRITON: How it Disrupted Safety Systems and Changed the Threat Landscape of Industrial Control Systems Forever”, https://www.blackhat.com