

دو نمونه از معروف ترین کتاب ها در مورد Social Engineering:
The Art of Deception
The Art of Intrusion
این کتاب ها نوشته آقای Kevin Mitnick که از معروف ترین هکرهای دنیا و نویسنده نرم افزار معروف Meta Exploit است.
ماژول ده: Session Hijacking
Session Hijacking به دو فرم صورت می گیرد:
الف- Passive: در این فرم می توان Session یک کلاینت با یک سرور را مشاهده کرد. در این حالت اطلاعات مبادله شده میان کلاینت با سرور، از قبیل Username، Password و… توسط Hacker قابل مشاهده است.
ب- Active: در این فرم Session از کلاینت گرفته می شود، ارتباط کلاینت با سرور قطع می شود و ارتباط Attacker با سرور، با همان سطح دسترسی های کلاینت، برقرار می گردد.
در محیط LAN برای اجرای Session Hijack، ابتدا با استفاده از MITM (مثلا” با استفاده از ettercap) ترافیک قربانی (کلاینت) را به سمت خود برمی گردانیم و سپس با استفاده از نرم افزارهای Session Hijacking (مانند T-sight)، اطلاعات Session را مشاهده می کنیم و یا Session را از آن خود می نماییم.
ابزار T-sight یکی از ابزارهای Session Hijacking است که فقط بر روی ویندوز XP کار می کند و برای استفاده از نسخه Crack شده آن باید IP Address Range ویندوز XP، برابر با:
۱۹۲٫۱۶۸٫۲۰۰٫۰/۲۴ و تاریخ سیستم ۱۵/۱۲/۲۰۰۲ باشد. برای نسخه کرک شده از لایسنس ۸۰۷E31AD استفاده می کنیم.
پس از نصب نرم افزار، در Properties کارت شبکه، بر روی Install کلیک می کنیم، گزینه Protocol را انتخاب می کنیم و بر روی Add کلیک می کنیم. سپس بر روی Have Disk کلیک می نماییم و در فولدر T-Sight، فولدر WPF، فایل Netwpf.INF را انتخاب می نماییم، Ok می کنیم و سپس فایل wpf.sys را انتخاب می کنیم.
برای انجام Session Hijack، ابدا Sniffing را با استفاده از ettercap انجام میدهیم و ترافیک قربانی را به سمت خود هدایت می کنیم.
سپس در T-sight، فایل Realtime Monitoring را انتخاب می کنیم و نرم افزار را اجرا می کنیم.
کارت شبکه مورد نظر را انتخاب می کنیم در edit TAB، با انتخاب گزینه licenses، Range IP Address، Subnet Mask و License را وارد می کنیم و بر روی verify کلیک می کنیم.
سپس بر روی Connection مورد نظر که از سمت کلاینت به سمت سرور برقرار شده است و به علت Sniffing، در T-sight قابل مشاهده است، دبل کلیک می کنیم. اکنون می توانیم محتوای ترافیک این Session را مشاهده کنیم. و اگر بر روی Take Over کلیک کنیم، Session به صورت Active، Hijack می شود، ارتباط کلاینت قطع می شود و ارتباط Attacker با سرور برقرار می گردد. به طور مثال اگر نوع ارتباط Telnet باشد، از این پس فرامین telnet بر روی سرور، توسط Attacker اجرا می گردد.
نکته: در صورتی که برای ایجاد Session، از ارتباطات کد شده، نظیر SSH، Https و… استفاده شود، چون Sniffing آنها به سادگی امکان پذیر نیست، لذا Session Hijack آنها نیز انجام نخواهد شد.
نکته: در کالی نیز نرم افزار session Hijack وجود دارد.
ماژول یازده و دوازده: Hacking Web servers and Applications
یکی از معروفترین نرم افزارهای ایجاد Web Server، Apache است. نزدیک به ۵۵% از وب سرورهای اینترنت، Apache هستند.
بعد از IIS را داریم که نزدیک به ۲۵% وب سرورهای اینترنتی را تشکیل می دهند.
Nginx نیز نزدیک به ۱۰% سروهای اینترنتی را تشکیل می دهد و بیشتر در سایت های Streaming مورد استفاده قرار گرفته است.
بقیه وب سرورهای اینترنتی از نرم افزارهایی مانند Lighttp و… استفاده می کنند.
هرگونه نرم افزاری که درگاه ورودی اطلاعات آن، Browser باشد، Web app نامیده می شود.

