چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

سه‌شنبه ۱۳ آبان ۱۳۹۹ - ۱۴:۲۰
مطالعه 11 دقیقه
این روزها شنیدن اخبار حملات هکری به امری روزمره تبدیل شده است؛ اما برخی حملات مخصوصا به زیرساخت‌ها، آسیب‌های بیشتری به جا می‌گذارند. در ادامه روایت یک حمله شبیه‌سازی‌شده را می‌خوانیم تا به عمق فاجعه پی ببریم.
تبلیغات

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

وزارت دادگستری ایالات متحده آمریکا در اوایل هفته‌ی گذشته کیفرخواستی علیه گروهی از هکرها معروف به «سندورم» (Sandworm) منتشر کرد و در این سند، ۶ هکر را که برای ﺁژانس اطلاعات ارتش روسیه (GRU) کار می‌کنند، در رابطه با جرائم سایبری که در نیم‌دهه‌ی اخیر در سرتاسر جهان به وقوع پیوسته است، مرتبط دانسته و متهم کرده است؛ از جمله‌ی این اتهامات باید به اقدام به خرابکاری در بازی‌های المپیک زمستانی ۲۰۱۸ کره جنوبی و انتشار مخرب‌ترین بدافزار تاریخ در کشور اوکراین اشاره کرد.

یک مورد از این اقدامات سایبری، حمله‌ی بی‌سابقه‌ای به شبکه برق اوکراین در سال ۲۰۱۶ بود؛ حمله‌ای که به ‌نظر می‌رسد ظاهراً فقط به قصد ایجاد خاموشی طراحی نشده و هدف نهایی آن آسیب رساندن به تجهیزات الکتریکی آن شبکه بود. هنگامی که یکی از محققان امنیت سایبری به‌ نام «مایک آسانته» در مورد جزئیات آن حمله به تحقیق پرداخت، متوجه شد که درواقع ایده‌ی هک شبکه را هکرهای روسی ابداع نکرده‌اند؛ بلکه این ایده را دولت ایالات متحده یک دهه قبل از این حادثه، ابداع و حتی آزمایش کرده بود.

چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

گزیده‌ی مطالب زیر از کتاب «عصر جدید جنگ سایبری و جست‌وجو برای شکار خطرناک‌ترین هکرهای کرملین»، نوشته‌ی اندی گرینبرگ (Andy Greenberg) نقل می‌شود که اخیرا منتشر شده است و ماجرای هک کردن اولیه‌ی آن شبکه‌ی نیمه‌کاره را شرح می‌دهد.

تحقیق و تفحص در مورد این موضوع را آسانته بر عهده گرفته که از پیشگامان قدیمی و افسانه‌ای امنیت سیستم‌های کنترل صنعتی است. این پروژه با عنوان «تست ژنراتور آرورا» شناخته می‌شود.

آن ماجرا هنوز به‌عنوان یک هشدار قاطع در مورد تأثیرات احتمالی حملات سایبری بر دنیای فیزیکی و یک پیش‌بینی ترسناک از حملات آینده‌ی «سندورم» شناخته می‌شود.

صبح یکی از روزهای مارس ۲۰۰۷ (اسفند ۱۳۸۶) که باد بسیار سردی می‌وزید، مایک آسانته به مرکز آزمایشگاه ملی آیداهو رفت که در ۵۲ کیلومتری غرب آبشارهای آیداهو واقع شده است. آن ساختمان در وسط بیابانی مرتفع و بسیار وسیع قرار داشت که سرتاسر چشم‌انداز آن پوشیده از برف و گیاه درمنه بود. او به تالار کنفرانس داخل این مرکز رفت که جمعیت اندکی گرد آمده بود. این گروه شامل مقاماتی از وزارت امنیت ملی، وزارت نیرو و نمایندگان شرکت نورث امریکن الکتریک ریلایبلیتی (NERC)، چند تن از مدیران صنایع برق از سراسر کشور و سایر محققان و مهندسانی بود که همچون آسانته از سوی آزمایشگاه ملی وظیفه داشتند روزهای خود را برای رفع تهدیدات فاجعه‌بار احتمالی برای زیرساخت‌های حیاتی آمریکا صرف کنند.

