Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
nerva — CLI سريع لتعريف الخدمات لأكثر من 170 بروتوكول (TCP/UDP/SCTP) - مبني بواسطة Praetorian | Kitploit
أدوات/GitHubGitHub/praetorian-inc/nerva
الاستطلاعأمان إنترنت الأشياءتخطيط الشبكةمسح المنافذأمن SCADA/ICSجمع المعلوماتسوء التكوين
GitHubpraetorian-inc/nerva

nerva

CLI سريع لتعريف الخدمات لأكثر من 170 بروتوكول (TCP/UDP/SCTP) - مبني بواسطة Praetorian

عرض المستودع
3223864منذ يوم واحدتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
<img width="2976" height="1440" alt="Nerva - أداة سريعة لسطر أوامر لبصمة الخدمات لاستطلاع الشبكات تدعم أكثر من 170 بروتوكولاً" src="https://assets.kitploit.com/production/public/readmes/12252/3a0b59e2929fa8fdc41aafe4cb8649e3e85f0ba5f9df8128f7f3f952d70b0018.webp" />
<h1 align="center">
  Nerva
  <br>
  <sub>Nerva: أداة سريعة لسطر أوامر لبصمة الخدمات</sub>
</h1>

<p align="center">
<a href="https://github.com/praetorian-inc/nerva/releases"><img src="https://img.shields.io/github/v/release/praetorian-inc/nerva?style=flat-square" alt="Release"></a>
<a href="https://github.com/praetorian-inc/nerva/actions"><img src="https://img.shields.io/github/actions/workflow/status/praetorian-inc/nerva/ci.yml?style=flat-square" alt="Build Status"></a>
<a href="https://goreportcard.com/report/github.com/praetorian-inc/nerva"><img src="https://goreportcard.com/badge/github.com/praetorian-inc/nerva?style=flat-square" alt="Go Report Card"></a>
<a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg?style=flat-square" alt="License"></a>
<a href="https://github.com/praetorian-inc/nerva/stargazers"><img src="https://img.shields.io/github/stars/praetorian-inc/nerva?style=flat-square" alt="Stars"></a>
</p>

<p align="center">
  <a href="#features">الميزات</a> •
  <a href="#installation">التثبيت</a> •
  <a href="#quick-start">البدء السريع</a> •
  <a href="#usage">الاستخدام</a> •
  <a href="#supported-protocols">البروتوكولات</a> •
  <a href="#library-usage">المكتبة</a> •
  <a href="#use-cases">حالات الاستخدام</a> •
  <a href="#troubleshooting">استكشاف الأخطاء وإصلاحها</a>
</p>

> **بصمة خدمات عالية الأداء مكتوبة بلغة Go.** حدد أكثر من 170 بروتوكول شبكة عبر وسائط النقل TCP وUDP وSCTP مع استخراج غني للبيانات الوصفية.

