آشنائی عملی با حملات Phishing


 






 
در حالیکه Phishing از جنبه اجرا و توسعه، دارای مفاهیم کاملاً فنی می باشد، اما در هسته خود یک روش مهندسی اجتماعی به حساب می آید. اگر یک Phisher نتواند قربانی را متقاعد به کلیک بر روی یک لینک نموده و یا او را با روش دیگری به سایت وب جعلی خود بکشاند، یک فریب Phishing هرگز عملی نخواهد بود.
ما در این مقاله به بررسی تفاوتهای مابین تکنیکهای Phishing و شیوه هائی که Phisherها از آنها برای بهره برداری از کاربران ناآگاه استفاده می کنند، خواهیم پرداخت. در نهایت، ما یک سایت Phishing را توسعه خواهیم داد، یک قربانی را« Phish» کرده و این فرآیند را از دیدگاه کاربر قربانی و Phisher بررسی خواهیم نمود.
Phishing در قالبهای بسیار متفاوتی اجرا می شود، از یک eMail ابتدائی که اطلاعات حساب کاربری شما را درخواست می کند گرفته تا سایتهای وبی که بطور استادانه ای انعکاس کاملی از سایتهای قانونی بر روی اینترنت را ارائه می نمایند. برای Phisher، نتیجه نهائی کاملاً یکسان خواهد بود: بدست آوردن اطلاعات شخصی ارزشمند از کاربرانی که از سایت جعلی بازدید می کنند. Phisher در عین حال می تواند محتوای سایت وب را برای آلوده نمودن کامپیوتر کاربرانی که از آن بازدید می کنند تغییر دهد، روشی که غالباً تحت عنوان « Drive by Downloading» شناخته می شود.
Phishing به یک تجارت چند میلیون دلاری تبدیل شده و بسیاری از انواع فعالیتهای زیرزمینی را به خود مشغول کرده است. به همین دلیل، متخصصین امنیتی باید قادر به شناسائی فعالیتهای Phishing بوده و از توانائی آموزش کاربران نهائی در زمینه نحوه شناسائی پیامهای وب و eMailهای Phishing برخوردار باشند.

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

● چرخه Phishing
 

Phishing همانند اکثر فعالیتهای دیگر، دارای یک چرخه عمر استاندارد است که فرآیند مربوطه در آن جریان خواهد داشت. Phisher بطور معمول از فرآیند نشان داده شده در شکل [1] پیروی می کند. در حالیکه این چرخه در اکثر مواقع دنبال می شود، تنوع های بسیار زیادی از آن وجود دارند و می توان آن را تغییر داد یا به کلی نادیده گرفت.
- مرحله هدفیابی( Targeting): این مرحله اختیاری است و در شرایطی مورد استفاده قرار می گیرد که یک قربانی خاص یا گروه معینی از قربانیان مورد هدف قرار خواهند گرفت. اگر از این مرحله استفاده شود، Phisher باید حمله خود را براساس عادات و حسابهای کاربری گروه هدف خود توسعه دهد.
- مرحله طرحریزی( Planning): در مرحله طرحریزی، Phisher سایت و یا سایتهائی که مورد سوءاستفاده قرار خواهند گرفت، شیوه تماس با قربانی، محلی که سایت جعلی را میزبانی خواهد کرد و مدت زمانی که سایت جعلی نگهداری خواهد شد را تعیین می کند. Phisher در عین حال تعیین می کند که آیا کد بدخواهانه ای بر روی کامپیوتر میزبان بارگذاری خواهد شد و یا اینکه تنها اطلاعات شخصی و حساب او جمع آوری می گردد.
- مرحله توسعه و برنامه نویسی( Development): در این مرحله، Phisher یک کپی از سایت وب قانونی و پیامهای همراهی کننده آن را ایجاد خواهد نمود. بسیاری از Phisherها در حال حاضر از سایتهای وب از پیش کامپایل شده ای استفاده می کنند که مدت زمان صرف شده در این مرحله را کاهش می دهد.
- مرحله بهره برداری( Exploitation): این نقطه ای است که طرح در آن به مرحله عمل می رسد. در این مرحله، Phisher سایت وب جعلی را بر روی میزبان بارگذاری نموده و ارتباطات مورد نظر( که معمولاً شامل پیامهای eMail هستند) را برای قربانی ارسال می کند.
- مرحله نظارت( Monitoring): در این مرحله، Phisher به نظارت بر سایت میزبان سایت وب Phishing می پردازد و هر اطلاعاتی که توسط سایت وب جعلی ضبط شده است را جمع آوری می نماید. اگر قرار باشد کد بدخواهانه ای بر روی کامپیوتر قربانی بارگذاری شود، Phisher احتمالاً از اتصال ایجاد شده توسط نرم افزار برای اجرای حملات بعدی بر روی کامپیوتر قربانی با اضافه کردن نرم افزارهای بیشتری نظیر Root-kitها، یا بارگذاری اطلاعات محرمانه از کامپیوتر قربانی، استفاده می کند.
- مرحله خاتمه دهی( Termination): در بسیاری از موارد، این مرحله توسط Phisher تعیین نمی شود، بلکه یک یا چند نفر از قربانیان آن را پایان می دهند. این افراد می توانند شامل صاحب سایتی که میزبان سایت وب جعلی است، کاربرانی که Phished شده اند و یا حتی مراجع قانونی باشند. در اکثر موارد، سایت وب جعلی توسط شرکت میزبان از کار می افتد و سپس معمولاً نوبت به دخالت مراجع قانونی می رسد که تلاش می کنند Phisher را بیابند. بسیاری از شرکتهای میزبان وب حتی از آنکه در حال میزبانی سایتهای Phishing هستند اطلاع ندارند. اکثر سایتهای Phishing پیش از 30 روز پس از آغاز کار خود بصورت آنلاین، به این مرحله می رسند.

