root@kali: ~

هزینه استفاده از این فایل دعا برای ظهور هست

یا رَبَّ الْحُسَیْنِ بِحَقِّ الْحُسَیْنِ
اِشْفِ صَدْرَ الْحُسَیْنِ
بِظُهُورِ الْحُجَّةِ
root@kali: ~/ceh/session-03
root@kali:~/ceh# cat README.md

جزوه آموزشی اسکن شبکه (CEH Network Scanning Guide)

CEH · Network Scanning

این جزوه آموزشی، مرجع کامل و ساختاریافته‌ی مبحث اسکن شبکه (Network Scanning) بر اساس سورس‌های دوره CEH است.

root@kali:~/ceh# cd chapter-1

۱ مقدمه و مفاهیم پایه اسکن شبکه

اسکن شبکه فاز دوم از فرآیند ارزیابی امنیت و یکی از بخش‌های کلیدی جمع‌آوری اطلاعات (Information Gathering) است. هدف اصلی از اسکن شبکه، ارسال بسته‌های سفارشی TCP/IP به شبکه هدف و تحلیل پاسخ‌های دریافتی جهت ایجاد پروفایل و نقشه دقیق از سیستم‌ها است.

اهداف اصلی اسکن شبکه

  • کشف تمام سیستم‌ها و دستگاه‌های روشن و فعال در محدوده شبکه.
  • کشف پورت‌های فعال جهت تعیین نقاط ورودی به سیستم.
  • تشخیص دقیق سرویس‌های اجرا شده روی پورت‌ها.
  • تشخیص نوع و نسخه سیستم‌عامل و ساختار نرم‌افزاری.
  • استخراج اطلاعات پایه جهت بررسی ثغور و آسیب‌پذیری‌های امنیتی در مراحل بعدی.
root@kali:~/ceh# cd ../chapter-2

۲ پروتکل TCP و پرچم‌های ارتباطی (TCP Flags)

فرآیند اسکن شبکه در لایه ۴ مدل OSI (لایه انتقال) انجام می‌شود. برای درک تکنیک‌های اسکن، شناخت ساختار هدر TCP و پرچم‌ها (Flags) الزامی است.

انواع پرچم‌های اصلی TCP

  • برای آغاز ارتباط و همگام‌سازی شماره سریال بسته‌ها استفاده می‌شود.
  • برای تأیید دریافت بسته‌ها یا درخواست‌ها به کار می‌رود.
  • ارتباط برقرار شده را فوراً قطع و بازنشانی می‌کند.
  • درخواست خاتمه منظم ارتباط را صادر می‌کند.
  • نشان‌دهنده وجود داده‌های با اولویت بالا است.
  • سیستم را مجبور می‌کند داده‌های بافر شده را فوراً ارسال و پردازش نماید.

دست‌تکانی سه مرحله‌ای (TCP Three-Way Handshake)

گام ۱
ارسال SYN: مبدأ یک بسته با پرچم SYN به پورت مقصد ارسال می‌کند.
گام ۲
پاسخ SYN+ACK: در صورت باز بودن پورت، مقصد با SYN+ACK پاسخ می‌دهد.
گام ۳
ارسال ACK: مبدأ بسته ACK را ارسال کرده و ارتباط برقرار می‌شود.
root@kali:~/ceh# cd ../chapter-3

۳ متدولوژی اسکن شبکه در CEH

دوره CEH یک متدولوژی ۶ مرحله‌ای برای اسکن شبکه ارائه می‌دهد:

گام ۱
Check for Live Systems: شناسایی هاست‌های روشن و فعال در شبکه.
گام ۲
Check for Open Ports: اسکن پورت‌ها برای کشف پورت‌های باز و سرویس‌های در حال اجرا.
گام ۳
Banner Grabbing & OS Discovery: جمع‌آوری بنرها و تشخیص نوع و نسخه دقیق سیستم‌عامل و سرویس‌ها.
گام ۴
Draw Network Diagram: ترسیم نقشه توپولوژی شبکه و معماری فیزیکی/منطقی.
گام ۵
Prepare Proxies: آماده‌سازی سرورهای پراکسی و ابزارهای پنهان‌سازی آدرس.
گام ۶
Scan for Vulnerability: بررسی آسیب‌پذیری‌های بالقوه بر اساس اطلاعات به دست آمده.
root@kali:~/ceh# cd ../chapter-4

۴ فاز اول: شناسایی سیستم‌های فعال (Host Discovery)