در جلوی اتاق مجموعه‌ای از مانیتورهای ویدیویی و فیدهای داده، روبه‌روی صندلی‌های افراد حاضر در اتاق قرار داشت که شبیه به اتاق کنترل موشک در زمان پرتاپ به‌ نظر می‌رسید. نمایشگرهای موجود، تصاویر یک ژنراتور غول‌پیکر را از زوایای مختلف به‌طور مستقیم پخش می‌کردند. این دستگاه سبزرنگ که ۲۷ تن وزن داشت، تقریبا به ابعاد یک اتوبوس مدرسه یا یک فروند تانک M3 بردلی (M3 Bradley) بود. این ژنراتور در یک جایگاه اختصاصی و در فاصله‌ای حدود یک و نیم کیلومتر دورتر از سالن حاضران قرار داشت و با انتشار صدای غرش یکنواخت و مداوم خود قادر بود به قدری انرژی تولید کند که برای مصرف یک بیمارستان یا کشتی نیروی دریایی کافی باشد. امواج گرمایی که از بدنه‌ی دستگاه خارج می‌شد، گاه تصاویر ویدیویی را با نویز همراه می‌کرد.

چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

آسانته و همکارانش در آزمایشگاه ملی آیداهو، این ژنراتور را به قیمت ۳۰۰ هزار دلار از یک میدان نفتی در آلاسکا خریده بودند. آن‌ها این دستگاه را به هزاران کیلومتر دورتر و در محل آزمایش آیداهو و در قطعه‌زمینی به مساحت بیش از ۱۴۰۰ کیلومتر مربع انتقال دادند که آزمایشگاه ملی، یک شبکه برق عظیم متشکل از حدود یک صد کیلومتر خطوط انتقال برق و هفت پست الکتریکی برای انجام آزمایش‌های خود را احداث و نگه‌داری می‌کند.

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

سه سال قبل از این موضوع، آسانته مدیر ارشد امنیت در شرکت «امریکن الکتریک پاور» (American Electric Power) بود که میلیون‌ها مشتری در ۱۱ ایالت، از تکزاس گرفته تا کنتاکی، داشت. ازآنجاکه آسانته افسر سابق نیروی دریایی بود که مهندس امنیت سایبری شده بود، از مدت‌ها قبل به‌طور کامل اطمینان داشت که هکرها به شبکه‌ی برق حمله‌ی سایبری انجام خواهند داد، اما وقتی مشاهده می‌کرد که اکثر همکاران و همتایانش در صنعت تأسیسات برق با دیدی نسبتا ساده‌انگارانه و هنوز در حد تئوری و دور از ذهن با این تهدید برخورد می‌کردند، دلسرد و مأیوس می‌شد.

چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

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

آسانته به یاد می‌آورد که همکارانش می‌گفتند:

ما می‌توانیم چنین موردی را به سرعت باد مدیریت کنیم.

اما آسانته معتقد بود:

این طور که آقایان می‌اندیشند، انگار با یک قطعی ساده‌ی برق روبه‌رو خواهیم شد و خسارت چندانی تحمیل نخواهد شد؛ اما حتی اندیشیدن به این شکل، از ریسک کردن خطرناک‌تر است!

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

ذهن آسانته را قطعه‌ای به‌نام «رله‌ی محافظ» درگیر خود کرده بود. رله‌ی محافظ یک قطعه‌ی الکترونیکی است که به‌عنوان مکانیزم ایمنی برای سیستم‌های الکتریکی طراحی شده است تا هرگاه بخش یا قسمتی از سیستم دچار نقص فنی یا ایراد فیزیکی شدید شود و ادامه‌ی فعالیت آن منجر به آسیب رسیدن به سایر بخش‌ها یا قطعات شود، این رله‌های محافظ ناهنجاری را تشخیص می‌دهند و آن بخش معیوب را در کمترین زمان ممکن از مدار خارج می‌سازند تا احتمال خطر از بین برود. مثلا اگر خطوط بیش از حد داغ شوند یا ژنراتور ناهماهنگ کار کند، قطعکننده‌ی مدار (مدارشکن) را فعال می‌کنند که اتصال بخش معیوب با شبکه قطع شود و تجهیزات ارزشمند دچار آسیب‌دیدگی نشوند و حتی از آتش سوزی جلوگیری به عمل آید. رله محافظ به‌عنوان نوعی نجات‌غریق برای شبکه‌ی برق محسوب می‌شود.

چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

آسانته به این می‌اندیشید:

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

آسانته از زمان حضور در شرکت برق که به آزمایشگاه ملی آیداهو منتقل شده بود، این سؤال ذ‌هنش را به‌شدت مغشوش می‌کرد. اکنون او در «ساختمان مخصوص انجام آزمایش» بود. مقامات، نمایندگان سازمان، کارکنان، کارمندان و سایر مسئولان، در سالن «ناظران آزمایش» بی‌صبرانه منتظر بودند تا او و دیگر مهندسان همکارش، مخرب‌ترین ایده‌ی خود را به‌طور عملی آزمایش کنند. این آزمایش مخفی یک اسم رمز اختصاصی داشت که درواقع مترادف با احتمال استفاده از حملات سایبری برای وارد آوردن خسارات فیزیکی است: «آرورا»