همانگونه که در شکل بالا ملاحظه می شود، حمله به Web App Server (وب سروری که بر روی آن اپلیکیشنی قرار دارد که اجازه Inter Action به کاربر می دهد)، نه تنها می تواند سبب دسترسی به اطلاعات دیتابیس شود، بلکه می تواند از طریق دیتابیس به شبکه داخلی نیز دسترسی پیدا کند.
حملات تحت وب
۱- Dictionary Traversal:
هنگامی که در Apache، یک وب سایت طراحی می شود، تمامی Web Page ها در مسیر زیر قرار می گیرند:

به طور مثال، URL زیر، Page اول سایت را باز می کند:
اگر بخواهیم به صفحه ceh برویم، URL زیر مسیر آن خواهد بود:
http://www.noora.ir/index.php?page=ceh.php
در URL و یا در واقع فرمان فوق، محتوای صفحه ceh در Index.php، Load می شود. یعنی Header و Footer صفحه Index، باقی می ماند و محتوای صفحه ceh نمایش داده می شود.
Attacker، عبارت ceh.php را پاک می کند و به جای آن از عبارت زیر استفاده می کند:

اگر سایت آسیب پذیر باشد، فایل passwd به صورت Web Based نمایش داده می شود و می توان لیست User ها را مشاهده کرد.
نکته: اگر سایت ویندوزی، یعنی تحت IIS، باشد(با .Net نوشته شده باشد)، از عبارت زیر استفاده می شود
?id=../../../../../../windows/win.ini
ویا عبارت زیر:
?id=../../../../../../../../../../windows/system32/config/SAM
به سرانجام رسیدن این نوع حمله، به سبب ضعف برنامه نویسی است.
معرفی سایت Exploit-db.com:
این سایت محل قرار گرفتن Exploit های Public شده در سیستم های معروف دنیا است و شامل بخش های زیر است:
:Remote Exploits آسیب پذیری هایی است که می توان از آنها برای دسترسی گرفتن از راه دور استفاده کرد
:Local Exploits محل بهره برداری از آسیب پذیری در یک سیستم لینوکس هست که اجازه می دهد تا یک کاربر عادی برای به دست آوردن دسترسی ریشه با انجام ترتیب و توالی خاصی از آنها استفاده نماید.
: Web Applications جدیدترین باگ ها از مدیریت محتوا های معروف نظیر جوملا، وردپرس و … در این بخش ثبت می گردد
DOS: آسیب پذیری های منجر به حملات DoS در این بخش ثبت می گردد
Shellcode: شل کدهایی که می تون از طریق آنها از آسیب پذیری های نرم افزار استفاده نمود.
Google Dork چیست:
دورک ها یه سری کد هایی هستند که کاربر برای جستجوی سریع تر و دقیق تر در موتورهای جستجو گر از آن ها استفاده میکند.
مثال: inurl:game site:.com
یعنی تمام سایت هایی که به .com ختم می شوند و در URL آنها کلمه game وجود دارد.
از این مسئله می توان در انواع حملات استفاده کرد. فرض کنیم با نصب یک پلاگین در یک سایت یک آسیب پذیری در آن سایت ایجاد شود. همچنین نصب این پلاگین سبب ایجاد یک کلمه یا عبارت در URL آن سایت می گردد. به این ترتیب، ابتدا Exploit مربوط به آن پلاگین را پیدا می کنیم سپس با استفاده از Dork، سایت هایی را که دارای این آسیب پذیری هستند، پیدا می کنیم و با استفاده از Exploit، به آنها Attack می زنیم.
نکته:
در Exploit-db.com، علاوه بر Exploit، گاهی Dork مربوطه نیز وجود دارد.
نکته: در Exploit-db.com می توان با جستجوی عناوین حملات، Exploit های مربوط را پیدا کرد.
نکته: CVE چیست؟
CVE (Common Vulnerabilities Exposure) یک کد شناسه برای آسیب پذیری کشف شده از یک سیستم عامل یا CMS (Content Management System یا سیستم مدیریت محتوا نظیر جوملا، Word Press و…) معروف است که در در دیتابیس شرکت امنیتی MITRE قرار می گیرد. و به این ترتیب می توان تعیین کرد که یک Exploit برای چه CVE نوشته شده است و یا یک Update کدام CVE را پوشش می دهد.
نکته: از سایت Pentester.com، برای Download و ایجاد محیط تست برای انواع حملات، استفاده می گردد.
نکته: زدن Page های قرار گرفته بر روی IIS بسیار سخت تر از Page های قرار گرفته بر روی Apache است.
به طور کلی، برای زدن سایت ها بر اساس Dictionary Traversal، ابتدا با استفاده از Dork (مثلا” inur:index.php?page=site:*.com یا inurl:index.aspx?id=site:*.com) سایت های مورد نظر را پیدا می کنیم، سپس با استفاده از جستجو در Exploit، Exploitdb.comمربوط به این حمله را پیدا می کنیم و سپس اجرا می نماییم.
2- Cross Site Scripting (XSS)
XSS، یک حمله Client Side است. یعنی Attack به جای یک سرور، به کلاینتی زده می شود که می خواهد یک Page از آن سرور را باز کند.
غالبا” برای این نوع از حملات، از زبان های Scripting نظیر Java Script و VB Script استفاده می گردد.
اگر به یک صفحه وب، به جای پارامتر (مثلا” بعد از مساوی)، یک Script داده شود و بعد از Load مجدد آن صفحه، پاسخ آن Script، بدون تغییر در پاسخ، نمایش داده شود، آن سایت، XSS می خورد.
مثال: اگر به یک سایت، به جای پارامتر، Script زیر داده شود:
<script>alert(123)</script>=
و آن سایت، پاسخ ۱۲۳ را بدون کم یا زیاد بازگرداند، آن سایت XSS می خورد.
(به طور مثال، Example یک از سایت Pentesterlab.com)
راهکار مقابله با حملات XSS، کد نویسی امن است یعنی برنامه نویس سایت، باید طوری کد نویسی کند که در صورت وارد کردن کلمه Script، آن کلمه از URL، حذف شود. (Example دو از سایت Pentester.com)
و حالت های مختلف را نیز در نظر بگیرد. مثلا” اگر حرف C در کلمه Script بزرگ نوشته شود (Example دو که با این ترفند، XSS می خورد)
مبحثی به نام کد نویسی امن وجود دارد که اینگونه مسائل تحت وب را به صورت حرفه ای بررسی می کند.
نکته: باید توجه داشت که این Script بر روی کامپیوتر کلاینت اجرا می شود.
چگونه از XSS برای حمله به یک کلاینت استفاده می گردد؟
ابتدا Hacker یک VPS اجاره می کند، آن را تبدیل به وب سرور می کند و Script مورد نظر خود را بر روی آن قرار می دهد. به این ترتیب یک URL برای اجرای Script ایجاد می شود. سپس یک لینک از یک سایت که آسیب پذیری XSS دارد، ایجاد می کند که در آن بجای پارامتر آن صفحه سایت، URL اجرای اسکریپت قرار داده شده است (بعد از مساوی). می تواند URL اجرای Script را به کد HEX تبدیل کند تا کمتر جلب توجه کند. این URL را توسط مهندسی اجتماعی و از طریق ایمیل یا شبکه های اجتماعی برای کاربر ارسال می کند. کاربر با کلیک بر روی آن به سایت مورد نظر وارد می شود اما Script نیز بر روی Browser وی از VPS فراخوانی شده و اجرا می گردد. به این ترتیب اطلاعات Session به ویژه کوکی ها به سیستم Attacker ارسال می گردد. Attacker این کوکی ها را بر روی Browser خود نصب می کند و از این پس می تواند با سطح دسترسی قربانی وارد آن سایت بشود.

نکته: در Firefox با نصب افزونه Hack Bar و همچنین در Chrome به صورت Default، کاربر می تواند از اجرای اسکریپت مربوط به حمله XSS، آگاه شود.
نکته: XSS یکی از شایع ترین آسیب پذیری های تحت وب است.
نکته: سایت testfire.net در قسمت Search حمله XSS می خورد.