آموزش دسکتاپ فیشینگ، از نفوذ تا صید

در مطلب قبل به اصول پایه حمله «دسکتاپ فیشینگ» پرداختیم. باید بگم بازتاب خوانندگان فوق العاده بود و از تمام کسانی که با نظرشان ابراز علاقه کردند تشکر می کنم. این کمک می کنه بفهمم زنگ زنگوله را چه وری باید بزنم! همان طور که قول داده بودم در این مطلب بیشتر وارد جزئیات میشیم پس ادامه را با دقت دنبال کنید.

توجه: این مطلب صرفآ جهت مقاصد آموزشی نوشته شده است و مسئولیت هر نوع استفاده از این محتوا به عهده خواننده است.

گفتیم اول باید اون فایل hosts را تغییر بدیم، اما چطوری؟
این کار (اعمال تغییرات روی فایل های قربانی) خودش یک زیرشاخه عظیم در بحث امنیت هست و صد ها روش و تکنیک مختلف برایش وجود داره و هر نوع آسیب پذیری که به شما اجازه بده اون فایل را تغییر بدید می تونه مناسب باشه، حالا از یک ماکرو اکسل گرفته تا یک فایل bat یا self-extracting archive و… من در اینجا به چند روش جالب اشاره می کنم.

self-extracting archive: این فایل ها مثل یک مینی installer هستند و فایل ها را در آدرس هایی که می خواهید استخراج می کنند. ۷zip و KGB Archiver از این فایل های می سازند اما گزینه های مورد نظر ما را WinRAR خیلی بهتر از بقیه ارائه می کند (نسخه امتحانی کافیه). راهنمای تصویری؟

نکته: می توانید با استفاده از Binder ها آرشیو را با یک فایل اجرایی دیگه (مثلآ setup یک بازی) ادغام کنید.

رونویسی فایل با Installer: برنامه های زیادی نظیر Inno Setup و Install Jammer هستند که به شما این امکان را می دهند که فایل های مختلفی را روی سیستم نصب کنید. فقط کافی است یک نسخه از یک فایل hosts آلوده شده را هم به عنوان فایل جانبی برنامه ای که قرار است نصب بشود اضافه کنید و مقصد فایل را پوشه etc قرار دهید. راهنمای تصویری؟

در دو روش بالا فایل hosts با اون فایلی که شما اضافه می کنید عوض میشه در نتیجه اگر کاربری به هر دلیلی از قبل برای سایر استفاده ها چند خط به hosts اضافه کرده بوده این تغییرات از بین میره و باعث زودتر فهمیدن قربانی می شود. هر چند اکثر کاربران حتی از وجود این فایل هم با خبر نیستند.

فرمان های ویندوز: با چند دستور ساده میتونیم خطوطی که می خواهیم را به فایل hosts اضافه کنیم. کد زیر نمونه ای از Windows Batch Programming است.

Desktop Phishing Commands

خط اول، دستوراتم را فقط اجرا کن، به من نشون نده.

خط دوم و سوم، آن چه در میان گیومه ها هست را به انتهای فایل hosts اضافه کن.

اگر کد بالا را با پسوند bat ذخیره کنید یک اسکریپت کامل دارید که کاری که می خواهید را انجام میده. خوبی این روش اینه که فایل همانطور که هست باقی میمونه و خطوط ما فقط به آن اضافه میشه.

مشکل این روش اینه که فایل با پسوند bat را نمی تونید به عنوان یک برنامه بدیم به قربانی. فقط کافیه طرف فایل را با نت پد باز کنه و همه چیز لو میره، از جمله IP سرور شما.

فایل اجرایی: با این کار در اصل همان دستورات مرحله قبل را با برنامه نویسی ++C به عنوان یک فایل اجرایی در میاریم که آنالیز کردنش برای قربانی ها سخت تر خواهد بود و می توان با ادامه دادن کد آن را به شکل یک برنامه کاربردی در آورد، مثلآ یک ماشین حساب ساده.

C++ Code System() hosts

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

از اینجا نحوه پیاده سازی حمله اصلی را توضیح می دهم، برای دنبال کردن آموزش نیاز به امکانات خاصی نخواهید داشت در نتیجه توصیه می کنم هر مرحله را با دقت دنبال کنید و خودتان روی کامپیوتر انجام دهید.

