Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/snovvcrash/divideandscan
ماسحات الثغرات الأمنيةتخطيط الشبكةمسح المنافذالبرمجة النصية والأتمتةاختبار الاختراق
GitHubsnovvcrash/divideandscan

DivideAndScan

قسّم نتائج فحص المنافذ الكامل واستخدمها لتشغيل Nmap بشكل مستهدف

عرض المستودع
33349منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة

DivideAndScan

Divide Et Impera And Scan (وادمج نتائج المسح)

الإصدار بايثون codacy pypi docker

مشاريع مميزة

NixOSNixOSoffsec.tools
NixOSoffsec.tools

DivideAndScan يُستخدم لأتمتة روتين مسح المنافذ بكفاءة عن طريق تقسيمه إلى 3 مراحل:

  1. اكتشاف المنافذ المفتوحة لمجموعة من الأهداف.
  2. تشغيل Nmap لكل هدف على حدة مع تجسيد الإصدارات وإجراءات NSE.
  3. دمج النتائج في تقرير Nmap واحد (صيغ مختلفة متاحة).

في المرحلة 1، يُقصد استخدام ماسح منافذ سريع، يتم تحليل مخرجاته وتخزينها في قاعدة بيانات ملف واحد (TinyDB). بعد ذلك، خلال المرحلة 2، يتم إطلاق عمليات مسح Nmap فردية لكل هدف مع مجموعة منافذه المفتوحة (مع دعم تعدد العمليات) وفقًا لبيانات قاعدة البيانات. أخيرًا، في المرحلة 3، يتم دمج مخرجات Nmap المنفصلة في تقرير واحد بصيغ مختلفة (XML / HTML / نص عادي / grepable) باستخدام nMap_Merger. يتم توفير جزء التصور بواسطة DrawNmap.

حالات الاستخدام المحتملة:

  • مهام اختبار الاختراق / الفرق الحمراء بنطاق كبير للتعداد.
  • حروب الأمن السيبراني / مختبرات CTF التدريبية.
  • شهادة OSCP.

* ماسحات المنافذ المتاحة:

  • Nmap
  • Masscan
  • RustScan
  • Naabu
  • NimScan
  • sx

إخلاء مسؤولية. جميع المعلومات الواردة في هذا المستودع مُقدمة للأغراض التعليمية والبحثية فقط. المؤلف ليس مسؤولاً عن أي استخدام غير قانوني لهذه الأداة.

كيف يعمل

how-it-works.png

كيفية التثبيت

المتطلبات الأساسية

لـ تقسيم ومسح بنجاح، نحتاج إلى بعض أدوات مسح المنافذ الجيدة (في الأمثلة أدناه، يتم جلب إصدارات GitHub عبر eget).

📑 ملاحظة: إذا كنت لا ترغب في العبث بالتبعيات على نظام التشغيل المضيف، انتقل إلى جزء Docker.

Nmap

root@kitploit:~
sudo apt install nmap xsltproc -y
sudo nmap --script-updatedb

Masscan

root@kitploit:~
pushd /tmp
wget https://github.com/ivre/masscan/archive/refs/heads/master.zip -O masscan-master.zip
unzip masscan-master.zip
cd masscan-master
make
sudo make install
popd && rm -rf /tmp/masscan-master*

RustScan

root@kitploit:~
eget -t 2.0.1 -a amd64 RustScan/RustScan --to /tmp/rustscan.deb
sudo dpkg -i /tmp/rustscan.deb && rm /tmp/rustscan.deb
sudo wget https://gist.github.com/snovvcrash/8b85b900bd928493cd1ae33b2df318d8/raw/fe8628396616c4bf7a3e25f2c9d1acc2f36af0c0/rustscan-ports-top1000.toml -O /root/.rustscan.toml

Naabu

root@kitploit:~
sudo mkdir /opt/naabu
sudo eget -s linux/amd64 projectdiscovery/naabu --to /opt/naabu
sudo ln -sv /opt/naabu/naabu /usr/local/bin/naabu

NimScan

root@kitploit:~
sudo mkdir /opt/nimscan
sudo eget -a NimScan elddy/NimScan --to /opt/nimscan
sudo ln -sv /opt/nimscan/nimscan /usr/local/bin/nimscan