● تعاریف اصطلاحات Phishing
 

Phishing یک اصطلاح کلی برای متقاعد نمودن کاربران به افشای اطلاعات شخصی و یا حساب کاربری خود است که از طریق تکنیکهای فریب دهنده انجام می شود. این فریبکاری می تواند در قالب پیامهای eMail، تماسهای تلفنی و یا حتی نامه هائی که از طریق فکس ارسال می شوند، صورت می گیرد. Generic Phishing یک کاربر خاص یا گروه معینی از کاربران را هدف نمی گیرد، بلکه Phisher در این حالت فهرستهای از پیش آماده شده ای از آدرسهای eMail که خریداری نموده و یا شخصاً ایجاد کرده است را مورد استفاده قرار می دهد. بسیاری از این آدرسها جعلی خواهند بود و عملاً به یک کاربر واقعی منتهی نمی شوند. با اینحال، اگر درصد کوچکی از حسابهای کاربری واقعی باشند، Phisher فرصت کسب دسترسی غیرمجاز به اطلاعات شخصی و یا حساب کاربری قربانیان را خواهد داشت. اکثر مردم این نوع پیامها را بعنوان Spam شناسائی می کنند.
Spear Phishing یک نوع خاص از تکنیکهای Phishing به حساب می آید. در این نوع حمله، Phisher یک نوع خاص از کاربران را براساس چند معیار از پیش تعریف شده هدف می گیرد. برای مثال، ممکن است تمام قربانیان هدفگیری شده در این حمله از مشتریان یک بانک واحد بوده، کارمندان دولتی باشند و یا اینکه برای شرکت واحدی کار کنند. Phisher باید اهداف خود را از شناسائی انجام شده در مرحله هدفیابی انتخاب نماید. سپس باید پیامهائی که بصورت خاصی آماده سازی شده اند برای آن کاربران ارسال گردند. این نوع Phishing ثابت کرده که بسیار کارآمدتر از Phishing سنتی می باشد، اما تکمیل آن مدت بیشتری طول خواهد کشید و زحمت بیشتری را به همراه خواهد داشت. در صورتیکه این حمله مؤثر باشد، اطلاعات خاصی را بازیابی خواهد نمود.
Pharming یک حمله بر روی یک DNS(Domain Name Service) است که به Phisher امکان می دهد کاربران را از سایت واقعی به سایت Phishing جعلی هدایت نماید. برای مثال، اگر یک سایت Google جعلی در آدرس 192.168.1.1( بله ما می دانیم که این یک آدرس خصوصی به حساب می آید، اما این تنها یک مثال است) راه اندازی شود، یک حمله Pharming باید آدرس IP سایت Google را از آدرس واقعی آن( 74.125.127.99) به آدرس سایت جعلی Google( 192,168,1,1) تغییر دهد. به این ترتیب هر کاربری که برای مراجعه به آدرس وب Google تلاش نماید، به سایت Phishing جعلی هدایت خواهد شد. این هدایت مجدد می تواند بر روی یک ماشین واحد با تغییر فایل میزبان نیز انجام شود. اگر این حمله موفقیت آمیز باشد، کاربران به سایت وب جعلی هدایت خواهند شد، حتی اگر آدرس صحیح را در نوار آدرس مرورگر وب خود تایپ کنند.
با دنبال کردن چرخه عمر Phishing می توانیم ببینیم که ایجاد یک سایت وب Phishing تا چه حد ساده خواهد بود. با در نظر گرفتن نقش Phisher و دنبال کردن چرخه عمر، می توان یک سایت جعلی را در مدتی کمتر از یک ساعت ایجاد نمود.