در این فاز هدف کشف آدرس‌های IP فعال در یک رنج شبکه است:

  • ارسال بسته‌های ARP Request در شبکه محلی (لایه ۲).
  • ارسال بسته‌های UDP به پورت‌های مقصد.
  • ارسال بسته ICMP Echo Request.
  • ارسال بسته‌های ICMP به یک رنج کامل از آدرس‌های IP.
  • ارسال بسته‌های SYN یا ACK برای تست هاست.
  • ارسال بسته‌های پروتکل‌های مختلف.

ابزارهای هاست دیسکوری

  • قدرتمندترین ابزار خط فرامینی و گرافیکی اسکن شبکه.
  • ابزار فرستنده بسته‌های سفارشی TCP/IP.
  • ابزار گرافیکی و سریع برای اسکن رنج‌های IP.
  • ابزار مبتنی بر ARP برای شناسایی سریع هاست‌ها در شبکه‌های محلی.
  • ابزار ویژه برای ارزیابی شبکه‌های ویندوزی و پروتکل SMB.
root@kali:~/ceh# cd ../chapter-5

۵ فاز دوم: تکنیک‌های اسکن پورت و سرویس‌ها (Port Scanning)

۱. روش‌های اسکن باز (Open Scanning)

  • دست‌تکانی سه مرحله‌ای TCP را کامل می‌کند. در صورت باز بودن پورت، SYN+ACK دریافت شده و بسته ACK ارسال می‌شود، سپس با RST بسته می‌شود.

۲. روش‌های اسکن مخفیانه (Stealth Scanning)

  • اسکنر بسته SYN ارسال می‌کند. در صورت دریافت SYN+ACK، به جای ACK بسته RST ارسال می‌شود. این حالت پیش‌فرض Nmap است.

۳. اسکن‌های معکوس پرچم‌های TCP (Inverse TCP Flag Scanning)

  • پرچم‌های FIN, URG و PSH هم‌زمان ست می‌شوند.
  • فقط پرچم FIN ارسال می‌شود.
  • بسته بدون پرچم ارسال می‌شود.
  • ترکیب FIN و ACK ارسال می‌شود.
  • اسکن‌های معکوس روی سیستم‌های ویندوزی (Windows) کارایی ندارند زیرا ویندوز به بسته‌های نامتعارف همواره پاسخ RST می‌دهد. این اسکن‌ها روی لینوکس و یونیکس عمل می‌کنند.

۴. اسکن پرچم ACK و تحلیل فایروال (ACK Flag Scanning)

  • برای ارزیابی قوانین فایروال (Stateful vs Stateless).
  • بررسی فیلد TCP Window Size در پاسخ RST.
  • ارزیابی مقدار TTL پاسخ برای تشخیص وضعیت پورت.

۵. اسکن با شخص ثالث (IDLE / IPID Scan)

  • اسکن غیرمستقیم با تحلیل تغییرات شماره سریال IPID در یک سیستم خنثی (Zombie).

۶. اسکن UDP و SCTP

  • اسکن پورت‌های UDP با تحلیل پاسخ UDP یا دریافت ICMP Port Unreachable.
  • اسکن پروتکل SCTP.

۷. تکنیک‌های تنظیم بسته‌ها و دور زدن فایروال (Evasion)

  • خرد کردن هدر به بسته‌های کوچک‌تر.
  • تنظیم پورت مبدأ روی پورت مجاز (مانند ۸۰ یا ۵۳).
  • ترکیب آدرس واقعی با چند آدرس متفرقه (nmap -D RND:10 target).
  • افزودن داده‌های سفارشی به هدر.
  • Colasoft Packet Builder و Scapy.

۸. روش‌های دفاعی و مقابله (Countermeasures)

  • تنظیم قوانین فایروال و سیستم‌های IDS/IPS.
  • مسدودسازی ترافیک ICMP و بستن پورت‌های غیرضروری.
root@kali:~/ceh# cd ../chapter-6

۶ فاز سوم: شناسایی سیستم‌عامل و سرویس‌ها (Banner Grabbing & OS Fingerprinting)

روش‌های بنر گربینگ

گام ۱
بنر گربینگ فعال (Active Banner Grabbing):
  • ارتباط مستقیم با Telnet: telnet target 80
  • ارتباط با Netcat: nc -vv target 80
  • اسکن نسخه سرویس با Nmap: nmap -sV target
  • ابزارها: ID Serve, THC AMAP, SINFP, Xprobe.
گام ۲
بنر گربینگ غیرفعال (Passive Banner Grabbing):
  • بررسی پیام‌های خطا، اسنیف ترافیک (Wireshark) و استعلام از موتورهای جستجو (Netcraft, Shodan).