تكتشف Nerva وتحدد بسرعة الخدمات التي تعمل على منافذ الشبكة المفتوحة. استخدمها إلى جانب ماسحات المنافذ مثل [Naabu](https://github.com/projectdiscovery/naabu) لبصمة الخدمات المكتشفة، أو دمجها في خطوط أنابيب الأمان الخاصة بك للاستطلاع الآلي.

## الميزات

- **أكثر من 170 إضافة بروتوكول** — قواعد البيانات، الوصول عن بُعد، خدمات الويب، المراسلة، البروتوكولات الصناعية والاتصالات
- **76 أداة بصمة HTTP** — اكتشف تقنيات الويب بما في ذلك جدران الحماية وقواعد البيانات وخوادم الذكاء الاصطناعي/LLM والمزيد
- **كشف سوء التكوين الأمني** — حدد المشكلات الأمنية الشائعة مثل واجهات برمجة التطبيقات غير المصادق عليها والبروتوكولات النصية الصريحة (`--misconfigs`)
- **دعم وسائط نقل متعددة** — TCP (افتراضي)، UDP (`--udp`)، وSCTP (`--sctp`، Linux فقط)
- **دعم الوكيل** — توجيه حركة الفحص بشفافية عبر وكلاء SOCKS5 أو HTTP مع دقة DNS قابلة للتكوين
- **بيانات وصفية غنية** — استخراج الإصدارات والتكوينات والتفاصيل ذات الصلة بالأمان من كل خدمة
- **الوضع السريع** — افحص المنافذ الافتراضية فقط للاستطلاع السريع (`--fast`)
- **إخراج مرن** — تنسيقات JSON أو CSV أو قابلة للقراءة البشرية
- **متوافق مع خطوط الأنابيب** — التمرير من Naabu أو Nmap أو أي أداة تُخرج `host:port`
- **مكتبة Go** — استوردها مباشرة في تطبيقات Go الخاصة بك

## التثبيت

### الإصدارات
قم بتنزيل ملف ثنائي مُجمَّع مسبقًا من صفحة [الإصدارات](https://github.com/praetorian-inc/nerva/releases).

### من GitHub

```sh
go install github.com/praetorian-inc/nerva/cmd/nerva@latest
```

### من المصدر

```sh
git clone https://github.com/praetorian-inc/nerva.git
cd nerva
go build ./cmd/nerva
./nerva -h
```

### Docker

```sh
git clone https://github.com/praetorian-inc/nerva.git
cd nerva
docker build -t nerva .
docker run --rm nerva -h
docker run --rm nerva -t example.com:80 --json
```

## بدء سريع

بصمة هدف واحد:

```sh
nerva -t example.com:22
# ssh://example.com:22
```

احصل على بيانات JSON وصفية مفصلة:

```sh
nerva -t example.com:22 --json
# {"host":"example.com","ip":"93.184.216.34","port":22,"protocol":"ssh","transport":"tcp","metadata":{...}}
```

التوجيه من ماسح منافذ:

```sh
naabu -host example.com -silent | nerva
# http://example.com:80
# ssh://example.com:22
# https://example.com:443
```

<!-- BEGIN generated: cli-subcommands -->

<!-- END generated: cli-subcommands -->

<!-- BEGIN generated: cli-aliases -->
المرجع الكامل — كل أمر فرعي، واسم مستعار، وعلم، بما في ذلك تلك المخفية من `--help` — يتم توليده في [docs/CLI.md](https://github.com/praetorian-inc/nerva/blob/main/docs/CLI.md).
<!-- END generated: cli-aliases -->

## الاستخدام

```
nerva [flags]

TARGET SPECIFICATION:
  Requires host:port or ip:port format. Assumes ports are open.

EXAMPLES:
  nerva -t example.com:80
  nerva -t example.com:80,example.com:443
  nerva -l targets.txt
  nerva --json -t example.com:80
  cat targets.txt | nerva
```

### أمثلة

**أهداف متعددة:**

```sh
nerva -t example.com:22,example.com:80,example.com:443
```

**من الملف:**

```sh
nerva -l targets.txt --json -o results.json
```

**فحص UDP**:

```sh
nerva -t example.com:53 -U
# dns://example.com:53
```

**فحص SCTP** (لينكس فقط):

```sh
nerva -t telecom-server:3868 -S
# diameter://telecom-server:3868
```

**الوضع السريع** (المنافذ الافتراضية فقط):

```sh
nerva -l large-target-list.txt --fast --json
```

**توجيه الوكيل مع تحليل DNS عن بُعد:**

```sh
nerva -t target.internal:80 --proxy socks5://127.0.0.1:1080 --dns-order p
```

### اكتشاف الأخطاء الأمنية في الإعدادات

يمكن لـ Nerva تحديد الأخطاء الأمنية الشائعة في الإعدادات عند تمكينها باستخدام `--misconfigs`:

```sh
nerva -t example.com:2375 --misconfigs --json
```

**التكوينات الخاطئة المكتشفة:**

| معرّف النتيجة | الخطورة | الوصف |
|------------|----------|-------------|
| `docker-unauth-api` | حرجة | واجهة Docker API متاحة دون مصادقة |
| `x11-unauth-access` | حرجة | خادم X11 يسمح باتصالات غير مُصادَق عليها |
| `dotnet-remoting-http-exposed` | عالية | قناة .NET Remoting HTTP مكشوفة (خطر إلغاء التسلسل) |
| `smb-signing-not-required` | متوسطة | توقيع SMB غير مطلوب (خطر هجوم التمرير) |
| `telnet-cleartext` | متوسطة | Telnet ينقل بيانات الاعتماد بنص واضح |
| `vnc-detected` | متوسطة | تم اكتشاف VNC (غالبًا مصادقة ضعيفة) |
| `ssh-password-auth` | متوسطة | الخادم يسمح بالمصادقة بكلمة المرور |
| `ssh-weak-cipher` | منخفضة | الخادم يوفّر شفرات ضعيفة (RC4، 3DES، Blowfish) |
| `ssh-weak-kex` | منخفضة | الخادم يوفّر خوارزميات تبادل مفاتيح ضعيفة |
| `ssh-weak-mac` | منخفضة | الخادم يوفّر خوارزميات MAC ضعيفة |
| `ftp-cleartext` | منخفضة | FTP ينقل بيانات الاعتماد بنص واضح |

**مثال على المخرجات مع التكوينات الخاطئة:**

```json
{
  "host": "example.com",
  "port": 2375,
  "protocol": "docker",
  "anonymous_access": true,
  "security_findings": [
    {
      "id": "docker-unauth-api",
      "severity": "critical",
      "description": "Docker API accessible without authentication",
      "evidence": "Successfully queried /version endpoint without credentials"
    }
  ]
}
```

### دعم البروكسي

يدعم Nerva توجيه حركة الفحص عبر بروكسيات SOCKS5 وHTTP مع دقة DNS قابلة للتكوين.

**مخططات البروكسي المدعومة:**

- `socks5://` - بروكسي SOCKS5 مع دقة DNS محلية
- `socks5h://` - بروكسي SOCKS5 مع دقة DNS من جانب البروكسي (دائمًا)
- `http://` - بروكسي HTTP CONNECT
- `https://` - بروكسي HTTPS CONNECT

**مصادقة البروكسي:**

```sh
# Inline authentication (URL format)
nerva -t example.com:80 --proxy socks5://username:[email protected]:1080

# Separate authentication flag
nerva -t example.com:80 --proxy socks5://127.0.0.1:1080 --proxy-auth username:password
```

**استراتيجيات تحليل DNS** (`--dns-order`):

| الخيار | الاستراتيجية | حالة الاستخدام |
|--------|----------|----------|
| `l` | محلي فقط | DNS محلي قياسي (افتراضي) |
| `p` | الوكيل فقط | فرض تحليل DNS من جانب الوكيل |
| `lp` | محلي، مع الرجوع إلى الوكيل | جرّب المحلي أولاً، واستخدم الوكيل عند الفشل |
| `pl` | الوكيل، مع الرجوع إلى المحلي | جرّب الوكيل أولاً، واستخدم المحلي عند الفشل |

**ملاحظة:** مخطط `socks5h://` يفرض تلقائيًا DNS من جانب الوكيل (مكافئ لـ `--dns-order p`)

**مثال على فحص Tor:**

```sh
# Scan .onion services through Tor (SOCKS5 proxy on port 9050)
nerva -t http://example.onion:80 --proxy socks5h://127.0.0.1:9050
```

**UDP عبر البروكسي:**

```sh
# UDP scanning through SOCKS5 proxy (limited support)
nerva -t target.com:161 --proxy socks5://127.0.0.1:1080 --udp
```

⚠️ **قيود UDP:** دعم UDP عبر SOCKS5 محدود. لا تدعم جميع خوادم SOCKS5 اقتران UDP. قد يحدث الرجوع إلى UDP المحلي.

**المسح المتوازي مع تحديد المعدل:**

```sh
nerva -l large-target-list.txt -W 100 -H 5 -R 50 -v
```

**إيقاف التشغيل بلطف** (Ctrl+C يعيد نتائج جزئية):

```sh
nerva -l huge-target-list.txt -W 50 -v
# Press Ctrl+C to stop — collected results are still printed
```

## البروتوكولات المدعومة

**أكثر من 170 إضافة لاكتشاف الخدمات** عبر TCP وUDP وSCTP:

### وحدات بصمة HTTP (66)

اكتشاف التقنيات لخدمات الويب، منظمة حسب الفئة:

#### الجدران النارية وأمن الشبكات (12)

| الوحدة | الوصف |
|--------|-------------|
| Checkpoint | Check Point Security Gateway |
| Cisco ASA/FTD | Cisco firewall/VPN appliances |
| FortiGate | Fortinet firewall/VPN |
| GlobalProtect | Palo Alto Networks VPN |
| Juniper | Juniper SRX firewalls |
| OPNsense | OPNsense firewall |
| pfSense | pfSense firewall |
| SonicWall | SonicWall firewalls |
| AnyConnect | Cisco AnyConnect SSL VPN |
| Cisco Expressway | Cisco collaboration gateway |
| BigIP | F5 BIG-IP load balancer |
| WinRM | Windows Remote Management |

#### الذكاء الاصطناعي/LLM والتعلم الآلي (6)

| الوحدة | الوصف |
|--------|-------------|
| Ollama | خادم استدلال LLM مستضاف ذاتيًا |
| LocalAI | استدلال LLM مستضاف ذاتيًا (متوافق مع OpenAI) |
| Open WebUI | واجهة ويب LLM (بنمط ChatGPT) |
| Triton | NVIDIA Triton Inference Server |
| Weaviate | قاعدة بيانات متجهية للذكاء الاصطناعي |
| ChromaDB | قاعدة بيانات متجهية |

#### قواعد البيانات ومخازن البيانات (12)

| الوحدة | الوصف |
|--------|-------------|
| ArangoDB | قاعدة بيانات متعددة النماذج |
| CockroachDB | قاعدة بيانات SQL موزعة |
| CouchDB | قاعدة بيانات مستندات Apache |
| Elasticsearch | محرك بحث وتحليلات |
| etcd | مخزن مفتاح-قيمة موزع |
| Milvus | قاعدة بيانات متجهية |
| MinIO | تخزين كائنات متوافق مع S3 |
| Pinecone | قاعدة بيانات متجهية |
| Redis Commander | واجهة إدارة Redis عبر الويب |
| TiDB | قاعدة بيانات SQL موزعة |
| YugabyteDB | قاعدة بيانات SQL موزعة |
| Qdrant | قاعدة بيانات متجهية |

#### DevOps والبنية التحتية (14)

| الوحدة | الوصف |
|--------|-------------|
| Artifactory | مستودع JFrog للقطع الأثرية |
| Consul | شبكة خدمات HashiCorp |
| Docker Registry | سجل صور الحاويات |
| Gitea | خدمة Git مستضافة ذاتيًا |
| Grafana | منصة المراقبة |
| Harbor | سجل الحاويات |
| Jaeger | التتبع الموزع |
| Jenkins | أتمتة CI/CD |
| Kubernetes | واجهة برمجة تنسيق الحاويات |
| Portainer | واجهة إدارة Docker |
| Prometheus | نظام المراقبة |
| Swagger/OpenAPI | توثيق API |
| TeamCity | خادم CI/CD |
| Vault | إدارة أسرار HashiCorp |

#### خوادم الويب وأطر العمل (10)

| الوحدة | الوصف |
|--------|-------------|
| Apache HTTPD | Apache HTTP Server |
| Express.js | إطار عمل ويب Node.js |
| GoAhead | خادم ويب مدمج |
| Gotenberg | خدمة إنشاء PDF |
| Guacamole | بوابة سطح المكتب البعيد Apache |
| SOAP | خدمات الويب |
| Tengine | خادم ويب Alibaba |
| Tomcat | Apache Tomcat |
| WordPress | منصة CMS |
| UPnP | Universal Plug and Play |

#### المؤسسات والأعمال (8)

| الوحدة | الوصف |
|--------|-------------|
| AEM | Adobe Experience Manager |
| Dynamics 365 | Microsoft Dynamics 365 / Power Apps |
| Oracle Service Cloud | منصة Oracle CRM |
| SAP NetWeaver | منصة SAP للمؤسسات |
| Splunk | منصة إدارة السجلات |
| VMware Horizon | البنية التحتية لسطح المكتب الافتراضي |
| QNAP QTS | إدارة NAS |
| Exchange | Microsoft Exchange Server |

#### المنزل وإنترنت الأشياء (2)

| الوحدة | الوصف |
|--------|-------------|
| Home Assistant | منصة أتمتة المنزل |
| UniFi/EdgeOS | أجهزة شبكة Ubiquiti |

#### أخرى (3)

| الوحدة | الوصف |
|--------|-------------|
| .NET Remoting HTTP | قناة Microsoft .NET Remoting HTTP |
| Go pprof | نقاط نهاية تحليل Go |
| NATS | وسيط الرسائل |

### قواعد البيانات (20)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| PostgreSQL | TCP | 5432 |
| MySQL | TCP | 3306 |
| MSSQL | TCP | 1433 |
| Oracle | TCP | 1521 |
| MongoDB | TCP | 27017 |
| Redis | TCP/TLS | 6379, 6380 |
| Cassandra | TCP | 9042 |
| InfluxDB | TCP | 8086 |
| Neo4j | TCP/TLS | 7687 |
| DB2 | TCP | 446, 50000 |
| Sybase | TCP | 5000 |
| Firebird | TCP | 3050 |
| Memcached | TCP | 11211 |
| ZooKeeper | TCP | 2181 |
| Milvus | TCP | 19530, 9091 |
| CouchDB | HTTP | 5984 |
| Elasticsearch | HTTP | 9200 |
| ArangoDB | HTTP | 8529 |
| ChromaDB | HTTP | 8000 |
| Pinecone | HTTP | 443 |

### الوصول عن بُعد (6)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| SSH | TCP | 22, 2222 |
| RDP | TCP/TLS | 3389 |
| Telnet | TCP | 23 |
| VNC | TCP | 5900 |
| AnyDesk | TCP | 7070 |
| TeamViewer | TCP | 5938 |

### الويب وAPI (2)

| البروتوكول | النقل | ملاحظات |
|----------|-----------|-------|
| HTTP/HTTPS | TCP | HTTP/2، اكتشاف التقنيات عبر Wappalyzer |
| Kubernetes | TCP | اكتشاف خادم API |

### المراسلة وقوائم الانتظار (10)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| Kafka | TCP/TLS | 9092, 9093 |
| MQTT 3/5 | TCP/TLS | 1883, 8883 |
| AMQP | TCP/TLS | 5672, 5671 |
| ActiveMQ | TCP/TLS | 61616, 61617 |
| NATS | TCP/TLS | 4222, 6222 |
| Pulsar | TCP/TLS | 6650, 6651 |
| SMTP | TCP/TLS | 25, 465, 587 |
| POP3 | TCP/TLS | 110, 995 |
| IMAP | TCP/TLS | 143, 993 |
| SMPP | TCP | 2775, 2776 |

### خدمات الملفات والأدلة (7)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| FTP | TCP | 21 |
| SMB | TCP | 445 |
| NFS | TCP/UDP | 2049 |
| Rsync | TCP | 873 |
| TFTP | UDP | 69 |
| SVN | TCP | 3690 |
| LDAP | TCP/TLS | 389, 636 |

### خدمات الشبكة (11)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| DNS | TCP/UDP | 53 |
| DHCP | UDP | 67, 68 |
| NTP | UDP | 123 |
| SNMP | UDP | 161 |
| NetBIOS-NS | UDP | 137 |
| STUN | UDP | 3478 |
| OpenVPN | UDP | 1194 |
| IPsec | UDP | 500 |
| IPMI | UDP | 623 |
| CoAP | UDP | 5683 |
| Echo | TCP/UDP | 7 |

### أنظمة التحكم الصناعي (18)

| البروتوكول | النقل | المنافذ الافتراضية | ملاحظات |
|----------|-----------|---------------|-------|
| Modbus | TCP | 502 | SCADA/PLC |
| S7comm | TCP | 102 | Siemens PLC |
| EtherNet/IP | TCP | 44818 | Rockwell/Allen-Bradley |
| PROFINET | TCP | 34962-34964 | Siemens industrial |
| BACnet | UDP | 47808 | أتمتة المباني |
| OPC UA | TCP | 4840 | التشغيل البيني الصناعي |
| OMRON FINS | TCP/UDP | 9600 | OMRON PLC |
| MELSEC-Q | TCP | 5006, 5007 | Mitsubishi PLC |
| KNXnet/IP | UDP | 3671 | أتمتة المباني |
| IEC 104 | TCP | 2404 | SCADA لشبكة الطاقة |
| DNP3 | TCP | 20000 | SCADA لشبكة الطاقة |
| Codesys | TCP | 1200, 2455 | بيئة تشغيل PLC |
| Fox | TCP | 1911 | Tridium Niagara |
| PC WORX | TCP | 1962 | Phoenix Contact |
| ProConOS | TCP | 20547 | بيئة تشغيل PLC |
| HART-IP | TCP | 5094 | أتمتة العمليات |
| EtherCAT | UDP | 34980 | التحكم في الحركة |
| Crimson v3 | TCP | 789 | Red Lion HMI |
| PCOM | TCP | 20256 | Unitronics PLC |
| GE SRTP | TCP | 18245 | GE PLC |
| ATG | TCP | 10001 | مقاييس الخزانات |

### الاتصالات وVoIP (17)

| البروتوكول | النقل | المنافذ الافتراضية | ملاحظات |
|----------|-----------|---------------|-------|
| Diameter | TCP/SCTP | 3868 | LTE/5G AAA |
| M3UA | SCTP | 2905 | SS7 عبر IP |
| M2UA | SCTP | 2904 | MTP2 User Adaptation |
| M2PA | SCTP | 3565 | MTP2 Peer Adaptation |
| SGsAP | SCTP | 29118 | Circuit-switched fallback |
| X2AP | SCTP | 36422 | LTE inter-eNodeB |
| IUA | SCTP | 9900 | ISDN عبر IP |
| SIP | TCP/UDP/TLS | 5060, 5061 | إشارات VoIP |
| MEGACO/H.248 | UDP | 2944, 2945 | بوابة الوسائط |
| MGCP | UDP | 2427, 2727 | بوابة الوسائط |
| H.323 | TCP | 1720 | مؤتمرات الفيديو |
| SCCP/Skinny | TCP | 2000, 2443 | هواتف Cisco IP |
| IAX2 | UDP | 4569 | بروتوكول Asterisk |
| GTP-C | UDP | 2123 | تحكم GPRS |
| GTP-U | UDP | 2152 | مستوى مستخدم GPRS |
| GTP' | UDP | 3386 | فوترة GPRS |
| PFCP | UDP | 8805 | مستوى مستخدم 5G |

### VPN والأمان (11)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| SSH | TCP | 22, 2222 |
| OpenVPN | UDP | 1194 |
| WireGuard | UDP | 51820 |
| IPsec/IKEv2 | UDP | 500, 4500 |
| L2TP | UDP | 1701 |
| SSTP | TCP | 443 |
| GlobalProtect | HTTP | 443 |
| AnyConnect | HTTP | 443 |
| FortiGate | HTTP | 443 |
| STUN/TURN | UDP | 3478, 5349 |
| Kerberos | TCP | 88 |

### الوصول عن بُعد والإدارة (10)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| RDP | TCP/TLS | 3389 |
| VNC | TCP | 5900 |
| Telnet | TCP | 23 |
| WinRM | HTTP | 5985, 5986 |
| IPMI | UDP | 623 |
| SNMP | UDP | 161 |
| Zabbix Agent | TCP | 10050 |
| NRPE | TCP/TLS | 5666 |
| Docker | TCP/TLS | 2375, 2376 |
| X11 | TCP | 6000-6063 |

### أدوات المطورين (8)

| البروتوكول | النقل | المنافذ الافتراضية |
|----------|-----------|---------------|
| HTTP/HTTPS | TCP | 80, 443, 8080, 8443 |
| Java RMI | TCP | 1099 |
| JDWP | TCP | 5005 |
| RTSP | TCP | 554 |
| Linux RPC | TCP | 111 |
| JetDirect | TCP | 9100 |
| CUPS/IPP | TCP | 631 |
| SonarQube | TCP | 9000 |

## استخدام المكتبة

استورد Nerva في تطبيقات Go الخاصة بك:

```go
package main

import (
    "context"
    "fmt"
    "log"
    "net/netip"
    "time"

    "github.com/praetorian-inc/nerva/pkg/plugins"
    "github.com/praetorian-inc/nerva/pkg/scan"
)

func main() {
    // Configure scan
    config := scan.Config{
        DefaultTimeout: 2 * time.Second,
        FastMode:       false,
        UDP:            false,
        Proxy:          "socks5://127.0.0.1:1080", // optional
        ProxyAuth:      "username:password",       // optional
        DNSOrder:       "p",                       // resolver strategy
    }

    // Create target
    ip, _ := netip.ParseAddr("93.184.216.34")
    target := plugins.Target{
        Address: netip.AddrPortFrom(ip, 22),
        Host:    "example.com",
    }

    // Run scan
    results, err := scan.ScanTargets(context.Background(), []plugins.Target{target}, config)
    if err != nil {
        log.Fatal(err)
    }

    // Process results
    for _, result := range results {
        fmt.Printf("%s:%d - %s (%s)\n",
            result.Host, result.Port,
            result.Protocol, result.Transport)
    }
}
```

راجع [examples/service-fingerprinting-example.go](https://github.com/praetorian-inc/nerva/blob/main/examples/service-fingerprinting-example.go) للحصول على مثال كامل قابل للتشغيل.

## حالات الاستخدام

### اختبار الاختراق

البصمة السريعة للخدمات المكتشفة أثناء الاستطلاع لتحديد نواقل الهجوم المحتملة.

### خطوط أنابيب اكتشاف الأصول

اجمعها مع Naabu أو Masscan لجرد الأصول على نطاق واسع:

```sh
naabu -host 10.0.0.0/24 -silent | nerva --json | jq '.protocol'
```

### فحص الأمان في CI/CD

دمج في خطوط أنابيب النشر للتحقق من أن الخدمات المتوقعة فقط هي المكشوفة.

### استطلاع Bug Bounty

تعداد الخدمات بسرعة عبر أهداف النطاق للعثور على نقاط نهاية مثيرة للاهتمام.

### تحليل شبكات الاتصالات

بصمة عقد Diameter في شبكات LTE/5G باستخدام نقل SCTP (لينكس):

```sh
nerva -t mme.telecom.local:3868 -S --json
```

## البنية

```mermaid
graph LR
    A[host:port input] --> B[Target Parser]
    B --> C[Scan Engine]
    C --> D{Transport}
    D -->|TCP| E[TCP Plugins]
    D -->|UDP| F[UDP Plugins]
    D -->|SCTP| G[SCTP Plugins]
    E --> H[Service Detection]
    F --> H
    G --> H
    H --> I[Metadata Extraction]
    I --> J[JSON/CSV/Text Output]
```

## لماذا Nerva؟

### مقابل Nmap

- **إعدادات افتراضية أذكى**: يتحقق Nerva من البروتوكول الأكثر احتمالاً أولاً بناءً على رقم المنفذ
- **مخرجات منظمة**: دعم أصلي لـ JSON/CSV لسهولة التحليل والتكامل مع خطوط الأنابيب
- **مركّز**: بصمة الخدمة فقط — اقترنه مع ماسحات المنافذ المخصصة للاستكشاف

### مقابل zgrab2

- **الكشف التلقائي**: لا حاجة لتحديد البروتوكول مسبقاً
- **استخدام أبسط**: `nerva -t host:port` مقابل `echo host | zgrab2 http -p port`

## استكشاف الأخطاء وإصلاحها

### لا توجد مخرجات

**السبب**: المنفذ مغلق أو لم يتم اكتشاف خدمة مدعومة.

**الحل**: تحقق من أن المنفذ مفتوح:

```sh
nc -zv example.com 80
```

### أخطاء المهلة الزمنية

**السبب**: المهلة الافتراضية البالغة ثانيتين قصيرة جدًا للخدمات البطيئة.

**الحل**: قم بزيادة المهلة:

```sh
nerva -t example.com:80 -w 5000  # 5 seconds
```

### خدمات UDP غير مكتشفة

**السبب**: فحص UDP معطّل افتراضيًا.

**الحل**: فعّله باستخدام العلامة `-U`:

```sh
nerva -t example.com:53 -U
```

تستخدم فحوصات Nerva UDP مآخذ بيانات متصلة ولا تتطلب صلاحيات الجذر.

### SCTP لا يعمل

**السبب**: SCTP مدعوم فقط على Linux.

**الحل**: شغّله على نظام Linux أو حاوية:

```sh
docker run --rm nerva -t telecom:3868 -S
```

## المصطلحات

- **الخدمة (Service)**: خدمة شبكية تعمل على منفذ (SSH، HTTP، PostgreSQL، إلخ.)
- **البصمة (Fingerprinting)**: اكتشاف وتحديد نوع الخدمة وإصدارها وتكوينها
- **الإضافة (Plugin)**: وحدة كشف خاصة ببروتوكول معين
- **الوضع السريع (Fast Mode)**: فحص المنفذ الافتراضي فقط لكل بروتوكول (تحسين 80/20)
- **النقل (Transport)**: بروتوكول طبقة الشبكة (TCP، UDP، أو SCTP)

## الدعم

إذا وجدت Nerva مفيدًا، فيرجى التفكير في منحه نجمة:

[![GitHub stars](https://img.shields.io/github/stars/praetorian-inc/nerva?style=social)](https://github.com/praetorian-inc/nerva)

## المساهمة

نرحب بالمساهمات! راجع [CONTRIBUTING.md](https://github.com/praetorian-inc/nerva/blob/main/CONTRIBUTING.md) للحصول على الإرشادات.

## الترخيص

Apache 2.0 — راجع [LICENSE](https://github.com/praetorian-inc/nerva/blob/main/LICENSE) للحصول على التفاصيل.

## شكر وتقدير

Nerva هو fork مُصان من [fingerprintx](https://github.com/praetorian-inc/fingerprintx)، الذي طورته في الأصل دفعة المتدربين لعام 2022 في Praetorian:

* [Soham Roy](https://github.com/praetorian-sohamroy)
* [Jue Huang](https://github.com/jue-huang)
* [Henry Jung](https://github.com/henryjung64)
* [Tristan Wiesepape](https://github.com/qwetboy10)
* [Joseph Henry](https://github.com/jwhenry28)
* [Noah Tutt](https://github.com/noahtutt)
* [Nathan Sportsman](https://github.com/nsportsman)
تنزيل الأداة