العودة إلى التحديثات
New releaseSep 9, 2026

nerva v1.69.6

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

مشاركة
Nerva - أداة سريعة لسطر أوامر لبصمة الخدمات لاستطلاع الشبكات تدعم أكثر من 170 بروتوكولاً

Nerva
Nerva: أداة سريعة لسطر أوامر لبصمة الخدمات

Release Build Status Go Report Card License Stars

الميزات • التثبيت • البدء السريع • الاستخدام • البروتوكولات • المكتبة • حالات الاستخدام • استكشاف الأخطاء وإصلاحها

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

تكتشف Nerva وتحدد بسرعة الخدمات التي تعمل على منافذ الشبكة المفتوحة. استخدمها إلى جانب ماسحات المنافذ مثل Naabu لبصمة الخدمات المكتشفة، أو دمجها في خطوط أنابيب الأمان الخاصة بك للاستطلاع الآلي.

الميزات

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

التثبيت

الإصدارات

قم بتنزيل ملف ثنائي مُجمَّع مسبقًا من صفحة الإصدارات.

من GitHub

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

من المصدر

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

Docker

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

بدء سريع

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

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

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

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

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

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

المرجع الكامل — كل أمر فرعي، واسم مستعار، وعلم، بما في ذلك تلك المخفية من --help — يتم توليده في docs/CLI.md.

الاستخدام

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

أمثلة

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

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

من الملف:

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

فحص UDP:

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

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

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

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

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

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

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

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

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

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 ينقل بيانات الاعتماد بنص واضح

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

{
  "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

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

# 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:

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

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

الفئات