تشخیص سیستم‌عامل (OS Fingerprinting)

    • سیستم‌عامل‌های لینوکس و یونیکس (Linux/Unix): TTL استاندارد 64
    • سیستم‌عامل ویندوز (Windows): TTL استاندارد 128
    • تجهیزات شبکه سیسکو (Cisco): TTL استاندارد 255
    • nmap -O target: فعال‌سازی تشخیص سیستم‌عامل.
    • nmap -A target: اسکن جامع (سیستم‌عامل، نسخه سرویس، اسکریپت و مسیر).
    • nmap --script smb-os-discovery.nse target: استخراج نسخه دقیق ویندوز و Build Number از پورت ۴۴۵ (SMB).

روش‌های امن‌سازی بنرها

  • وب‌سرور Apache: تنظیم ServerSignature Off و ServerTokens OS در httpd.conf.
  • زبان PHP: تنظیم expose_php = Off در php.ini.
  • وب‌سرور IIS: استفاده از ابزارهایی نظیر URLScan و ServerMask.
root@kali:~/ceh# cd ../chapter-7

۷ فاز چهارم: ترسیم نقشه و توپولوژی شبکه (Network Topology Mapping)

ارزیابی معماری شبکه و ترسیم دیاگرام منطقی و فیزیکی جهت شناسایی موقعیت روترها، فایروال‌ها، DMZ و اینترانت.

  • SolarWinds Network Topology Mapper, LANState, Network View, OpManager, WhatsConnected.
root@kali:~/ceh# cd ../chapter-8

۸ فاز پنجم: آماده‌سازی سرورهای پراکسی و ناشناس‌سازی (Proxies & Anonymization)

  • استفاده از ProxyChains، شبکه Tor و سرورهای پراکسی برای تغییر آدرس IP.
  • مانند Tails OS که ترافیک را به طور کامل از Tor عبور داده و اثری روی سیستم باقی نمی‌گذارد.
  • علاوه بر آدرس IP، فاکتورهایی مانند Timezone سیستم، زبان (Language)، کوکی‌های مرورگر و تاریخچه جستجو نیز می‌توانند هویت کاربر را افشا کنند.
root@kali:~/ceh# cd ../chapter-9

۹ راهنمای دستورات و سوئیچ‌های کاربردی Nmap و hping3

جدول سوئیچ‌های اصلی Nmap

سوئیچ Nmapعملکرد و توضیحات
-snعدم اسکن پورت‌ها (فقط Host Discovery یا Ping Scan انجام می‌شود).
-sSاسکن TCP SYN / Stealth Scan (پیش‌فرض).
-sTاسکن TCP Connect / Full Open.
-sUاسکن پورت‌های UDP.
-sAاسکن ACK جهت ارزیابی فایروال.
-sXاسکن Xmas (پرچم‌های FIN, URG, PSH).
-sFاسکن FIN.
-sNاسکن NULL (بدون پرچم).
-sMاسکن Maimon (پرچم‌های FIN/ACK).
-sI <zombie>اسکن IDLE / IPID Header با سیستم Zombie.
-sVشناسایی نسخه سرویس‌های در حال اجرا.
-Oشناسایی نوع و نسخه سیستم‌عامل (OS Detection).
-Aاسکن جامع (ترکیب -O, -sV, -sC, traceroute).
-p <ports>تعیین پورت‌های مورد اسکن (مثلاً -p 80,443 یا -p 1-65535).
-Fاسکن سریع ۱۰۰ پورت شایع (Fast Scan).
-fتکه‌تکه‌سازی بسته‌ها (IP Fragmentation).
-g <port>دستکاری پورت مبدأ اسکن.
-D <decoys>اسکن فریب‌دهنده با آدرس‌های متفرقه.
-nعدم انجام Reverse DNS Resolution.
-v / -vvافزایش سطح گزارش‌دهی و نمایش خروجی لحظه‌ای.
-T0 تا -T5تنظیم سرعت اسکن (از T0 کند تا T5 سریع).
--openنمایش فقط پورت‌های باز در خروجی.
--script=<script>اجرای اسکریپت‌های NSE (مانند smb-os-discovery.nse).

جدول دستورات رایج hping3

