> For the complete documentation index, see [llms.txt](https://hacking-notes.jord4n.pro/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hacking-notes.jord4n.pro/ar/reconnaissance/nmap.md).

# Nmap

يُستخدم Nmap أثناء الاستطلاع لتحديد المضيفين النشطين، والمنافذ المفتوحة، وإصدارات الخدمات، وأنظمة التشغيل، ونتائج سكربتات NSE، ومسارات الهجوم المحتملة.

{% hint style="info" %}
**Nmap**، والتي تعني "*مخطط الشبكة*"، وهي أداة مفتوحة المصدر تُستخدم لاستكشاف الشبكات وتدقيقها، وكذلك لاكتشاف المضيفين والخدمات على الشبكة. وقد أنشأها في الأصل Gordon Lyon، المعروف أيضًا باسم Fyodor Vaskovich. يوفر Nmap إمكانات فحص الشبكات التي تتيح للمستخدمين اكتشاف الأجهزة المتصلة بشبكة، وتحديد الخدمات التي تعمل على تلك الأجهزة، والحصول على معلومات مفصلة حول إعدادات الشبكة.
{% endhint %}

#### المرجع الشائع للأوامر والخيارات:

## مرجع خيارات Nmap

### الهدف واكتشاف المضيف

| الخيار               | الوصف                                                              |
| -------------------- | ------------------------------------------------------------------ |
| `10.10.10.0/24`      | نطاق الشبكة المستهدف.                                              |
| `-sL`                | فحص القائمة. يسرد الأهداف دون فحصها.                               |
| `-sn`                | يعطّل فحص المنافذ ويجري اكتشاف المضيف فقط.                         |
| `-Pn`                | يتعامل مع المضيفين على أنهم متصلون ويتخطى استعلامات اكتشاف المضيف. |
| `-n`                 | يعطّل حلّ أسماء DNS.                                               |
| `-PE`                | يجري اكتشاف المضيف باستخدام طلبات ICMP Echo.                       |
| `--disable-arp-ping` | يعطّل طلبات ARP ping على الشبكات المحلية.                          |
| `--dns-server <ns>`  | يجري حلّ أسماء DNS باستخدام خادم الأسماء المحدد.                   |

### اختيار المنافذ وأنواع الفحص

| الخيار              | الوصف                                                          |
| ------------------- | -------------------------------------------------------------- |
| `--open`            | يعرض المنافذ المفتوحة فقط.                                     |
| `--top-ports <num>` | يفحص العدد المحدد من أكثر المنافذ شيوعًا.                      |
| `-p-`               | يفحص جميع منافذ TCP.                                           |
| `-p22-110`          | يفحص جميع المنافذ بين 22 و110.                                 |
| `-p22,25`           | يفحص فقط المنفذين المحددين 22 و25.                             |
| `-F`                | فحص سريع. يفحص أفضل 100 منفذ.                                  |
| `-sS`               | يجري فحص TCP SYN.                                              |
| `-sT`               | يجري فحص TCP connect، وهو مفيد عندما لا تتوفر صلاحيات فحص SYN. |
| `-sA`               | يجري فحص TCP ACK، وهو مفيد لتعيين قواعد الجدار الناري.         |
| `-sU`               | يجري فحص UDP.                                                  |
| `-sV`               | يكتشف إصدارات الخدمات على الخدمات المكتشفة.                    |
| `-sC`               | يشغّل سكربتات NSE المصنفة كـ `الافتراضي`.                      |
| `--script <script>` | يشغّل سكربت NSE المحدد أو فئة السكربت.                         |

### الاكتشاف والتفادي

| الخيار                               | الوصف                                                                              |
| ------------------------------------ | ---------------------------------------------------------------------------------- |
| `-O`                                 | يجري اكتشاف نظام التشغيل.                                                          |
| `-A`                                 | يفعّل اكتشاف نظام التشغيل، واكتشاف الإصدار، وسكربتات NSE الافتراضية، و traceroute. |
| `--packet-trace`                     | يعرض الحزم المرسلة والمستقبلة.                                                     |
| `--reason`                           | يعرض السبب الذي أبلغ به Nmap عن حالة منفذ أو مضيف.                                 |
| `-D RND:5`                           | يستخدم خمسة طعوم عشوائية لتفادي الجدار الناري/أنظمة IDS.                           |
| `-e <interface>`                     | يحدد واجهة الشبكة المستخدمة للفحص.                                                 |
| `-S 10.10.10.200`                    | يحدد عنوان IP المصدر للفحص.                                                        |
| `-g <port>` / `--source-port <port>` | يحدد منفذ المصدر للفحص.                                                            |

### خيارات الإخراج

| الخيار         | الوصف                                                               |
| -------------- | ------------------------------------------------------------------- |
| `-oA filename` | يخزن النتائج بجميع صيغ الإخراج المتاحة باستخدام `الاسم` كاسم أساسي. |
| `-oN filename` | يخزن النتائج بالتنسيق العادي.                                       |
| `-oG filename` | يخزن النتائج بالتنسيق القابل للبحث باستخدام grep.                   |
| `-oX filename` | يخزن النتائج بتنسيق XML.                                            |

### خيارات الأداء

| الخيار                       | الوصف                                                  |
| ---------------------------- | ------------------------------------------------------ |
| `--max-retries <num>`        | يحدد عدد مرات إعادة المحاولة لاستقصاءات فحص المنافذ.   |
| `--stats-every=5s`           | يعرض حالة الفحص كل 5 ثوانٍ.                            |
| `-v` / `-vv`                 | يعرض إخراجًا تفصيليًا أثناء الفحص.                     |
| `--initial-rtt-timeout 50ms` | يحدد مهلة RTT الأولية.                                 |
| `--max-rtt-timeout 100ms`    | يحدد الحد الأقصى لمهلة RTT.                            |
| `--min-rate 300`             | يرسل الحزم بسرعة لا تقل عن المعدل المحدد.              |
| `-T <0-5>`                   | يحدد قالب التوقيت، من `0` البارانويدي إلى `5` المجنون. |

## **فحص المنافذ**

```bash
nmap --open -p- -sS --min-rate 5000 -vvv -n -Pn 192.168.0.1 -oG allPorts
```

فحص TCP SYN سريع لجميع المنافذ يتخطى DNS واكتشاف المضيف، ويعرض تقدمًا تفصيليًا، ويحفظ مخرجات قابلة للبحث.

<figure><img src="https://hacking-notes.jord4n.pro/~gitbook/image?url=https%3A%2F%2F3467118603-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FwJ00xYl3QY03Wq54i4By%252Fuploads%252Fe6BGuXp1hLil6uT3Jtic%252Fimage.png%3Falt%3Dmedia%26token%3D96d46423-ca25-4471-a563-42daeae3be1e&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=bcba8a61&#x26;sv=1" alt=""><figcaption></figcaption></figure>

## **فحص إصدار المنفذ**

```bash
nmap -p22,80,443 -sCV 192.168.0.1 -oN targeted
```

فحص مستهدف للخدمات والسكربت الافتراضي ضد المنافذ المحددة، محفوظ بتنسيق الإخراج العادي.

<figure><img src="https://hacking-notes.jord4n.pro/~gitbook/image?url=https%3A%2F%2F3467118603-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FwJ00xYl3QY03Wq54i4By%252Fuploads%252F2MsfGLpxVpuiWEE7sRjJ%252Fimage.png%3Falt%3Dmedia%26token%3D767e772a-f3ea-4fee-b266-0c73398b7a4f&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=b468a586&#x26;sv=1" alt=""><figcaption></figcaption></figure>

## **التعرّف على الأجهزة المتصلة بالشبكة**

```bash
nmap -sn 192.168.0.1/24
```

فحص اكتشاف المضيف لتحديد الأنظمة النشطة ضمن نطاق شبكة دون فحص المنافذ.

<figure><img src="https://hacking-notes.jord4n.pro/~gitbook/image?url=https%3A%2F%2F3467118603-files.gitbook.io%2F%7E%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252FwJ00xYl3QY03Wq54i4By%252Fuploads%252FEFDeAo8BSjtTrsirRHC8%252Fimage.png%3Falt%3Dmedia%26token%3D679e4610-aa84-4b59-80e0-1a08f0c9140b&#x26;width=768&#x26;dpr=4&#x26;quality=100&#x26;sign=753ed2d0&#x26;sv=1" alt=""><figcaption></figcaption></figure>

## تجاوز الجدران النارية باستخدام Nmap

{% hint style="info" %}
هناك عدة طرق لتجاوز جدار ناري باستخدام أداة Nmap. فيما يلي بعض أكثر التقنيات استخدامًا وفعالية لهذا الغرض
{% endhint %}

### تعديل حجم الحزم المرسلة

> تقنية التجاوز MTU أو "Maximum Transmission Unit" تتمثل في تعديل حجم الحزم المرسلة لتجنب اكتشافها بواسطة الجدار الناري. يتيح لك Nmap ضبط الحد الأقصى لحجم الحزمة يدويًا لضمان أن تكون الحزم صغيرة بما يكفي للمرور عبر الجدار الناري دون اكتشافها.

```bash
nmap 192.168.0.1 --mtu 8
```

### إضافة بيانات حشو

> تتضمن هذه التقنية تغيير طول البيانات المرسلة بحيث تكون قصيرة بما يكفي لئلا يكتشفها الجدار الناري. يتيح Nmap للمستخدمين ضبط طول البيانات المرسلة يدويًا لتفادي الاكتشاف.

```bash
nmap -p22 192.168.0.1 --data-length 21
```

### تعيين رقم منفذ المصدر يدويًا

> تتضمن هذه التقنية ضبط رقم منفذ المصدر للحزم المرسلة يدويًا لتجنب الاكتشاف. باستخدام Nmap، يمكن للمستخدمين تحديد منفذ مصدر عشوائي أو منفذ محدد لتجاوز الجدار الناري.

```bash
nmap -p22 192.168.0.1 --source-port 53
```

### إرسال حزم مزيفة إلى الشبكة

> تتيح تقنية التجاوز هذه إرسال حزم منتحلة عبر الشبكة من أجل إرباك أنظمة كشف التسلل وتجنب اكتشافها بواسطة الجدار الناري. باستخدام خيار `-D` ، يرسل Nmap حزمًا منتحلة مع الحزم الحقيقية لإخفاء نشاط المستخدم.

```bash
nmap -p22 192.168.0.1 -D 192.168.0.100,192.168.0.152
```

### تجزئة الحزم المرسلة

> تتضمن هذه التقنية تجزئة الحزم المرسلة بحيث لا يتمكن الجدار الناري من تحديد الحركة كعملية فحص. يتيح خيار Nmap `-f` تجزئة الحزم وإرسالها على شكل أجزاء لتفادي الاكتشاف.

```bash
nmap -p22 192.168.0.1 -f
```

### تغيير عنوان MAC للحزمة

> تتضمن تقنية التجاوز هذه تعديل عنوان MAC للحزمة لتجنب اكتشافها بواسطة الجدار الناري. يتيح لك Nmap ضبط عنوان MAC يدويًا لإخفاء الحركة.

```bash
nmap -p22 192.168.0.1 --spoof-mac f4:69:42:f4:a7:d0
```

## فحص الثغرات باستخدام سكربتات Nmap

```bash
nmap --script "vuln and safe" -p445 10.10.10.10 -oN vulnScan
```

> يتيح لك سكربت Nmap هذا تحليل ثغرات مضيف معين. ومن خلال تشغيل السكربتات من فئة **vuln** (الثغرات) و **safe** (الفحوصات الآمنة)، فإنه يحدد الثغرات الأمنية المحتملة. يتم حفظ النتائج في ملف باسم **vulnScan** لإجراء تحليل لاحق.

**تعداد Linux (بدون بيانات اعتماد)**

```bash
enum4linux -a 10.10.10.10
```

<figure><img src="/files/66fc935204089f04a8cddbbad74388ee2c145e46" alt=""><figcaption></figcaption></figure>

**تعداد Linux باستخدام بيانات الاعتماد**

```bash
enum4linux -a 10.10.10.10 -u admin -p password1
```

<figure><img src="/files/4b85668a7f111c34ad14a39f28e14d4e493124d9" alt=""><figcaption></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://hacking-notes.jord4n.pro/ar/reconnaissance/nmap.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
