این نوع جدید، به مانند سه نسخه آخر استاکسنت که در سالهای 2009 و 2010 پخش شدند، برای حمله به PLC های (برنامههای کنترل منطقی) زیمنس مورد استفاده در تأسیسات غنیسازی نطنز طراحی شده است. اما این نوع جدید به جای تغییر دادن سرعت چرخش سانتریفیوژهای تحت کنترل PLC ها، بر مختل نمودن عملکرد شیرهای کنترل جریان گاز هگزافلورید اورانیوم در سانتریفیوژها و آبشارها (سازههای متصل کننده چندین سانتریفیوژ برای عبور گاز از میان آنها در فرایند غنیسازی) تمرکز دارد. هدف این بدافزار کنترل جابجایی گاز به نحوی است که فشار داخل سانتریفیوژها و آبشار پنج برابر فشار معمولی میشود. «لیام اُمورکو» ، مدیر عملیات واکنش امنیتی شرکت سیمانتک در این باره میگوید: "این میتواند پیامدهای مهلکی برای یک تأسیسات داشته باشد. چون هنگامی که فشار بالا میرود، احتمال این که گاز به حالت جامد در بیاید افزایش مییابد، و این میتواند آسیب شدیدی به سانتریفیوژها بزند." یافته اسرار متعددی را پیرامون نسخههای ناقص ویروس مهاجم استاکسنت سالهای 2009 و 2010 که توسط مهاجمین از کار انداخته شد برملا میکند. نسخههای 2009 و 2010 استاکسنت، دو زنجیره از حملات را در بر میگرفت که علیه مدلهای مختلف PLC ساخت زیمنس (یعنی Siemens S7-315 و S7-417) در تأسیسات غنیسازی ایران مورد استفاده قرار گرفتند.
■چرا کد مهاجم 417 عمدا از کار انداخته شد؟ ■
البته در این انواع اخیر استاکسنت تنها کد مهاجم 315 کار میکند. کد مهاجم 417 عمدا توسط خود مهاجمین از کار انداخته شد تا کارشناسان نتوانند پی ببرند دقیقا برای چه کاری طراحی شده بود. در نتیجه، کارشناسان تا مدتها بر این باور بودند که کارکرد آن تخریب شیرها بوده، اما دقیقا نمیدانستند چگونه آنها را تحت تاثیر قرار میداد. بعلاوه دقیقا مشخص نیست که چرا کد مهاجم از کار انداخته شد؛ آیا مهاجمین نتوانستند کد را تکمیل نمایند یا به دلایل دیگری آن را از کار انداختند؟
نسخه 2007 استاکسنت با مشخص نمودن این که کد مهاجم 417 تکمیل بوده و قبل از این که مهاجمین آن را در نسخههای بعد از کار بیندازند فعال بوده است، به این سؤال پاسخ میدهد. از آنجایی که نسخه 2007 فقط محتوی کد تهاجمی 417 بود (بدون کدی که قصد حمله به 315 PLC زیمنس داشته باشد) به نظر میرسد مهاجمین کد 417 را در نسخههای بعدی از کار انداختند چون قصد تغییر تاکتیک داشتهاند، و تمرکز خود را از تخریب شیرها به تخریب سانتریفیوژها تغییر دادهاند. چند ماه قبل سیمانتک در جریان جستجوی عادی دیتابیس بدافزارهای خود و هنگام بررسی فایلهایی که با الگوهای بدافزارهای شناخته شده مطابقت داشتند توانست نسخه 2007 را کشف کند.
■نسخه جدید اوایل 2007 مشغول خرابکاری بوده است■
گرچه نسخه جدید اخیرا کشف شده، اما تقریبا از اوایل نوامبر 2007 مشغول خرابکاری بوده است، هنگامیکه شخصی آن را برای تجزیه و تحلیل در Virus Total آپلود نموده. Virus Total یک اسکنر ویروس آنلاین مجانی متشکل از 36 برند آنتیویروس است، و کارشناسان از آن به منظور بررسی فایلهای آلوده به بدافزارهای شناخته شده استفاده مینمایند. هنوز مشخص نیست چه کسی نمونه را به Virus Total فرستاده یا در چه کشوری مستقر بوده است، اما سیمانتک معتقد است نسخه 2007 دسترسی محدودی داشته و احتمالا تنها به دستگاههای ایران صدمه زده است. تاکنون اولین نوع شناخته شده استاکسنت در ژوئن 2009 پخش شد، و پس از آن نسخههای دوم و سوم در مارس 2010 و آوریل 2010 آمدند. کارشناسان، بر مبنای اعدادی که مهاجمین بر روی کدهای مهاجم میگذارند و دیگر نشانهها، همواره تردید داشتهاند که انواع دیگر استاکسنت هم وجود داشته باشند. مثلا نسخه ژوئن 2009 با عنوان نسخه ۱.۰۰۱ معرفی شد. نسخه مارس 2010 عنوان ۱.۱۰۰ و نسخه آوریل 2010 عنوان ۱.۱۰۱ را یدک میکشیدند. خلأ موجود بین اعداد نسخهها بیانگر امکان وجود انواع دیگر استاکسنت بود، حتی اگر پخش نشده باشند. این نظر با کشف نسخه 2007 (یا همان نسخه ۰.۵ ) اثبات شد.
■نسخههای 2010 استاکسنت از قابلیت پخش سریع برخوردار بودند■
گرچه استاکسنت ۰.۵ از اوایل 2007 پخش شده بود، اما در ژوئن 2009 هنگامیکه نسخه جدید معرفی شد همچنان به فعالیت خود ادامه میداد. تاریخ توقف استاکسنت 0. 5 چهارم جولای 2009 بود، یعنی بعد از این تاریخ دیگر رایانههای جدید را آلوده نمیکرد اما همچنان به تخریب دستگاههایی که قبلا آلوده کرده بود ادامه میداد، تا آن که با نسخه جدید استاکسنت جایگزین شد. نسخه 2007 هم برای اختلال در ارتباط با سرورهای فرمان و کنترل در 11 ژانویه 2009 برنامهریزی شده بود، یعنی پنج ماه قبل از آن که نسخه بعدی استاکسنت پخش شود. احتمالا وقتی نسخه 2009 (که میتوانست نسخههای قدیمیتر استاکسنت را از طریق ارتباط نظیر به نظیر روزآمد کند) پخش شده بود، جایگزین نسخه قدیمیتر 2007 بر روی دستگاههای آلوده شده است. استاکسنت ۰.۵ بسیار کمتر از نسخههای بعدی، تهاجمی بود زیرا از مکانیسمهای گسترش کمتری بهرهمند بود. متخصصین نتوانستند قابلیت مناسب برای پخش این بدافزار پیدا کنند و شاید به همین دلیل بوده که این بدافزار گیر نیفتاده است. در مقابل، نسخههای 2010 استاکسنت از روشهایی بهره میجستند که باعث میشد به سرعت سرسام آوری شیوع پیدا کنند به طوری که 100000 دستگاه در ایران و خارج از آن را آلوده کنند.
■هدف استاکسنت ۰.۵ فقط PLC های زیمنس بود■
استاکسنت ۰.۵ بسیار دقیق بود و تنها فایلهای پروژه گام 7 زیمنس را آلوده کرد (فایلهایی که برای برنامهریزی خط S7 زیمنس PLC ها مورد استفاده قرار میگرفتند) . این فایلها غالبا میان برنامهنویسان به اشتراک گذاشته میشدند، بنابراین استاکسنت میتوانست دستگاههای کلیدی مورد استفاده برای برنامه ریزی PLCهای 417 نطنز را آلوده سازد. این بدافزار هنگامیکه بر روی سیستمی متصل به اینترنت قرار میگرفت، به چهار سرور فرمان و کنترل مستقر در آمریکا، کانادا، فرانسه و تایلند متصل میشد. دامنههای این سرورها عبارتند از: smartclick.org، best-advertising.net، internetadvertising4u.com، و ad-marketing.net. همه این دامنهها اکنون از بین رفته یا به اشخاص جدید واگذار شدهاند، اما در زمان استفاده مهاجمین از آنها، دارای طراحی صفحه یکسان بودند و ظاهرا به یک شرکت تبلیغات اینترنتی موسوم به Media Suffix تعلق داشتند. یک شعار در صفحه اصلی آنها به این مضمون بود: رویایتان را محقق کنید.
این نسخه هم مانند نسخههای قبلی استاکسنت، از طریق ارتباط نظیر به نظیر، توانایی ارائه آپدیتهای خود به دستگاههایی را داشت که به اینترنت متصل نبودند. نسخههای قبلی از RPC برای ارتباط نظیر به نظیر بهره میگرفتند اما این یکی از Windows mailslots استفاده مینمود. تنها کافی بود مهاجمین از سرور فرمان و کنترل برای آپدیت نمودن کد بر روی یک دستگاه آلوده متصل به اینترنت استفاده کنند، و دیگر دستگاههای شبکه داخلی این آپدیت را از آن رایانه آلوده دریافت میکردند. استاکسنت ۰.۵ با چهار سرور فرمان و کنترل ارتباط میگرفت تا بتواند آپدیتها و دستورالعملها را از مهاجمین دریافت دارد. سرورها تحت پوشش یک شرکت تبلیغات اینترنتی به نام Media Suffix عمل میکردند. تصویر اینجا نشاندهنده شمایل صفحه اصلی یکی از سرورها در سال 2006 است.
■حمله استاکسنت ۰.۵ در هشت مرحله انجام میشد■
هنگامیکه استاکسنت ۰.۵ بر روی یک PLC 417 قرار میگرفت و مطمئن میشد که سیستم مناسب را یافته، حمله در 8 مرحله انجام میشد، به طوری که از 18 آبشار سانتریفیوژ، 8 تا را مورد اصابت قرار میداد. در گام اول، استاکسنت فقط روی PLC نشسته و به مدت 30 روز عملکرد آن در آبشارها را تماشا میکرد و منتظر زمان مناسب برای حمله میماند. در گام بعد، استاکسنت دادههای مختلف را از عملکرد معمول آبشارها و سانتریفیوژها جمع آوری مینمود، تا این دادهها هنگام آغاز خرابکاری برای اپراتورها نمایش داده شود و نگذارد آنها تغییرات رخ داده در فشار گاز یا شیرها را متوجه شوند.
در سایت نطنز، هر آبشار در 15 مرحله یا ردیف سازماندهی شده و تعداد متفاوتی از سانتریفیوژها در هر مرحله نصب شدهاند. در مرحله 10 هگزافلورید اورانیوم در آبشارها پمپ میشود، و آن ماهها با سرعت زیادی به دور خود میچرخد. نیروی سانتریفیوژی سبب ایجاد ایزوتوپهای U-235 سبکتری (ایزوتوپ مطلوب برای غنیسازی) در گاز میشود، تا از ایزوتوپهای U-238 جدا شوند. سپس گاز حاوی کنسانتره U-235 از سانتریفیوژها خارج میشود و به مرحله 9 آبشار انتقال مییابد تا بیشتر غنی شود، در حالی که گاز تهی شده حاوی کنسانتره ایزوتوپهای U-238 به آبشارهای مرحله 11 فرستاده میشوند. این فرایند طی چندین مرحله تکرار میشود، به طوری که اورانیوم غنی شده در هر مرحله بیشتر از قبل به ایزوتوپهای 235 تغلیظ میشود تا به سطح غنیسازی مناسب دست یافته شود.
در هر آبشار 3 شیر وجود دارد که با یکدیگر جریان ورودی و خروجی گاز در سانتریفیوژها را کنترل میکنند، و همچنین شیرهای اضافه که جریان ورودی و خروجی گاز در هر مرحله از آبشار را کنترل میکنند. با آغاز مرحله خرابکاری استاکسنت، سانتریفیوژهای مختلف و شیرهای اضافی باز و بسته میشدند تا فشار گاز افزایش یابد، و متعاقبا فرایند غنیسازی مختل شود. استاکسنت شیرهای شش آبشار از 18 آبشار را میبست دیگر شیرها را به طور تصادفی دستکاری میکرد تا اپراتورها متوجه الگوی مشکل نشوند. در مرحله پایانی حمله، توالی باز هم تکرار میشد تا حمله باز هم از نو آغاز شود.
■احتمالا استاکسنت در سال 2008 و 2009 هم به آبشارهای نطنز صدمه زده■
برخی کارشناسان شک دارند که استاکسنت قبلا آبشارهای نطنز را زمانی بین سالهای 2008 و اواسط 2009 مورد حمله قرار داده است. یافتههای جدید سیمانتک هم این نظر را تایید میکند. در واقع استاکسنت ۰.۵ به دنبال سیستمهایی میگشت که در آنها ماژولهای آبشار A21 تا A28 باشد. نطنز دارای دو سالن آبشار A و B است. در سال 2008 و 2009 که استاکسنت بر روی دستگاههای آلوده فعال بوده است فقط سالن A عملیاتی بوده. سالن A به چند اتاق آبشار با نامهای A21 تا A28 تقسیم بندی میشود. ایران نصب سانتریفیوژهای خود را در سالهای 2006 و 2007 در دو اتاق از سالن A (واحدهای A24 و A26) آغاز نمود و سپس به اتاقهای دیگر گسترش داد. در فوریه 2007 ایران از آغاز غنیسازی در نطنز خبر داد.
■ظاهرا استاکسنت باعث از کار افتادن سانتریفیوژها شده بود■
بر اساس گزارشات آژانس بینالمللی انرژی اتمی، که برنامه هستهای ایران را تحت نظارت دارد، در ماه می 2007 ایران در سالن A ده آبشار شامل 1064 سانتریفیوژ نصب نموده بود. تا می 2008 ایران 2952 سانتریفیوژ نصب کرده بود و رییسجمهور احمدینژاد از برنامه این کشور برای افزایش تعداد سانتریفیوژها به 6000 خبر داد. این تعداد در سالهای 2008 و 2009 افزایش یافت، و اندکی بعد از نصب گاز مورد نیاز به آنها تزریق میشد. اما تعداد آبشارهایی که به آنها گاز تزریق میشد و میزان گاز تزریقی هنگامیکه ایران با بعضی از آبشارهایش مشکل پیدا نمود بین ژانویه و آگوست 2009 رو به کاهش نهاد. در اواخر سال 2009 بازرسان آژانس دریافتند که متخصصان در نطنز سانتریفیوژها را از آبشارها برداشته و به جای آنها سانتریفیوژ جدید گذاشتهاند. ظاهرا این اتفاق با پخش ویروس استاکسنت همزمان بوده است.
■استاکسنت اولین بار در سال 2010 در ایران کشف شد■
یک مطلب جالب دیگر درباره نسخه جدید استاکسنت این که طی فرایند نصب استاکسنت ۰.۵ ، این بدافزار با ایجاد فایلی موجب ریبوت شدن اجباری دستگاه ظرف 20 ثانیه بعد از آلوده کردن میشود. استاکسنت این کار را با ایجاد یک BSoD (صفحه آبی مرگ) ، همان صفحه آبی رنگی که هنگام تخریب بر روی ویندوزها ظاهر میشود، انجام میداد. استاکسنت نخستین بار در ژوئن 2010 در ایران کشف شد؛ هنگامیکه ایرانیها متوجه تخریب و ریبوت شدن دستگاههای خود شدند. کارشناسان هرگز نتوانستند بفهمند چرا این دستگاهها تخریب و ریبوت میشدند، زیرا دستگاههای دیگر آلوده به استاکسنت به این شیوه واکنش نمیدادند. گرچه نسخه استاکسنت یافت شده روی آن دستگاهها ۰.۵ نبود، این امر احتمال آن را افزایش میدهد که چند نسخه از استاکسنت دستگاهها را آلوده کرده باشد، با آن که در بررسیهای ایشان فقط یک نوع استاکسنت کشف شد. اُمورکو فکر میکند بعید است که VirusBlokAda (اولین شرکت آنتیویروسی که استاکسنت را کشف نمود) نسخههای دیگر روی دستگاهها را شناسایی نکرده باشد.