sx

root@kitploit:~
sudo mkdir /opt/sx
sudo eget -s linux/amd64 v-byte-cpu/sx --to /opt/sx
sudo ln -sv /opt/sx/sx /usr/local/bin/sx

dnsx

root@kitploit:~
sudo mkdir /opt/pd
sudo eget -s linux/amd64 projectdiscovery/dnsx --to /opt/pd
sudo ln -sv /opt/pd/dnsx /usr/local/bin/dnsx

التثبيت

DivideAndScan متاح على PyPI كـ divideandscan، لكني أوصي بتثبيته من GitHub باستخدام pipx للحصول دائمًا على أحدث إصدار:

root@kitploit:~
~$ pipx install -f "git+https://github.com/snovvcrash/DivideAndScan.git"
~$ das

يوجد أيضًا إصدار معبأ بـ shiv (ولكن حجم الملف كبير):

root@kitploit:~
# shiv -e das.divideandscan:main -o das.pyz divideandscan
~$ wget https://github.com/snovvcrash/DivideAndScan/releases/latest/download/das.pyz && chmod +x das.pyz
~$ ./das.pyz

لأغراض التصحيح، يمكنك إعداد بيئة تطوير باستخدام poetry:

root@kitploit:~
~$ git clone --recurse-submodules https://github.com/snovvcrash/DivideAndScan
~$ cd DivideAndScan
~$ poetry install
~$ poetry run das

📑 ملاحظة: يستخدم DivideAndScan sudo لتشغيل جميع ماسحات المنافذ، لذلك سيطلب كلمة المرور عند استدعاء أوامر المسح.

الاستخدام من خلال Docker

dockeri.co

يمكنك تشغيل DivideAndScan في حاوية Docker كما يلي:

root@kitploit:~
~$ docker run --rm -it --name das -v ~/.das:/root/.das -v `pwd`:/app -p 8050:8050 snovvcrash/divideandscan

نظرًا لأن الأداة تتطلب بعض بيانات الإدخال وتنتج بعض بيانات الإخراج، يجب تحديد دليل العمل الحالي كنقطة تحميل عند /app داخل الحاوية. كما أن نشر المنفذ 8050 على المضيف يسمح بالوصول إلى تطبيق Dash المستخدم لتصور تقارير Nmap.

قد ترغب في تعيين اسم مستعار لجعل الأمر الأساسي أقصر:

root@kitploit:~
~$ alias das='docker run --rm -it --name das -v ~/.das:/root/.das -v `pwd`:/app -p 8050:8050 snovvcrash/divideandscan'
~$ das

كيفية الاستخدام

how-to-use.png

1. ملء قاعدة البيانات

2. المسح المستهدف

3 (اختياري). دمج التقارير

🔥 مثال 🔥

دعنا نعدد المنافذ المفتوحة لجميع الأجهزة الحية على Hack The Box.

  1. أضف التعيينات "مضيف ⇄ منافذ مفتوحة" إلى قاعدة البيانات باستخدام Masscan. لأغراض العرض التوضيحي، سأستبعد نطاق المنافذ الديناميكية لتجنب الأشياء غير الضرورية باستخدام -p1-49151. في لقطة الشاشة الثانية، أراجع نتائج المسح حسب المضيفين والمنافذ:
root@kitploit:~
~$ das -db htb add -rm masscan '-e tun0 --rate 1000 -iL hosts.txt -p1-49151 --open'

example-1.png

root@kitploit:~
~$ das -db htb scan -hosts all -show
~$ das -db htb scan -ports all -show

example-2.png

  1. قم بتشغيل عمليات Nmap لكل هدف لتعداد المنافذ التي نهتم بها فقط (المنافذ المفتوحة). في لقطة الشاشة الثانية، أفعل الشيء نفسه ولكن بدء عمليات Nmap في وقت واحد:
root@kitploit:~
~$ das -db htb scan -hosts all -oA report

example-3.png

root@kitploit:~
~$ das -db htb scan -hosts all -oA report -nmap '-Pn -sVC -O' -parallel

أحضر الماسح الخاص بك!