مدیر آزمایش زمان دقیق را اعلام کرد: ۱۱ و ۳۳ دقیقه‌ی صبح. سپس با یک مهندس، «سالن ناظران آزمایش» را ترک کرد و به سوی مکان نصب ژنراتور رفت. ابتدا گشتی در اطراف آن زد تا مطمئن شود کسی در نزدیک دستگاه حضور ندارد. سپس برای شروع انجام «حمله‌ی سایبری»، به پژوهشگران امنیت سایبری حاضر در دفتر آزمایشگاه ملی در آیداهو که منتظر پیام او برای شروع حمله‌ی سایبری بودند، علامت داد.

این حمله‌ی سایبری همانند حملات سایبری واقعی طراحی شده و قرار بود از کیلومترها دورتر و فقط ازطریق اینترنت انجام شود. هکر شبیه‌سازی‌شده برای انجام این آزمایش، با ارسال تقریبا ۳۰ سطر کد از سیستم خود برای رله‌ی این ژنراتور، می‌توانست نقش خود را بسیار خوب بازی کند.

چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

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

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

برای ژنراتور یک رله محافظ طراحی ومتصل شده بود تا برق تولیدی آن دستگاه عظیم پیش از همگام‌سازی دقیق با ریتم ۶۰ هرتز، به شبکه‌ی برق متصل نشود؛ اما هکر آسانته در آیداهو این دستگاه محافظ را دوباره برنامه‌ریزی کرده و کدهای منطقی درون حافظه‌ی او را تغییر داده بود.

در ساعت ۱۱ و ۳۳ دقیقه‌ی صبح آن روز، رله‌ی محافظ مشاهده کرد که ژنراتور در وضعیت کاملا همگام‌شده قرار دارد؛ اما ازآنجایی که کدهایی ارسالی حافظه‌ی آن را معیوب کرده بود، خلافِ کاری که باید انجام می‌داد، عمل کرد و قطع کننده‌ی مدار را فعال ساخت. درنتیجه ارسال جریان الکتریسیته‌ی تولیدی ژنراتور به شبکه‌ی برق قطع شد.

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

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

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

چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

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

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

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

تو هم می‌توانی از عهده‌اش بر بیایی؛ همان‌طور که آن موتور کوچک می‌تواند.

پس از چند لحظه با خودش گفت:

به این فکر می‌کردم که تو می‌توانی طاقت بیاری.

اما دستگاه بیش از آن طاقت نیاورد. پس از برخورد سوم، ابر بزرگ‌تری از دود خاکستری به آسمان بلند شد.مهندسی که کنار آسانته ایستاده بود گفت: «واقعا شق‌القمر کردید.»

پس از ضربه چهارم، همراه ‌با آخرین نفیر زجرآور شکستن قطعه‌ای که به مرگ ژنراتور ختم شد، ستونی از دود سیاه به ارتفاع حدود ۱۰ متر در آسمان بالا رفت و قلب دستگاه برای همیشه از حرکت بازایستاد.

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

پس از اتمام این نمایش عجیب، سکوت بر سالن حکمفرما بود. آسانته اندیشید:

زمان به خود آمدن است.

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

آزمایش کاملا واضح بود. حال تصور کنید برای یکی از ماشین‌ها در یک کارخانه‌ی واقعی چنین اتفاقی بیفتد، بدون شک وحشتناک خواهد بود.

آسانته ادامه داد:

مفهوم آزمایش این بود که فقط با چند سطر کد می‌توان شرایطی ایجاد کرد که دستگاه‌های مورد اعتماد کامل ما آسیب جدی ببینند.

اما آسانته خوب به خاطر داشت که پس از انجام آزمایش «آرورا» احساس وظیفهی مهم‌تر و جدی‌تری روی دوش خود حس می‌کرد که کاملا شبه حسی بود که شش دهه قبل به رابرت اپنهایمر (Robert Oppenheimer)، پس از انجام موفقیت‌آمیز نخستین بمب خودکار در دیگر آزمایشگاه ملی آمریکا دست داده بود. او تولد یک اکتشاف تاریخی و بسیار قدرتمند را از نزدیک نظاره کرده بود.

چگونه ۳۰ سطر کد، یک ژنراتور برق ۲۷ تنی را منفجر کرد

آسانته می‌گوید:

من یک خطر واقعی را در دلم احساس می‌کردم. انگار می‌توانستم آینده را تصور کنم.

شما در این باره چه فکر می‌کنید؟ کتاب فوق را خوانده‌اید؟ به مطالعه‌ی این گونه داستان‌های واقعی علاقه دارید؟ چه کتاب یا داستان‌هایی برای مطالعه‌ی توصیه می‌کنید؟ نظر خود را با ما و سایر کاربران زومیت درمیان بگذارید.

تبلیغات
داغ‌ترین مطالب روز

نظرات

تبلیغات