اگر یادتان باشد گفتم در دسکتاپ فیشینگ نیازی به طراحی جداگانه صفحات برای هر سایت نیست. این در صورتی است که ما یک «بازوی فیشینگ» هوشمند بنویسیم و آن را بین راه کاربر قرار دهیم (حمله MITM). نوشتن این بازو به دانش عمیق برنامه نویسی و آموزش دادن آن به ده ها پست وبلاگی نیاز دارد. در این آموزش برای سادگی کار ما فقط سایت بلاگفا را مورد حمله قرار می دهیم.

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

۱. xampplite را دانلود و نصب کنید.

۲. جایی که xampplite را نصب کردید وارد پوشه apache سپس پوشه conf شده و فایل httpd.conf را باز کنید. در خط ۱۷۸ (DocumentRoot) بعد از htdocs اضافه کنید phishing/

این طوری ریشه سرور به پوشه phishing تغییر پیدا می کند. پس این پوشه را در htdocs بسازید.

۳. در پوشه phishing یک فایل به نام index.php بسازید و کد زیر را در آن بنویسید.

PHP Echo Apache is up

۴. آپاچی را اجرا کنید (از xampp-control.exe).

XAMPPLite Start Apache

نکته: در این آموزش ما خودمان هم نفوذگر هستیم و هم قربانی، چون نمی خواهیم از دو کامپیوتر استفاده کنیم.

علت اینکه در شرایط واقعی حتمآ باید IP اختصاصی داشته باشیم اینه که در hosts فقط می تونیم IP اضافه کنیم (نه URL) در نتیجه صفحه تقلبی یا هر نوع اسکریپت دیگری که داریم باید در قسمت ریشه سرور ذخیره شده باشد و با یک آی پی اختصاصی مستقیمآ قابل دسترسی باشد.

۵. سایت بلاگفا را باز کنید و از گزینه Save As با اسم blogfa ذخیره کنید. مطمئن شوید که Save as type را روی Complete گذاشته اید.

Save Webpage Complete Blogfa.html

۶. با هر روشی که دوست دارید فایل هاست را تغییر بدهید و دو خط زیر را به آن اضافه کنید.

127.0.0.1 Blogfa IP

۱۲۷.۰.۰.۱ برای کامپیوتر یعنی «آی پی خودم»، در اینجا چون نمی خواهیم از کامپیوتر دیگری استفاده کنیم خودمان هم قربانی هستیم و هم هکر (سرور). در شرایط واقعی این آدرس باید IP سرور اختصاصی باشد.

۷. حالا وارد سایت بلاگفا شوید، اگر همه چیز را درست انجام داده باشید باید به جای صفحه اصلی بلاگفا صفحه پیغام Apache is up را مشاهده کنید.

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

نکته مهم: چون ما «بازوی فیشینگ» هوشمندی نمی سازیم روش ما دو کمبود اصلی خواهد داشت.

اول اینکه باید صفحه تقلبی را به صورت دستی بسازیم و این یعنی باید تمام فایل های گرافیکی که اون صفحه تقلبی را تشکیل می دهند را هم روی سرور مان داشته باشیم چون قربانی به بلاگفا واقعی دسترسی ندارد و مثلآ نمی تواند لوگوی بلاگفا را از سرور واقعی بگیرد. برای قربانی blogfa.com به معنی ریشه سرور شما (نفوذگر) خواهد بود و مثلآ blogfa.com/header.png نه به فایل روی سرور واقعی بلکه به سرور شما اشاره می کند. این یعنی هر محتوای زنده ای که در صفحه جعل شده وجود داشته باشد هم نمی تواند آپدیت شود و همیشه یکسان باقی می ماند (مثلآ آخرین وبلاگ های به روز شده…). همچنین مثلآ اگر ظاهر صفحه واقعی تغییر کند صفحه جعل شده همچنان مثل قبل باقی می ماند.

دوم، به خاطر همان مشکلی که در نکته اول توضیح دادم سایر لینک های بلاگفا از کار می افتند، مثلآ اگر قربانی وارد صفحه اول شود – و ما صفحه اول را جعل کرده باشیم – اگر قربانی به جای وارد کردن اطلاعات از فرم صفحه اول تصمیم بگیرد روی لینک «ورود کاربران» کلیک کند با پیغام Object not found مواجه می شود چون تنها صفحه ای که روی سرور شما وجود دارد همان صفحه اصلی است.

