فاحص كلمات المرور الافتراضية — dpwo / dw
يدقّق مضيفًا اكتشفته مسبقًا بحثًا عن خدمات ما زالت تعمل بـبيانات اعتماد المصنع / الافتراضية — صنف admin:admin الذي يهيمن على تدقيقات الشبكات الحقيقية (كاميرات IP، راوترات، طابعات، NAS، إنترنت الأشياء). إنه فاحص بيانات اعتماد افتراضية، لا أداة تخمين شامل: قائمة صغيرة منتقاة لكل خدمة، ولشبكاتك فقط.
لشبكاتك فقط.
الاستخدام
يجب أن تكون على الشبكة (cw) ليتمكّن الجهاز من الوصول إلى الهدف.
CMD> cw MyWiFi password # الانضمام للشبكة
CMD> nd # (اختياري) اكتشاف المضيفين → فهارس
CMD> dw 192.168.1.10 # تدقيق كامل لعنوان IP
CMD> dw nd3 # …أو فهرس من netdiscover
CMD> dw ns2 # …أو فهرس من netspy
الوضع الهادئ — فحص خدمة واحدة
تدقيق المنافذ العشرة كلها مُزعج. أضِف رقم منفذ أو اسم خدمة لفحص واحدة فقط (حزم أقل، أسرع، أكثر تخفّيًا):
CMD> dw 192.168.1.10 ssh # SSH فقط
CMD> dw 192.168.1.10 554 # RTSP فقط (بالمنفذ)
CMD> dw 192.168.1.10 http # كل منافذ HTTP (80/81/8000/8080)
CMD> dw 192.168.1.10 ftp,telnet # قائمة قصيرة
أسماء الخدمات: ftp ssh telnet http rtsp redis mqtt snmp. بدون مُرشِّح، تُفحَص كل الخدمات.
منافذ مخصّصة — service:port
لبروتوكول على منفذ غير قياسي (SSH على 2222، لوحة HTTP على 8443، …): استخدم service:port.
CMD> dw 192.168.1.10 ssh:2222 # التحدّث بـ SSH إلى المنفذ 2222
CMD> dw 192.168.1.10 http:8443 # HTTP Basic/Digest على 8443
CMD> dw 192.168.1.10 http,ssh:2222 # مزج المدمج والمخصّص
«المضيف غير قابل للوصول؟»
إذا رجع كل منفذ مُختبَر بحالة closed، يعرض التذييل host unreachable? (isolated/down) — الجهاز مُطفأ أو محمي بجدار ناري، أو أنت على شبكة عزل عملاء (لا يمكنك الوصول إلى العملاء الآخرين — استهدف البوابة/الراوتر بدلًا من ذلك).
تظهر كل خدمة في صفّها وتتحدّث حيًّا أثناء اختبارها. تُضاف النتائج إلى /apps/dpwo/results.csv (ip,port,service,user,pass).
ما الذي يُفحص
| المنفذ | الخدمة | الطريقة |
|---|---|---|
| 21 | FTP | USER/PASS ← 230 |
| 22 | SSH | ssh_userauth_password (يعيد استخدام مكدّس LibSSH من sc) — بطيء: تبادل مفاتيح كامل لكل بيان اعتماد، لذا يستخدم قائمة SSH قصيرة |
| 23 | Telnet | تسجيل الدخول/كلمة المرور، استدلال محثّ الصدفة |
| 80 / 81 / 8000 / 8080 | HTTP | مصادقة Basic و Digest — يجرّب مسارات الإدارة الشائعة (/، /admin، /login، /cgi-bin/luci، …) لإيجاد ما يطلب المصادقة ثم يجرّب البيانات هناك. لا يغطّي نماذج تسجيل الدخول |
| 554 | RTSP | DESCRIBE + Basic/Digest — كاميرات IP. يجرّب مسارات البثّ الشائعة للعلامات (Hikvision /Streaming/Channels/101، Dahua /cam/realmonitor، Reolink /h264Preview_01_main، …) لأن كثيرًا من الكاميرات تُرجع 404 على / ولا تطلب المصادقة إلا على مسار صحيح |
| 6379 | Redis | PING ← مفتوح بلا مصادقة، وإلا AUTH |
| 1883 | MQTT | CONNECT مجهول ← وسيط مفتوح، وإلا بيانات الاعتماد الافتراضية (CONNACK) |
| 161 (UDP) | SNMP | سلاسل المجتمع (public، private، …) |
كلّ ذلك تبادل مُبرمَج قصير عبر مقبس خام — بلا مكتبات ثقيلة، فهو خفيف على الذاكرة. حركة STA عادية، فلا مشكلة GDMA، وتُكتب النتائج مباشرةً إلى بطاقة SD.
قائمة بيانات اعتماد مخصّصة
ضَع افتراضيات إضافية على بطاقة SD في /apps/dpwo/creds.csv، user,pass في كل سطر (تُتجاهَل الأسطر الفارغة وتعليقات #):
# user,pass
admin,vendor123
installer,installer
تُضاف إلى القائمة المدمجة لـ FTP و Telnet و HTTP و RTSP و Redis و MQTT.
لـ SSH ملفّه الخاص — /apps/dpwo/ssh_creds.csv (بنفس صيغة user,pass). يُفصَل SSH لأن كل محاولة تبادل مفاتيح كامل (بطيء)، فتتحكّم في قائمته صراحةً. أمّا SNMP فلا يستخدم هذه الملفّات إطلاقًا — يجرّب سلاسل المجتمع لا user,pass.
الحدود الصريحة
- فحص افتراضي لا تخمين بقائمة كلمات — قائمة منتقاة قصيرة، فالجلسة ثوانٍ لكل خدمة مفتوحة.
- لا نماذج تسجيل دخول حديثة — HTTP بـ Basic/Digest فقط؛ اللوحات التي تستخدم نموذج HTML برموز CSRF/JS لن تُختبَر. (معظم الراوترات/الكاميرات المنزلية ما زالت تستخدم Basic/Digest على الشبكة المحلّية.)
- لا HTTPS — تكلفة مصافحة TLS على الذاكرة لا تستحقّ هنا؛ HTTP عادي فقط.
- نجاح Telnet استدلالي (محثّ صدفة مقابل إعادة الطلب)، فعامل نتائج Telnet كـ«محتملة» وتحقّق منها.
- لشبكاتك فقط.
انظر أيضًا
- Netdiscover / NetSpy — إيجاد مضيفين للاستهداف (
nd#/ns#) - مسح المنافذ — رؤية الخدمات المفتوحة فعلًا أولًا