يمكنك إقران ماسح المنافذ المفضل لديك مع DivideAndScan من خلال تنفيذ طريقة parse واحدة لمخرجاته في das/parsers/DUMMY_SCANNER.py (انظر مثال لـ masscan):

root@kitploit:~
from das.parsers import IAddPortscanOutput


class AddPortscanOutput(IAddPortscanOutput):
    """فئة فرعية لمعالجة مخرجات DUMMY_SCANNER."""

    def parse(self):
        """
        محلل مخرجات DUMMY_SCANNER الخام.

        :return: زوج من القيم (اسم ملف مخرجات المسح الخام، عدد المضيفين المضافين إلى قاعدة البيانات)
        :rtype: tuple
        """
        hosts = set()
        for line in self.portscan_raw:
            # تنفيذ محلل DUMMY_SCANNER
            pass

        return (self.portscan_out, len(hosts))

المساعدة

root@kitploit:~
usage: das [-h] [-db DB] {db,add,scan,dns,report,parse,draw,tree,help} ...

 -----------------------------------------------------------------------------------------------
|  ________  .__      .__    .___        _____              .____________                       |
|  \______ \ |__|__  _|__| __| _/____   /  _  \   ____    __| _/   _____/ ____ _____    ____    |
|   |    |  \|  \  \/ /  |/ __ |/ __ \ /  /_\  \ /    \  / __ |\_____  \_/ ___\\__  \  /    \   |
|   |    `   \  |\   /|  / /_/ \  ___//    |    \   |  \/ /_/ |/        \  \___ / __ \|   |  \  |
|  /_______  /__| \_/ |__\____ |\___  >____|__  /___|  /\____ /_______  /\___  >____  /___|  /  |
|          \/                 \/    \/        \/     \/      \/       \/     \/     \/     \/   |
|  {@snovvcrash}            {https://github.com/snovvcrash/DivideAndScan}             {vX.Y.Z}  |
 -----------------------------------------------------------------------------------------------

الوسائط الموضعية:
  {db,add,scan,dns,report,parse,draw,tree,help}
    db                  أدوات للتلاعب اليدوي بقاعدة البيانات
    add                 تشغيل مسح كامل للمنافذ وإضافة المخرجات إلى قاعدة البيانات
    scan                تشغيل عمليات مسح Nmap مستهدفة ضد المضيفين والمنافذ من قاعدة البيانات
    dns                 تعيين أسماء النطاقات من ملف إدخال إلى عناوين IP المقابلة من قاعدة البيانات
    report              دمج مخرجات Nmap المنفصلة في تقرير واحد (https://github.com/CBHue/nMap_Merger)
    parse               تحليل تقارير Nmap XML الخام بواسطة أسماء الخدمات وطباعة الإدخالات بالصيغة {service}://{host}:{port}}
    draw                تصور تقارير Nmap XML (https://github.com/jor6PS/DrawNmap)
    tree                عرض محتويات دليل ~/.das/ باستخدام tree
    help                عرض مربع حوار --help المدمج لماسح المنافذ المحدد

الخيارات:
  -h, --help            عرض رسالة المساعدة هذه والخروج
  -db DB                اسم قاعدة البيانات للعمل معها

Psst, hey buddy... Wanna do some organized p0r7 5c4nn1n6?

قائمة المهام

  • إضافة محلل projectdiscovery/naabu
  • إضافة محلل elddy/NimScan
  • إضافة محلل sx
  • إضافة محلل ZMap
  • تخزين أسماء المضيفين (إن وجدت) بجانب قيم IP الخاصة بهم
  • إضافة مفتاح fuff لأتمتة فحص أدلة الويب (تمت إضافة وحدة parse)
تنزيل الأداة

قم بتوفير أمر لماسح منافذ سريع لوحدة add لاكتشاف المنافذ المفتوحة في نطاق محدد.

⚠️ تحذير: يُرجى التأكد من أنك تفهم ما تفعله، لأن جميع أدوات مسح المنافذ تقريبًا يمكنها إلحاق الضرر بالنظام الذي يتم اختباره إذا تم استخدامها بشكل غير صحيح.

root@kitploit:~
# Nmap، العلم -v مطلوب دائمًا للتحليل الصحيح!
~$ das add nmap '-v -n -Pn -e eth0 --min-rate 1000 -T4 -iL hosts.txt -p1-65535 --open'
# Masscan
~$ das add masscan '--rate 1000 -iL hosts.txt -p1-65535 --open'
# RustScan
~$ das add rustscan '-b 1000 -t 2000 -u 5000 -a hosts.txt -r 1-65535 -g --no-config'
# Naabu
~$ das add naabu '-rate 1000 -iL hosts.txt -p - -silent -s s'
# NimScan
~$ das add nimscan '192.168.1.0/24 -vi -p:1-65535 -f:500'
# sx
~$ sudo sx arp -i eth0 192.168.1.0/24 --json | tee arp.cache
~$ das add sx 'tcp syn -a arp.cache -i eth0 --rate 1000/s 192.168.1.0/24 -p 445,3389'

عندما تبدأ الوحدة عملها، يتم إنشاء دليل ~/.das/db حيث سيتم وضع ملف قاعدة البيانات ونتائج المسح الخام عند انتهاء روتين الوحدة.

قم بتشغيل عمليات مسح Nmap المستهدفة باستخدام وحدة scan. يمكنك ضبط سطح المسح باستخدام الخيار -hosts أو -ports:

root@kitploit:~
# المسح حسب المضيفين
~$ das scan -hosts all -oA report1
~$ das scan -hosts 192.168.1.0/24,10.10.13.37 -oA report1
~$ das scan -hosts hosts.txt -oA report1
# المسح حسب المنافذ
~$ das scan -ports all -oA report2
~$ das scan -ports 22,80,443,445 -oA report2
~$ das scan -ports ports.txt -oA report2

لبدء Nmap في وقت واحد في عمليات متعددة، حدد المفتاح -parallel وقم بتعيين عدد العمال باستخدام الخيار -proc (إذا لم يتم تقديم قيمة، فسيتم افتراضيًا على عدد المعالجات في الجهاز):

root@kitploit:~
~$ das scan -hosts all -oA report -parallel [-proc 4]

يتم تحديد صيغة الإخراج باستخدام الخيارات -oX و -oN و -oG و -oA لصيغ XML+HTML، النص العادي، grepable، وجميع الصيغ على التوالي. عند اكتمال عمل الوحدة، يتم إنشاء دليل ~/.das/nmap_<DB_NAME> يحتوي على تقارير مسح Nmap الخام.

أيضًا، يمكنك فحص محتويات قاعدة البيانات باستخدام الخيار -show قبل إطلاق عمليات المسح بالفعل:

root@kitploit:~
~$ das scan -hosts all -show

لإنشاء تقرير بشكل مستقل عن وحدة scan، يجب استخدام وحدة report. سيبحث عن تقارير مسح Nmap الخام في دليل ~/.das/nmap_<DB_NAME> ويعالجها ويدمجها بناءً على الخيار -hosts أو -ports:

root@kitploit:~
# دمج المخرجات حسب المضيفين
~$ das report -hosts all -oA report1
~$ das report -hosts 192.168.1.0/24,10.10.13.37 -oA report1
~$ das report -hosts hosts.txt -oA report1
# دمج المخرجات حسب المنافذ
~$ das report -ports all -oA report2
~$ das report -ports 22,80,443,445 -oA report2
~$ das report -ports ports.txt -oA report2

📑 ملاحظة: ضع في اعتبارك أن وحدة report لا تبحث في قاعدة البيانات عند معالجة الخيارين -hosts أو -ports، بل تبحث عن تقارير Nmap الخام مباشرة في دليل ~/.das/nmap_<DB_NAME> بدلاً من ذلك؛ وهذا يعني أن قيمة الوسيطة -hosts 127.0.0.1 سيتم حلها بنجاح فقط إذا كانت الملفات ~/.das/nmap_<DB_NAME>/127-0-0-1.* موجودة، وقيمة الوسيطة -ports 80 سيتم حلها بنجاح فقط إذا كانت الملفات ~/.das/nmap_<DB_NAME>/port80.* موجودة.

example-4.png

  1. نتيجة لذلك، لدينا الآن تقرير واحد بجميع صيغ Nmap المألوفة (نص عادي، grepable، XML) بالإضافة إلى تقرير HTML جميل.

example-5.png