دستور hping3عملکرد و توضیحات
hping3 -1 <target>ارسال بسته‌های ICMP Echo (پینگ ICMP).
hping3 -A <target> -p 80اسکن ACK بر روی پورت 80.
hping3 -2 <target> -p 80اسکن UDP بر روی پورت 80.
hping3 -S <target> -p 50-60 -Vاسکن SYN بر روی رنج پورت‌های 50 تا 60 با خروجی مشروح.
hping3 -F -P -U <target> -p 80اسکن Xmas (پرچم‌های FIN, PSH, URG) روی پورت 80.
root@kali:~/ceh# cd ../chapter-10

۱۰ واژه‌نامه و دیکشنری تخصصی اسکن شبکه (Glossary & Dictionary)

  • پرچم تأیید دریافت بسته در پروتکل TCP.
  • استخراج مستقیم بنر و نسخه سرویس با برقراری ارتباط با پورت.
  • ابزار یا سرویسی جهت پنهان‌سازی هویت، IP، موقعیت و ردپای دیجیتال کاربر.
  • تکنیک شناسایی هاست‌های فعال در شبکه محلی مبتنی بر بسته‌های ARP Request.
  • تکنیک استخراج اطلاعات و بنرهای معرفی مربوط به سرویس‌ها و سیستم‌عامل‌ها.
  • ابزار ارزیابی شبکه‌های ویندوزی و SMB.
  • اسکن شبکه با ترکیب آدرس IP واقعی و چندین آدرس IP متفرقه برای ارزیابی فایروال.
  • پرچم درخواست خاتمه منظم ارتباط در TCP.
  • روش اسکنی که دست‌تکانی سه مرحله‌ای TCP را به طور کامل تکمیل می‌کند.
  • روش اسکن مخفیانه که پس از دریافت پاسخ SYN+ACK، بسته RST ارسال کرده و ارتباط را کامل نمی‌کند.
  • ابزار خط فرامینی برای ساخت و ارسال بسته‌های سفارشی TCP/IP و انجام تست‌های شبکه.
  • روش اسکن غیرمستقیم با استفاده از شماره سریال IPID یک سیستم خنثی (Zombie).
  • روش‌های اسکن معکوس (Xmas, FIN, NULL) که بر اساس عدم دریافت پاسخ یا دریافت RST وضعیت پورت را تعیین می‌کنند.
  • تکنیک خرد کردن بسته‌های IP برای عبور از فایروال‌ها.
  • مرحله نخست اسکن شبکه جهت شناسایی دستگاه‌های روشن و در دسترس.
  • نوعی اسکن معکوس TCP با ارسال پرچم‌های FIN و ACK.
  • ابزار کشف هاست در لایه ۲ بر پایه پروتکل ARP.
  • ابزار منبع‌باز اسکن شبکه، کشف پورت‌ها و شناسایی سیستم‌عامل.
  • اسکن معکوس TCP با ارسال بسته‌ای بدون هیچ پرچم ست‌شده.
  • جمع‌آوری اطلاعات سرویس بدون ارسال مستقیم بسته (از طریق اسنیف، صفحات خطا یا موتورهای جستجو).
  • ارسال بسته‌های پینگ به یک محدوده از آدرس‌های IP برای شناسایی هاست‌های فعال.
  • ابزاری برای عبور دادن ترافیک برنامه‌ها از میان سلسله‌مراتب سرورهای پراکسی.
  • پرچم فرمان به سیستم جهت ارسال و پردازش سریع داده‌های بافر شده.
  • پرچم بازنشانی و قطع فوری ارتباط TCP.
  • پروتکل به اشتراک‌گذاری فایل و پرینتر در شبکه‌های ویندوزی (پورت 445).
  • دستکاری پورت مبدأ اسکن به پورت‌های مجاز (مانند 80 یا 53) جهت دور زدن قوانین فایروال.
  • تکنیک اسکن مخفیانه که لاگ‌های کمتری در سیستم هدف بر جای می‌گذارد.
  • پرچم آغاز ارتباط و همگام‌سازی شماره سریال بسته‌ها در TCP.
  • سیستم‌عامل امن لینوکسی مبتنی بر شبکه Tor.
  • فرآیند ۳ مرحله‌ای برقراری ارتباط در TCP (ارسال SYN، دریافت SYN+ACK، ارسال ACK).
  • فیلدی در هدر IP که طول عمر بسته را تعیین کرده و برای شناسایی سیستم‌عامل (Windows=128, Linux=64, Cisco=255) استفاده می‌شود.
  • پرچم تعیین داده‌های با اولویت بالا و اورژانسی در TCP.
  • اسکن معکوس TCP با تنظیم هم‌زمان پرچم‌های FIN, URG و PSH.
  • رابط کاربر گرافیکی (GUI) رسمی ابزار Nmap.