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

اما قبل از این که این حمله را شرح بدم سعی میکنم یه مقدار پیش زمینه انجامش را به زبان ساده شرح بدم. معمولاً وقتی که ما به اینترنت وصل میشیم و اطلاعاتی را رد و بدل میکنیم، مثلاً با Yahoo Messenger چت میکنیم و یا یه صفحه وب را میخونیم، اطلاعاتی که بین کامپیوتر ما تا کامپیوتر مقصد (مثلاً سرور Yahoo و یا هر وب سایت دیگه ای که داریم میخونیمش) رد و بدل میشه برای کسانی که بین راه باشند قابل خوندن و دیدنه. این کسایی که میگم میتونه از شبکه محلی شرکت شما یا ISP شما باشه تا شرکت مخابرات که همه ترافیک بین الملل ایران را اختصاصی رد و بدل میکنه. (حتماً میدونید که شرکت مخابرات تنها شرکتیه که اجازه ارتباط مستقیم با اینترنت داره و بقیه شرکت ها و ISP ها اینترنت را از مخابرات باید بخرند). به هر حال اطلاعات شما در بین راه قابل خوندنه. برای رفع این نقیصه و امن کردن حداقل یه تعدادی از صفحات وب، سالها پیش یه قرارداد بین المللی تصویب شد که به https (secure http) معروفه. این قرارداد از یه طرف داخل همه Browser های استاندارد (مثل Internet Explorer, Firefox, Chrome, …) و از طرف دیگه داخل سرورهای وب سایت هایی مثل Yahoo, Google, … تعبیه شد و تفاوتش این بود که از این به بعد شما به جای آدرس مثلاً http://mail.yahoo.com از آدرس https://mail.yahoo.com برای login کردن به ایمیل Yahoo استفاده میکردید. این کار معنیش اینه که اطلاعات بین کامپیوتر شما و کامپیوتر مقصد (سرور Yahoo) رمزگذاری میشه و کسی بین راه نمیتونه اطلاعات شما را بخونه.

خوب تا اینجای کار همه چیز به نظر خوب میومد. تااین که یه عده شروع کردن سرورهایی خیلی خیلی شبیه سرورهای Yahoo و به خصوص شبیه سرورهای شرکت های پرداخت الکترونیکی درست کردند که ممکن بود مردم به اشتباه به سمت اونها هدایت بشن و حتی اونها هم از https استفاده میکردند. اما فرقش حالا این بود که اطلاعات بین کامپیوتر شما تا کامپیوتر مقصد (که حالا سرور متعلق به هکر بود) رمزگذاری میشد. یعنی این که username, password و شماره کارت اعتباری شما درسته میرسید دست اون آقا یا خانومی که سرور جعلی را درست کرده بود. این روش را بهش Scam میگن و حتی همین الان هم رایجه. مثلاً من به عنوان یه هکر حدس میزنم ممکنه یه نفر موقع login به ایمیل خودش توی Yahoo اشتباهی به جای کلمه Yahoo کلمه Yaho را بزنه (با یه دونه o). بنابراین من میام یه سایت درست میکنم به اسم https://mail.yaho.com و یه صفحه عین صفحه اول Yahoo توش میذارم و همین ممکنه خیلی ها را گول بزنه و بی خبر از همه جا username و Password شون را تقدیم من هکر کنه.

برای جلوگیری از این حملات و حملات مشابه این (مثل حمله man-in-the-middle که ارتش سایری قصد انجامش را داشته و من راجع بهش توضیح میدم) یه قرارداد دیگه به اسم “گواهی دیجیتال” به وجود اومد. بر اساس این قرارداد هر سایتی که میخواد از https برای امنیت اطلاعات استفاده کنه باید یه گواهی دیجیتال داشته باشه. این گواهی دیجیتال اولاً کار رمزگذاری اطلاعات را به عهده داره و کاربرد دیگه اش که شاید اینجا مهمتر به نظر بیاد اینه که ثابت میکنه این سروری که من بهش وصل شدم همونیه که ادعا میکنه که هست. حالا از این به بعد وقتی من با https به یه سایت وصل میشم browser من گواهی دیجیتال اون سایت را ازش میخواد و با همه مشخصات دیگه سایت مثل آدرس اینترنتی (IP) و آدرس سایت (URL) و یه سری چیزای دیگه تطابق میده و اگه همه چیز OK بود اون سایت را به عنوان یه سایت قابل اعتماد (و معمولاً به رنگ سبز) نشون میده.

