چند هفته پیش، شرکت Crowdstrike یک فاجعه رو برای ماشینهای ویندوزی بهبار آورد (چند هفته قبلترش هم برای ماشینهای لینوکسی ولی در مقیاس کوچکتر)، احتمالا در مورد مشکلات بزرگی که پیش اومد زیاد خوندید و شنیدید. از اظهارنظرهای ناآگاهانه، تا تمسخر fanboyها و…
حالا مایکروسافت یه ایونت ترتیب داده تا مهندسین خودش و Crowdstrike و کلی متخصص دیگه بشینن علل و ریشه اون اتفاق رو از منظر فنی بررسی کنند، برای آینده و راهحلهای پیشگیری از اتفاقات مشابه همفکری کنند و پا رو فراتر بگذارند و در قالب هماندیشی ببینن کجاهای سیستمعامل میتونه بهتر بشه تا امنیت و پایداری بیشتری داشته باشه.
این خبر بهانهای شد تا مرور کنیم آیا سازمانهای ما در ایران به بلوغ کافی برای مواجهه با مشکلاتی که کاربرانشون رو تحت تأثیر قرار میده رسیدهاند؟! روشهای ما با روشهای شرکتهای پیشرفته که عموما هم در کشورهای پیشرفته قرار گرفتهاند چقدر تمایز داره؟! طی سالهای گذشته، کلی سرویس دولتی و خصوصی در ایران درگیر معضل هک شدن بودند. ولی من وقتی با خودم مرور میکنم که چی دیدم و چی شنیدم، خلاصهاش این میشه که دولتیها تکذیب کردند و بعدش که اثبات شد، سکوت! خصوصیها و استارتاپها یه بیانیه که ما مسئولیت رو میپذیریم و در تلاشیم تا برطرف کنیم یا تکرار نکنیم، بیانیههایی که عملا فقط دفعه اولش جالب بود، چون منِ مخاطب هرگز اقدام بعدی ندیدم از سمتشون.
عموم رفتارهای ما در قالب یک سازمان، یک شرکت یا تیم، ناشی از رویکردهای ما در زندگی روزمرهمون است، یک امر فرهنگی است که تبدیل میشه به ساختار و روال کاری. بیایم ببینیم در زندگی روزمره ما ایرانیها چقدر مسئولیتپذیری در قبال عملکردمون امر رایجی به شمار میاد؟! چقدر والدین در برابر روشهای تربیتیشون خودشون رو مسئول میدونن و چقدر گردن جامعه و دوست و ژن باباش! و.. میندازن. چقدر مسئولین کشور که بعضا چندین دهه بر مسندهای مختلف اقتصادی و اجتماعی و سیاسی بودند، خودشون رو مسئول ناکارآمدی عمیق نهادها و سازمانها میدونن و چقدر دشمن و کوتاهی «برخی» رو که معلوم نیست این برخی کیه رو مسبب میدونن. اصلا چقدر ناکارآمدی و اشتباهات ما عقوبت داره؟! قصد ندارم بیش از این به این موضوع بپردازم و گمان میکنم اگر تا اینجا این متن رو دنبال کردید، خودتون دهها سطر دیگه رو توی ذهنتون دارید…
من اینجا اونچه که طی این سالها تجربه کردم، یاد گرفتم، با چاشنی اقدامات روشمندی که بعد از مهاجرت در سازمانهای بزرگ و بالغ دیدم و آموختم رو خلاصه میکنم. فرض کنید یک فاجعه، یک اختلال بزرگ در سازمان یا تیم شما پیش اومده. چه باید کرد؟
۱. تشکیل تیم مدیریت بحران (Incident Response Team – IRT)
- ترکیب تیم: این تیم باید شامل نمایندگانی از تمامی بخشهای کلیدی سازمان باشد، از جمله فناوریاطلاعات، حقوقی، روابط عمومی، مدیریت اجرایی و حتی منابع انسانی.
- وظایف تیم: این تیم مسئولیت ارزیابی اولیه بحران، تصمیمگیریهای کلیدی، و اجرای برنامه مدیریت بحران را بر عهده خواهد داشت.
۲. ارزیابی فوری و اولیه (Initial Assessment)
- تشخیص نوع و شدت بحران: نوع مشکل باید به دقت شناسایی بشه (مثلاً باگ نرمافزاری، نشت دادهها، حمله سایبری، خرابکاری).
- محدوده تأثیرگذاری: تعیین کنید که چه تعداد از مشتریان، کاربران یا سیستمها تحت تأثیر قرار گرفتهاند.
- اولویتبندی: مشکلات باید بر اساس میزان تأثیر و فوریتشان اولویتبندی شوند.
۳. مهار و کاهش (Containment and Mitigation)
- مهار سریع: اقدامات فوری برای جلوگیری از گسترش مشکل انجام دهید. این میتونه شامل جداسازی سیستمهای آسیبدیده، محدود کردن دسترسی به دادهها یا غیرفعالسازی موقت نرمافزار باشه.
- رفع مشکل: تیمهای فنی باید بلافاصله به کار روی رفع مشکل اصلی بپردازن.
۴. اطلاعرسانی داخلی و خارجی (Internal and External Communication)
- اطلاعرسانی داخلی: کارکنان سازمان باید به سرعت از وجود مشکل و اقدامات در دست انجام آگاه بشن. این اطلاعرسانی باید شفاف و دقیق باشه تا از بروز شایعات و اطلاعات نادرست جلوگیری بشه.
- اطلاعرسانی به مشتریان و عموم مردم: اطلاعرسانی سریع و شفاف به مشتریان و رسانهها بسیار مهم است. این اطلاعیه باید شامل توضیحات دقیق از مشکل، اثرات آن، و اقداماتی که سازمان برای رفع مشکل انجام میدهد باشد. اضهارنظرهای گُنگ و یا گمراهکننده به شدت مخرب است. باید از پیش سیاستها و روش مواجهه با این شرایط در سازمان تدوین و افراد مرتبط آموزش دیده باشن.
- اطلاعرسانی به مقامات قانونی و ناظران: در صورت لزوم، اطلاعرسانی به نهادهای قانونی و نظارتی نیز باید انجام بشه. این موضوع به ویژه در مورد نشت دادههای حساس اهمیت داره.
۵. تحلیل ریشهای (Root Cause Analysis)
- شناسایی علل اصلی: بعد از مهار اولیه، باید علل اصلی بحران شناسایی و مستند شوند. این میتونه شامل مشکلات فنی، فرآیندی، یا انسانی باشه.
- مستندسازی: تمامی مراحل و یافتهها باید به طور کامل مستند شوند تا در آینده برای پیشگیری از بروز مشکلات مشابه استفاده شوند.
۶. ترمیم و بازیابی (Recovery and Remediation)
- ترمیم سیستمها: سیستمهای آسیبدیده باید به حالت اولیه بازگردانده شوند و عملکرد آنها به طور کامل بازبینی بشن.
- بررسی مجدد امنیت: تمامی سیستمها باید از نظر امنیتی دوباره بررسی شوند تا از عدم وجود آسیبپذیریهای مشابه اطمینان حاصل بشه.
۷. ارزیابی و درسآموزی (Post-Incident Review and Lessons Learned)
- بازنگری: پس از بحران، سازمان باید تمامی اقدامات خود را بازبینی کنه و نقاط ضعف و قوت را شناسایی کند.
- آموزش: نتایج بازنگری باید به عنوان درسآموختهها به سازمان منتقل شده و در فرآیندهای آتی اعمال بشه.
۸. ارتقای فرآیندها و سیستمها (Process and System Improvement)
- بهروزرسانی سیاستها و فرآیندها: پس از شناسایی نقاط ضعف، سیاستها و فرآیندهای سازمان باید بازنگری و بهروزرسانی بشن.
- تقویت برنامههای آموزشی: آموزشهای بیشتری برای کارکنان در زمینه مدیریت بحران، امنیت سایبری، و رعایت دستورالعملهای جدید باید برگزار بشه.
✍️آموزش، آموزش، آموزش…
این بخش رو به عنوان کسی مینویسم که با طیف وسیعی از سازمانها، از دولتیهای بزرگ، تا استارتاپهای تراز و شناختهشده کار کردم، در مقام مشاور و کارمند تا مدرس! خلاصهاش این میشه که آموزش اولویتی برای سازمانها نیست! بخش دولتی هدف اصلیش گواهی و درج در پرونده کارمندانش است و همیشه با این معضل روبرو بودم که چه موضوع درس چه افراد حاضر در کلاس، چه پیگیریهای بعد از کلاس هیچ کدوم ذیل یک برنامه و ساختار فکرشده نبودند. در بخش خصوصی بیشتر یک بودجه یا یک کمکهزینه برای رضایت بیشتر کارمندان بود… در حالیکه چیزی که بدون استثنا در هر شرکت کوچک و بزرگی اینجا تجربه کردم، آموزش مدون بود، آزمون بعد از دوره. دورهها اغلب مولتیمدیا و در قالب LMSها. نمیگم ۱۰۰درصد مفید یا بدون ایراد بودن، نمیگم هیچ خطا یا بیبرنامگی ندیدم، ولی تفاوت مثل خیابونها، مثل کارخونهها مثل حاکمیت قانون بین ایران و اروپا بود.
چند تا شرکت ایرانی در زمینه تولید محتوای آموزشی روزآمد برای شرکتها فعال هستند؟ چند تا شرکت در مرحله آنبوردینگ آموزش میبینن که اگر فردا دادههای چند میلیون مشتری درز کرد، چه اقداماتی باید انجام بدن؟ این آموزش شامل مدیرعامل و مدیرفنی هم میشه… دستورالعمل مواجهه با رویدادهایی از جنس نشت داده یا اختلال در سیستم کجا نوشته میشه، کی مسئول پایش و روزآمد کردنش است؟
اینها چیزیهایی است که نیاز مبرم به برنامهریزی و آموزش در تمام سطوح داره، من بعید میدونم حتی ۱ درصد مدیرعاملها و مدیران روابطعمومی در ایران آموزش صحیح و مدونی از روشهای صحیح مواجهه با فاجعه دیده باشن. ما باید آموزش رو از سطوح عالی تا سطوح اجرایی تیمها دنبال کنیم. نیاز به محتوای روزآمد داریم.
توی یکی از هکهای پر سروصدای ایران، از دقایق اولیه من درگیر و در محل حاضر بودم، شلختگی، بیبرنامگی رو در لحظهلحظه رویداد دیدم. از نمایندگان دستگاههای امنیتی که «هیچ» لیترالی «هیچ» دانش و برنامهای برای بررسی حادثه نداشتن تا مدیرهایی که تمام واکنششون در نشستن توی دیتاسنتر سازمان، هی اینطرف و اونطرف رفتن بیدلیل و گپهای پامنقلی زدن و نگران غذا بودن خلاصه میشد. حتی تا هفتهها بعد… حتی وقتی کلی سیستم رو برای ماهها از دسترس مردم خارج کردن و بعد هم فراموش کردنشون.
سازمانهای خصوصی هم تجربه کردم، فقط جای چلوکباب و چایی برای مدیر کتشلواری، قهوه و پیتزا برای مدیر شلوار جین پوش دیدم.
رفتار برخی از این شرکتهای بزرگ مثل مایکروسافت، آمازون، گوگل و در سطح کوچکتر مثل OVH همیشه برای من کلاس درس بوده، اطلاعرسانیشون، اقدامات بعدیشون و رصد کردن وقوع دوبارهی مشکلات در سازمانشون. ما شاید آخرین نسخه Go و Kafka و آخرین دیزاینپترنها رو بجا یا نابجا استفاده کنیم در ایران، ولی اونچه که دههها با دنیای مدرن فاصله داریم، در روشها، در فرایندها و در ساختار است…
مثلا NIST(SP 800-61 Rev. 2) رو ببینیم که چارچوب مواجهه و مدیریت حوادث رایانهای است. CIS Controls مجموعهای از کنترلها و روشهای توصیه شده برای حفاظت و واکنش به حوادث سایبری رو عرضه کرده.ITIL و COBIT هم روشهایی رو گفتن که عموما در ایران فقط به عنوان یک پروژه مطرح میشه و بعد هم سر و تهش رو میزنن و نهایتا هم تبدیل به روالهای دستوپاگیر میشه! ای کاش به جای هزاران صفحه اصراف منابع برای شبکه ملی اطلاعات و فیلتر اینترنت و… نهادهای متولی، کمی کار اصولی میکردن…