تنظيم نتايج الـ Recon

جارٍ التحميل…

01 / ملخص الدرس

تنظيم نتايج الـ Recon

إزاي تنظّم كل اللي جمعته في هيكل folders ثابت، وملف لكل host، وتحفظ النتايج بـ JSON، وتسأل أسئلة على البيانات بـ Python.

02 / شرح الدرس مكتوبًا

نص شرح المعلم والكود الذي كتبه ونتيجة تشغيله، بنفس ترتيب الدرس.

بعد ساعات من الـ Recon، هيبقى عندك scans، و subdomains، و banners، و notes. لو مش مترتّبين، هتنسى حاجة مهمة، وده أكتر سبب الناس بتفشل بيه في OSCP.

اعمل هيكل folders ثابت لكل هدف: folder للـ scans، وجُوّاه نتايج Nmap. folder للـ loot، يعني أي ملفات أو باسوردات لقيتها. و folder للـ exploits. نفس الترتيب في كل جهاز، علشان دماغك تتعوّد عليه.

والأهم: احفظ البيانات في شكل منظّم، زي JSON. ملف لكل host. فيه الـ OS، والـ ports، والخدمات، والـ notes. كده تقدر تسأله أسئلة بالـ code بعدين. هنا dictionary لجهازين، كل واحد فيه الـ OS والـ ports والـ notes. نطبعهم بشكل مرتّب، وبعدين نحفظهم في ملف JSON. نشغّل… كل جهاز بخدماته وملاحظاته، واتحفظ في recon dot json. ده بقى مصدر الحقيقة بتاعك.

main.py
import json

hosts = {
    "10.10.10.5": {
        "os": "Linux",
        "ports": {22: "OpenSSH 7.2p2", 80: "Apache 2.4.18"},
        "notes": ["robots.txt -> /backup", "WordPress 5.x"],
    },
    "10.10.10.20": {
        "os": "Windows",
        "ports": {445: "SMB", 3306: "MySQL 5.7"},
        "notes": ["SMB share Public: READ/WRITE"],
    },
}

for ip, data in hosts.items():
    print(f"=== {ip} ({data['os']}) ===")
    for port, service in data["ports"].items():
        print(f"  {port:>5}  {service}")
    for note in data["notes"]:
        print(f"  note: {note}")

with open("recon.json", "w") as f:
    json.dump(hosts, f, indent=2)
print("saved recon.json")

المخرجات

=== 10.10.10.5 (Linux) ===
     22  OpenSSH 7.2p2
     80  Apache 2.4.18
  note: robots.txt -> /backup
  note: WordPress 5.x
=== 10.10.10.20 (Windows) ===
    445  SMB
   3306  MySQL 5.7
  note: SMB share Public: READ/WRITE
saved recon.json

دورك: اسأل البيانات سؤال: أنهي أجهزة port eighty مفتوح عليها، وأنهي أجهزة four forty five؟

تمرين

لِف على [80, 445] واطبع الـ IPs اللي الـ port فيها جُوّه data["ports"].

الحل: نشغّل… كده تقدر تجاوب أي سؤال عن الشبكة في لحظة.

main.py
import json

hosts = {
    "10.10.10.5": {
        "os": "Linux",
        "ports": {22: "OpenSSH 7.2p2", 80: "Apache 2.4.18"},
        "notes": ["robots.txt -> /backup", "WordPress 5.x"],
    },
    "10.10.10.20": {
        "os": "Windows",
        "ports": {445: "SMB", 3306: "MySQL 5.7"},
        "notes": ["SMB share Public: READ/WRITE"],
    },
}

for ip, data in hosts.items():
    print(f"=== {ip} ({data['os']}) ===")
    for port, service in data["ports"].items():
        print(f"  {port:>5}  {service}")
    for note in data["notes"]:
        print(f"  note: {note}")

with open("recon.json", "w") as f:
    json.dump(hosts, f, indent=2)
print("saved recon.json")

for port in [80, 445]:
    ips = [ip for ip, data in hosts.items() if port in data["ports"]]
    print(f"port {port}: {ips}")

المخرجات

=== 10.10.10.5 (Linux) ===
     22  OpenSSH 7.2p2
     80  Apache 2.4.18
  note: robots.txt -> /backup
  note: WordPress 5.x
=== 10.10.10.20 (Windows) ===
    445  SMB
   3306  MySQL 5.7
  note: SMB share Public: READ/WRITE
saved recon.json
port 80: ['10.10.10.5']
port 445: ['10.10.10.20']

الدرس الجاي: نعمل أتمتة لكل ده في script واحد. يلا بينا.

03 / دروس المسار (22)
  1. 01يعني إيه جمع معلومات (Recon)؟
  2. 02سلبي ولا نشط؟ والنطاق القانوني
  3. 03WHOIS: مين صاحب الـ Domain؟
  4. 04سجلات DNS: كنز المعلومات
  5. 05اكتشاف الـ Subdomains
  6. 06Certificate Transparency: الشهادات بتتكلم
  7. 07Google Dorking
  8. 08OSINT: الموظفين والإيميلات
  9. 09الـ Metadata: أسرار جُوّه الملفات
  10. 10اكتشاف الأجهزة الشغّالة (Host Discovery)
  11. 11الـ Port Scanning بيشتغل إزاي؟
  12. 12Nmap: البداية
  13. 13أنواع الـ Scan والسرعة في Nmap
  14. 14كشف الخدمات والإصدارات ونظام التشغيل
  15. 15NSE Scripts وحفظ النتايج
  16. 16تعداد الويب: الـ Headers والتكنولوجيا
  17. 17الـ Directory Brute Force
  18. 18تعداد SMB
  19. 19تعداد خدمات تانية: FTP و DNS و SNMP وغيرهم
  20. 20تنظيم نتايج الـ Reconانت هنا
  21. 21أتمتة الـ Recon بـ Python
  22. 22مراجعة شاملة وخطة Recon