خوب تا حالا باز هم همه چیز OK، اما Browser من از کجا میفهمه که این گواهی دیجیتال معتبر و مال همون سایتیه که باید باشه. یه سری شرکت هایی توی اینترنت هستن که کارشون فقط همینه. یعنی صدور و اعتباردهی به گواهی های دیجیتال. کار این شرکت ها مثل امضا کردن گواهی های دیجیتال میمونه. یعنی وقتی من مثلاً گواهی دیجیتال Yahoo را نگاه میکنم میبینم به وسیله مثلاً Verisign یا Entrust یا Comodo امضا شده و تا فلان تاریخ و برای فلان آدرس معتبره. تمام Browser های استاندارد لیست کامل این مراجع را توی خودشون دارن و هر بار که شما یه صفحه https را باز میکنین گواهینامه دیجیتالش را با این اطلاعات تطبیق میدن و اگه هر چیزی این وسط نخونه بهتون هشدار میدن که این سایت اونی نیست که شما میخواستین بهش وصل بشین و توصیه میکنن که همین الان سایت را ببندین یا با مسئولیت خودتون ادامه بدین.

حالا کاری که این آقایون انجام داده بودند این بود که یه سری سرور داخل ایران کاملاً شبیه سرورهای Yahoo و Google و Skype و Microsoft Live درست کرده بودند و با توجه به این که ترافیک اینترنت ایران همش از داخل مخابرات و نتیجتاً از زیر دست آقایون میره و میاد، براشون خیلی خیلی ساده است که وقتی من آدرس مثلاً https://gmail.google.com را میزنم به سایت قلابی داخل ایران وصل بشم. (این کار یکی از ساده ترین کارهاییه که حتی اسمش هک نیست). اما مشکلشون این بود که وقتی وصل میشدین چون سایت قلابی بود اون پیغام براتون میومد و متوجه میشدین که به سایت قلابی وصل شدین. کاری که برای رفع این مشکل کردن این بود که سایت Comodo (یکی از شرکت های صادر کننده و اعتبار دهنده گواهی های دیجیتال) را هک کردن و یه تعداد گواهی دیجیتال برای سایت های تقلبیشون درست کردن و به اسم شرکت Comodo امضای دیجیتالی کردن. (درست مثل این که شما مهر رئیس یه اداره را بدزدید و باهاش مجوز خروج کالا درست کنید و امضا کنین).

خوب بقیه ماجرا کاملاً واضحه. من و شما توی ایران نشستیم. به ایمیل خودمون login میکنیم غافل از این که داریم به سرورهای قلابی وصل میشیم و Browser بیچاره هم چیزی نمیدونه چون داره میبینه همه چیز امضا شده و درست به نظر میرسه. خوشبختانه این موضوع خیلی زود روشن شد و همه گواهی های دیجیتال صادر شده باطل شدند. اما برای این که ابطال این گواهی ها توسط Browser شما هم شناخته بشه باید حتماً Browser خودتون را Update کنین. بهدش هم بلافاصله Password های خودتون را عوض کنین که اگه احیاناً لو رفته بود خیالتون راحت باشه. البته مشخصاً داشتن Password هزاران و یا حتی ملیون ها نفر از مردم به هیچ درد حکومت نمیخوره جز این که یه برتری روانی به دست بیاره و یا شاید افراد خاصی را که هدف قرارداده بوده هک کنه. و در حالت خیلی بدبینانه این که Password ها را نگه داره و بعداً اگه احتیاج شد با استفاده از روش های مهندسی اجتماعی Password جدید فرد را حدس بزنه. به خاطر همین سعی کنین Password های جدیدتون هیچ ربطی به قدیمی ها نداشته باشه.

خوب همونطور که میبینین حمله هوشمندانه و هدفمندی بوده. اما روش انجامش چطوری بوده. این آقایون تونسته بودن (با استفاده از همه روش هایی که برای هک کردن Password یه نفر وجود داره و الان هم خیلی متنوع و فراوون شده) account یه نفر از کارمندان شرکت Comodo (در واقع کارمند نبوده بلکه Agent اون شرکت بوده) را به دست بیارن و با استفاده از اون برای خودشون این کارها را بکنن. درست مثل این که شما کلیدهای منشی شرکت را از جیبش بزنین (جیب بری که دیگه خیلی پیش پا افتاده است این روزا ) و با استفاده از اون برین تو اتاق رئیس مهرش را بردارین سوء استفاده کنین.

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

اگه پست خیلی خسته کننده بود به بزرگی خودتون ببخشید. اما من وظیفه خودم دونستم این توضیحات را بدم. شاید به درد کسی بخوره.