با نوشتن یک بازوی هوشمند هر دو مشکل برطرف می شود. در این مثال ما فقط صفحه اول را جعل می کنیم،

۸. حالا به جایی که در مرحله ۵ صفحه را ذخیره کردید بروید و محتوای فایل html ای که ذخیره کردید را به جای کدی که برای “Apache is up” در فایل index.php داشتیم ذخیره کنید.

جایی که صفحه را در مرحله ۵ ذخیره کردید باید یک پوشه به نام blogfa_files باشد. این پوشه را هم با جاش منتقل کنید کنار فایل index.php واقع در پوشه phishing.

۹. حالا دوباره سایت بلاگفا را باز کنید. اگر همه مراحل را به درستی انجام داده باشید باید صفحه بلاگفا را با ظاهری خیلی شبیه به صفحه اصلی ببینید (می توانید با باز کردن آی پی ۳۸.۱۱۳.۱۶۲.۲۷ صفحه اصلی را ببینید).

حالا یک نکته کوچولو، باید favicon (آیکون کنار آدرس سایت) را درست کنیم. برای این کار favicon را از http://38.113.162.27/favicon.ico می گیریم. بعد از ذخیره کردن آیکون با اسم favicon.ico و قرار دادن آن در کنار فایل index.php باید به طور اتوماتیک توسط مرورگر نمایش داده شود (گاهی اوقات به خاطر باگ مرورگر ها و cache همان لحظه دیده نمی شود).

به هشت فایل پشت زمینه هم در style.css اشاره شده که آنها را هم باید جداگانه دانلود کرده و در پوشه images کنار بقیه فایل ها قرار دهید تا پشت زمینه دکمه ها و صفحه درست شبیه نسخه اصلی شود. همچنین احتمالآ تغییر ظریفی برای نمایش تبلیغات باید انجام بدهید که آن را به عهده خودتان می گذارم.

حالا که ظاهر سایت را درست کردیم فقط باید قسمت لاگین را دستکاری کنیم تا بتوانیم آنها را ذخیره کنیم.

۱۰. در کنار فایل index.php یک فایل جدید بسازید به نام login.php، این فایل قرار است action فرم لاگین بشود. یعنی اطلاعاتی که در فرم ثبت می شود به این فایل فرستاده می شود تا پردازش شود. در این فایل ما باید کدی بنویسیم که اطلاعات دریافتی را در یک فایل دیگر ذخیره کند.

کد زیر (+) را در فایل login.php قرار دهید:

Simple PHP Phishers Arm Script

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

خط دوم، میگیم فایل Pass.txt را بساز و اگر وجود داره بهش اضافه کن.

خط سوم، نام کاربری را در فایل بنویس و برو سر خط.

خط چهارم، رمز را در فایل بنویس و برو سر خط.

خط پنجم، تاریخ و ساعت را بنویس، یک خط فاصله بده و برو سر خط.

خط شش، کارمون تموم شد.

حالا بازوی نه چندان باهوش ما آماده است و فقط باید فرم را به جای مقصد اصلی به فایل خودمان هدایت کنیم، برای این کار در فایل index.php عبارت =action را جستجو کنید و مقدار آن را به login.php تغییر دهید.

ست ماهی گیری شما آماده است! حالا صفحه را ریفرش کنید و یک نام کاربری و کلمه عبور الکی در فرم وارد کرده و لاگین کنید. می بینید هیچ اتفاقی نمی افته و فقط انگار صفحه ریفرش میشه.

Fake Blogfa Webpage

حالا اگر کنار فایل index.php را نگاه کنید یک فایل جدید به نام Pass.txt می بینید که حاوی اطلاعات صید شده است.

Pass.txt Phishing

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

منبع : سایت زنگوله

تدریس خصوصی آیلتس

برچسب ها:

دیدگاه خود را به ما بگویید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

Time limit is exhausted. Please reload CAPTCHA.

کانال استخدام در تلگرام

› استخدام تهران

استخدام شهرستانها