● مرحله هدف یابی
 

ما در مثال خود تلاش خواهیم کرد تا با استفاده از تکنیکهای Spear Phishing به یک فایروال دسترسی پیدا کنیم. در این مثال، پرسنل خاصی هدفگیری خواهند شد و از طریق eMail با آنها ارتباط برقرار می شود. از طریق مکانیزم های شناسائی، ما یک فایروال EnGarde را در آدرس 192.168.1.102 یافته ایم. روشهای بسیار متفاوتی برای جمع آوری اطلاعات درباره اینکه چه کسی صاحب یک شبکه و یا صفحه وب است وجود دارند. بسیاری از مردم از ARIN(www.arin.net) و یا Sam Spade(www.samspade..org) استفاده می کنند اما در این مورد ما از ویژگی Who Is سایت Go Daddy(http://who.godaddy.com/WhoIsCheck.aspx?prog_idgodaddy) استفاده خواهیم نمود. در تجربه Phishing ما، این تلاش به یک نام تماس فنی بصورت jims.fake.account@gmail.com منتهی می گردد. این همان شخصی است که ما برای Phish نمودن او تلاش خواهیم کرد. در دنیای واقعی، ما امیدواریم که آدرس تماس بدست آمده از این جستجو تحت محافظت قرار داشته و احتمالاً حتی یک حساب eMail برای سوءاستفاده باشد.

● مرحله طرحریزی
 

در مرحله طرحریزی، مشخص شد که صفحه Login یک فایروال Engarde را کپی کرده، از طریق eMail از فایروال با قربانی تماس گرفته و ادعا می کنیم که مشکلی در رابطه با پیکربندی وجود دارد. ما تنها اطلاعات حساب کاربری را ضبط کرده و اطلاعات را برای دو هفته جمع آوری خواهیم نمود.
اگر قرار بود یک حمله Generic Phishing را ترتیب دهیم، باید از یک پیام eMail برای یک فهرست عظیم از حسابهای کاربری استفاده می کردیم. جستجوهای ساده Google در وب، مکانهای متعددی برای خرید آدرسهای eMail را به شما معرفی خواهند کرد. اولین لینک در جستجوئی که برای این مقاله انجام شد، یک میلیون آدرس eMail را در مقابل 40 دلار عرضه می کرد. این سرویس شامل یک ابزار SpamChecker بود که به عبور پیامها از فیلترهای Spam کمک می کرد. Phisher در عین حال باید یک کپی از یک سایت شناخته شده را کپی نماید تا شانس گرفتار شدن قربانیان را افزایش دهد.
Phisherهای واقعی برای محافظت از خود باید سرورهای وب موجود بر روی اینترنت را برای میزبانی سایت استثمار ( Exploit) کرده، هزینه آدرسهای eMail و سایر سرویسها را با کارتهای اعتباری که قبلاً Phish نموده اند پرداخت کنند. یکبار دیگر اخطار می کنیم که شما نباید این تکنیکها را در خارج از محیطهای آزمایشگاهی تجربه نمائیم.

● درباره محیط ما
 

در این نقطه، تشریح محیطی که از آن برای نمایش چرخه Phishing استفاده خواهیم کرد، بسیار مهم است. ما از دو ماشین در VM Ware برای ایفای نقش سایت Phishing و سایت قانونی که از آن کپی برداری شده است، استفاده کرده ایم. قربانی در این مثال، ماشینی است که محیط را میزبانی می نماید. با اینحال، اگر شما در نظر دارید یک کد بدخواهانه را در فرآیند Phish خود بارگذاری کنید، بسیار مهم است که برای سیستم قربانی نیز از یک کامپیوتر VM Ware استفاده نمائید. سایتی که قرار است کپی شود، فایروال Engarde در آدرس 192.168.1.102 است که درگاه سرپرستی آن بصورت 1023( پیش فرض) تنظیم شده. ماشین VMWare دوم، یک Windows Server 2003 است که Apache و PHP با تنظیمات پیش فرض بر روی آن پیکربندی شده اند. شکل [2] محیط ما را نشان می دهد.

بسیاری از کارهائی که یک Phisher واقعی بایستی برای پنهان نمودن این واقعیت که سایت جعلی است انجام دهد، پیاده سازی نشده اند تا به کاربران نهائی نشان داده شود که در شناسائی سایتهای Phishing به دنبال چه مواردی باشند. یک درس پیشرفته می تواند شامل قدمهائی برای پنهان نمودن آدرسها در نوار آدرس، نمایش یک قفل در مرورگر وب و بارگذاری کد بدخواهانه بر روی ماشین قربانی باشد.

● مرحله توسعه
 

ما برای توسعه سایت Phishing خود به صفحه Login فایروال Engarde در آدرس http://1023:192.168.1.103 خواهیم رفت. پس از آنکه صفحه بارگذاری شد( با این فرض که شما تنظیمات پیش فرض ماوس را در مرورگر خود تغییر نداده اید) بر روی آن کلیک راست نموده و سپس گزینه View source را انتخاب کنید. به این ترتیب کدی که سایت را ایجاد می نماید، نمایش داده خواهد شد. یکبار دیگر بر روی صفحه کلیک راست نموده، گزینه Select all و سپس Copy را انتخاب کنید. حالا Notepad و یا هر ویرایشگر متنی مورد علاقه خود را باز کرده و گزینه Paste را انتخاب نمائید( شکل[3]). سپس، فایل ار ذخیره کنید. ما در مثال خود از نام Index.php برای فایل استفاده می کنیم. در بعضی از پیکربندیها، کد مرجع بصورت یک سند جدید در ویرایشگر متنی شما باز خواهد شد که می تواند با نام Index.php ذخیره سازی گردد. این کار امکان کپی کردن سایت برای استفاده در حمله Phishing را برای ما فراهم می سازد.

کیتهای مختلفی از ابزارهای Phishing وجود دارند که می توانید آنها را از سایتهای Phishing زیرزمینی بر روی اینترنت خریداری کنید. ما در این مثال به یک کیت Phishing استادانه نیاز نخواهیم داشت، زیرا صرفاً می خواهیم یک سایت را برای نمایش فرآیند مربوطه ایجاد کنیم، تمایلی به بارگذاری کد بدخواهانه نداریم و تنها اطلاعات Login را جمع آوری خواهیم کرد. برای تکمیل سایت، ما تنها به یک اسکریپت PHP ساده ( شکل[4]) نیاز خواهیم داشت که اطلاعات مورد نیاز را ضبط کرده، سپس اعتبارنامه های کاربر را به سایت واقعی هدایت نموده و نهایتاً کاربر را به سایت واقعی هدایت خواهد کرد که در آنجا فرآیند Login تکمیل می شود. این مراحل مانع از آن خواهند شد که کاربر حتی متوجه شود بر روی یک سایت جعلی Logon نموده است. این فایل را با نام Login.php ذخیره کنید.

حالا فایل Index.php را باز کرده و ترکیب کلیدهای CTRL+F را برای یافتن عبارت action= فشار داده و سپس کدی که با Login بر روی سایت سر و کار دارد را پیدا کنید. متنی که پس از علامت = قرار گرفته است را با login.php جایگزین نموده و سپس فایل را ذخیره کنید( شکلهای [5] و [6]). به این ترتیب، فرآیند Login عادی صفحه مربوطه با یک مرجع به فایل PHP که خودمان ایجاد کرده بودیم جایگزین شده و امکان ضبط اعتبارنامه های کاربران را فراهم می سازد.

آخرین قدم، ایجاد فایلی است که اطلاعات Log-in در آن ذخیره سازی خواهند شد. اینکار با ایجاد یک فایل متنی خالی ساده و ذخیره سازی آن با نام passwords.txt انجام می شود.

سپس، نوبت به پیام eMail می رسد که باید برای کاربران فرستاده شود، البته با در نظر گرفتن این نکته مهم که eMail مورد نظر بایستی تا حد امکان رسمی بوده و حاوی یک لینک مخفی در پشت لینکی باشد که ظاهراً کاربر را به سایت واقعی هدایت می کند. اکثر ویرایشگرهای متنی امکان اضافه نمودن لینکهای Hypertext را با انتخاب ( Highlight) متنی که به لینک Hypertext تبدیل خواهد شد و سپس کلیک راست بر روی آن فراهم می کنند. اینکار باید گزینه ای را برای درج لینک در اختیار شما قرار دهد. ما در این مورد یک eMail پیام خطا را ایجاد خواهیم کرد که به تماس فنی فرستاده خواهد شد. در این eMail، فایروال یک پیام Fatal Error را برای سرپرست ارسال می کند. ما با جستجو در اینترنت توانستیم ترکیبی( Syntax) که رسمی به نظر می رسید را بصورت FATAL ERROR:OpenPcap() FSM Compilation

●failed eth2 syntax error PCAP Command eth1 پیدا کنیم. شکل[7] مضمون eMail ما را نشان می دهد، البته لینکی که مشاهده می کنید کاربر را به آدرس سایت جعلی ما هدایت خواهد نمود.

● مرحله بهره برداری
 

در این نقطه ما صرفاً نیاز داریم که فایلهای مربوطه را بر روی سرورهای وب خود بارگذاری کرده و پیامهای eMail را ارسال نمائیم. روشهای متعددی برای ارسال یک eMail فریبکارانه وجود دارند که هریک از آنها در این مورد برای ارسال پیام به قربانی قابل قبول خواهند بود. فایلهائی که در مرحله توسعه ایجاد کرده ایم حالا باید بر روی سروری که سایت جعلی ما را میزبانی می نماید بارگذاری شوند. ما در این مثال آنها را به صفحه وب Root سرور Apache خود بارگذاری می کنیم. فایلهای بارگذاری شده عبارتند از login.php، index.php و passwords.txt.

اگر زاویه دید خود را برای یک لحظه به موقعیت قربانی تغییر دهیم، پیام eMail را دریافت کرده و اگر کاملاً از تهدیدهای Phishing آگاهی نداشته باشیم احتمالاً بر روی لینک مربوطه کلیک کرده و در صفحه فایروال جعلی Login خواهیم نمود( شکل [8]). توجه داشته باشید که در اینجا نوار ابزار آدرس جعلی ما را بطور حفاظت نشده نمایش خواهد داد.

اگر قربانی اعتبارنامه های خود را بطور صحیح وارد کند، این اطلاعات در فایل passwords.txt ذخیره خواهند شد( شکل [9]) و سپس او به سایت فایروال واقعی هدایت خواهد گردید( شکل [10]).

● مرحله نظارت
 

حالا ما صرفاً باید تغییرات فایل متنی را برای جمع آوری اعتبارنامه های جدید بررسی نموده و سپس از آنها برای Log-on بر روی فایروال استفاده کنیم.

● مرحله خاتمه دهی
 

در انتهای دو هفته، سایت جعلی رها شده و یا از روی سرور حذف خواهد شد. Phisher در این نقطه باید سایت دیگری را ایجاد کرده و مجدداً چرخه را آغاز نماید.
همانطور که می توانید مشاهده کنید، آگاه نمودن کاربران از خطرات Phishing، اهمیت بسیار بالائی خواهد داشت. اگر کاربران آموزش ندیده باشند، اجرای حملات Phishing برای مهاجم بسیار آسانتر خواهد بود.
منبع: بزرگراه رایانه، شماره 129