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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
detux — صندوق رمل لينكس متعدد المنصات | Kitploit
أدوات/GitHubGitHub/detuxsandbox/detux
التحليل الديناميكي (عزل)تحليل الشبكة الجنائيالتحقيق الجنائي الرقميتحليل البرمجيات الخبيثة
GitHubdetuxsandbox/detux

detux

صندوق رمل لينكس متعدد المنصات

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

الأكثر شعبية

عرض الكل →

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

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

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

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

ديتوكس: صندوق رمل لينكس متعدد المنصات

مقدمة:

ديتوكس هو صندوق رمل تم تطويره لإجراء تحليل حركة المرور للبرامج الضارة لنظام لينكس والتقاط IOCs من خلال ذلك. يتم استخدام مشرف QEMU لمحاكاة لينكس (ديبيان) لمختلف معماريات وحدة المعالجة المركزية.

المعالجات التالية مدعومة حالياً:

  • x86
  • x86-64
  • ARM
  • MIPS
  • MIPSEL

استخدم النسخة المباشرة الآن: http://detux.org

ما الجديد في هذا الإصدار؟

يحتوي هذا الإصدار من ديتوكس على السكريبت لتنفيذ ملف ثنائي/سكريبت لنظام لينكس في معمارية CPU محددة. لا تقلق إذا كنت لا تعرف المنصة، فالأمر موجود في السكريبت، تساعد حزمة Magic في اختيار معمارية CPU بطريقة آلية. x86 هي إصدار CPU الافتراضي، ويمكن تعديله إلى آخر مختلف في ملف الإعدادات.

يوفر هذا الإصدار تقرير التحليل بتنسيق DICT، والذي يمكن تخصيصه بسهولة لإدراجه في قواعد بيانات NOSQL.

تم توفير سكريبت مثال يوضح استخدام مكتبة الصندوق الرملي.

ماذا يوجد في التقرير؟

root@kitploit:~
- التحليل الثابت
    -- السلاسل الأساسية المستخرجة من الملف الثنائي
    -- معلومات ELF الناتجة عن أوامر readelf
    -- يمكن تعديل report.py لإضافة المزيد من الأوامر من طرف ثالث لتحليل الملف الثنائي وإضافة النتيجة إلى DICT.

- التحليل الديناميكي
    -- يتم تحليل ملفات pcap الملتقطة باستخدام DPKT لاستخراج IOCs والمعلومات القابلة للقراءة من الحزم.

المتطلبات

  • حزم النظام

    • python 2.7
    • qemu
    • pcaputils
    • sudo
    • libcap2-bin
    • bridge-utils
  • مكتبات بايثون (يفضل استخدام بيئة افتراضية)

    • pexpect
    • paramiko
    • python-magic

يرجى التأكد من تلبية المتطلبات المذكورة أعلاه قبل استخدام ديتوكس. قد تختلف بعض التبعيات من نظام تشغيل لآخر.

البنية

  • المضيف (يمكن أن يكون المضيف نفسه جهازًا افتراضيًا أو آلة مادية)
    • QEMU
    • dumpcap
    • DETUX Scripts

بنية الشبكة

root@kitploit:~
- NIC1: هذه الواجهة للوصول إلى المضيف
- NIC2: واجهة موصولة مع أجهزة QEMU الافتراضية للصندوق الرملي. يمكن توجيه حركة المرور من الواجهة إلى WHONIX أو REMNUX أو بوابة مخصصة لتصفية/السماح بالوصول إلى الإنترنت للأجهزة الافتراضية في الصندوق الرملي.

إعداد الجهاز الافتراضي:

تنزيل صور الأجهزة الافتراضية لنظام لينكس

شكر خاص لـ aurel الذي قام برفع صور أجهزة افتراضية مبنية مسبقًا لـ QEMU Debian لجميع معماريات CPU الممكنة. توجد صور الأجهزة الافتراضية على الرابط: https://people.debian.org/~aurel32/qemu/، ويحتوي نفس الرابط على أمثلة أوامر لاستدعاء صور الأجهزة الافتراضية.

يمكنك استخدام السكريبت التالي لتنزيل صور الأجهزة الافتراضية تلقائيًا إلى مجلد "qemu" الخاص بديتوكس.

root@kitploit:~
#x86
wget https://people.debian.org/~aurel32/qemu/i386/debian_wheezy_i386_standard.qcow2 -P qemu/x86/1/


#x86-64
wget https://people.debian.org/~aurel32/qemu/amd64/debian_wheezy_amd64_standard.qcow2 -P qemu/x86-64/1/

#arm
wget https://people.debian.org/~aurel32/qemu/armel/debian_wheezy_armel_standard.qcow2 -P qemu/arm/1/
wget https://people.debian.org/~aurel32/qemu/armel/initrd.img-3.2.0-4-versatile -P qemu/arm/1/
wget https://people.debian.org/~aurel32/qemu/armel/vmlinuz-3.2.0-4-versatile -P qemu/arm/1/

#mips
wget https://people.debian.org/~aurel32/qemu/mips/vmlinux-3.2.0-4-4kc-malta -P qemu/mips/1/
wget https://people.debian.org/~aurel32/qemu/mips/debian_wheezy_mips_standard.qcow2 -P qemu/mips/1/

#mipsel
wget https://people.debian.org/~aurel32/qemu/mipsel/vmlinux-3.2.0-4-4kc-malta -P qemu/mipsel/1/
wget https://people.debian.org/~aurel32/qemu/mipsel/debian_wheezy_mipsel_standard.qcow2 -P qemu/mipsel/1/
إعداد sudoers لتنفيذ qemu

يستخدم ديتوكس SSH للتواصل مع الأجهزة الافتراضية، وبالتالي، هذا مطلوب حاليًا لكي تتمكن الأجهزة الافتراضية من امتلاك قدرة الشبكات. بالنظر إلى أن الملفات الثنائية المدرجة في نفس المسار، يمكنك إضافة الأسطر التالية إلى /etc/sudoers (فقط إذا كنت مستخدمًا غير جذر):

root@kitploit:~
Cmnd_Alias  QEMU_CMD    =   /usr/bin/qemu-*, /sbin/ip, /sbin/ifconfig, /sbin/brctl
<your detux username here> ALL = (ALL) NOPASSWD: QEMU_CMD

قم بتغيير مسارات الملفات الثنائية إذا كانت مختلفة لديك.

إعداد الشبكة

أضف الإعدادات التالية إلى /etc/qemu-ifup، وقم بعمل نسخة احتياطية من الأصل إذا كان لديك واحد:

root@kitploit:~
#! /bin/sh
# Script to bring a network (tap) device for qemu up.
# The idea is to add the tap device to the same bridge
# as we have default routing to.

# in order to be able to find brctl
PATH=$PATH:/sbin:/usr/sbin
ip=$(which ip)
ifconfig=$(which ifconfig)

echo "Starting"  $1
if [ -n "$ip" ]; then
   ip link set "$1" up
else
   brctl=$(which brctl)
   if [ ! "$ip" -o ! "$brctl" ]; then
     echo "W: $0: not doing any bridge processing: neither ip nor brctl utility not found" >&2
     exit 0
   fi
   ifconfig "$1" 0.0.0.0 up
fi

switch=$(ip route ls | \
    awk '/^default / {
          for(i=0;i<NF;i++) { if ($i == "dev") { print $(i+1); next; } }
         }'
        )
    if [ -d /sys/class/net/br0/bridge/. ]; then
        if [ -n "$ip" ]; then
          ip link set "$1" master br0
        else
          brctl addif br0 "$1"
        fi
        exit    # exit with status of the previous command
    fi

echo "W: $0: no bridge for guest interface found" >&2

بالنظر إلى أن eth0 هي الواجهة التي تريد ربط أجهزتك الافتراضية بها، يمكنك إزالة إعدادات eth0 واستخدام الإعدادات التالية في /etc/network/interfaces:

root@kitploit:~
auto br0
iface br0 inet dhcp
  bridge_ports eth0
  bridge_maxwait 0

يمكنك أيضًا تحديد عنوان ثابت استخدمته لـ eth0.

إعداد أجهزتك الافتراضية

انتقل إلى المجلد الذي توجد به صور الأجهزة الافتراضية الخاصة بك لكل صورة من صور QEMU، على سبيل المثال لـ ARM هو:

root@kitploit:~
<your detux folder>/qemu/arm/1/

لكل صورة، اتبع تعليمات إقلاع الجهاز الافتراضي المعطاة في "https://people.debian.org/~aurel32/" لبدء تشغيل الجهاز الافتراضي. ومع ذلك، إذا كنت مستخدمًا غير جذر، فسيتعين عليك استخدام sudo.

أوامر إقلاع الأجهزة الافتراضية (استبدل بعنوان MAC الذي ترغب فيه):

root@kitploit:~
#x86
sudo qemu-system-i386 -hda qemu/x86/1/debian_wheezy_i386_standard.qcow2 -vnc 127.0.0.1:5901 -net nic,macaddr=<MACADDR> -net tap -monitor stdio


#x86-64
sudo qemu-system-x86_64 -hda qemu/x86-64/1/debian_wheezy_amd64_standard.qcow2 -vnc 127.0.0.1:5901 -net nic,macaddr=<MACADDR> -net tap -monitor stdio

#arm
sudo qemu-system-arm -M versatilepb -kernel qemu/arm/1/vmlinuz-3.2.0-4-versatile -initrd qemu/arm/1/initrd.img-3.2.0-4-versatile -hda qemu/arm/1/debian_wheezy_armel_standard.qcow2 -append "root=/dev/sda1" -vnc 127.0.0.1:5901 -net nic,macaddr=<MACADDR> -net tap -monitor stdio

#mips
sudo qemu-system-mips -M malta -kernel qemu/mips/1/vmlinux-3.2.0-4-4kc-malta -hda qemu/mips/1/debian_wheezy_mips_standard.qcow2 -append "root=/dev/sda1 console=tty0" -vnc 127.0.0.1:5901 -net nic,macaddr=<MACADDR> -net tap -monitor stdio

#mipsel
sudo qemu-system-mipsel -M malta -kernel qemu/mipsel/1/vmlinux-3.2.0-4-4kc-malta -hda qemu/mipsel/1/debian_wheezy_mipsel_standard.qcow2 -append "root=/dev/sda1 console=tty0" -vnc 127.0.0.1:5901 -net nic,macaddr=<MACADDR> -net tap -monitor stdio

يتطلب ديتوكس لقطة حالة جهاز افتراضي مهيأة مسبقًا مع عناوين IP وإعداد ssh.

خطوات إعداد اللقطة الخاصة بك:
  • اختر صورة جهاز افتراضي غير مهيأة وابدأ تشغيلها باستخدام الأمر المذكور أعلاه في محطة طرفية.
  • قم بتوصيل شاشة الجهاز الافتراضي. قم بتوصيل عميل VNC إلى 127.0.0.1:5901 وانتظر حتى يكتمل إقلاع الجهاز الافتراضي.
  • سجل الدخول باستخدام بيانات الجذر الافتراضية (root/root).
  • قم بتكوين واجهة شبكة الجهاز الافتراضي بحيث تكون قابلة للوصول/ متاحة للمضيف.
  • قم بإعداد خادم SSH على الجهاز الافتراضي وأي إعدادات أخرى إذا لزم الأمر.
  • بمجرد التهيئة، قم بالإقلاع إلى حالة تشغيلية تقبل اتصال الشبكة.
  • عد إلى المحطة الطرفية مع تشغيل وحدة تحكم qemu، والتي يجب أن تبدو كالتالي:
root@kitploit:~
(qemu)
  • احفظ حالة الجهاز الافتراضي بكتابة أوامر qemu التالية في وحدة تحكم qemu:
root@kitploit:~
(qemu) savevm init
  • اخرج من وحدة تحكم QEMU:
root@kitploit:~
(qemu) q

-- كرر الخطوة 1 لجميع الأجهزة الافتراضية

إعداد أذونات الالتقاط

لكي يتمكن المستخدم غير الجذر من التقاط الحزم، يحتاج Dumpcap إلى صلاحيات الالتقاط. (https://wiki.wireshark.org/CaptureSetup/CapturePrivileges).

قد يمكنك الأمر التالي من ذلك:

root@kitploit:~
sudo groupadd -g wireshark
sudo usermod -a -G wireshark <your user name>
sudo chmod 750 /usr/bin/dumpcap
sudo setcap cap_net_raw,cap_net_admin=eip /usr/bin/dumpcap

ضع في اعتبارك أنه قد يتعين عليك تسجيل الخروج والدخول مرة أخرى أو إعادة تشغيل المضيف لتطبيق الأذونات. إذا كنت غير قادر على التقاط الحزم أو واجهت أخطاء متعلقة بـ dumpcap، فأنت بحاجة إلى التحقق من تعيين أذونات المستخدمين لديك بشكل صحيح وأن مسار dumpcap صحيح.

إعدادات ديتوكس

يحتاج ملف detux.cfg الموجود في الدليل الرئيسي إلى التهيئة. يجب تكوين كل قسم جهاز افتراضي مع معلمات الشبكة الصحيحة وبيانات اعتماد SSH. يمكنك اختيار مستخدم جذر/غير جذر حسب حاجتك.

تشغيل ديتوكس

يمكن استخدام مكتبة ديتوكس الموجودة في دليل "core" لتناسب حاجتك من التحليل. يحتوي المستودع على "detux.py" الذي يقوم بتحليل الملف الثنائي المعطى وحفظ pcap في مجلد pcap وكتابة مخرجات JSON إلى مسار ملف محدد.

الاستخدام

root@kitploit:~
usage: detux.py [-h] --sample SAMPLE [--cpu {x86,x86-64,arm,mips,mipsel}]
                [--int {python,perl,sh,bash}] --report REPORT

optional arguments:
  -h, --help            show this help message and exit
  --sample SAMPLE       Sample path (default: None)
  --cpu {x86,x86-64,arm,mips,mipsel}
                        CPU type (default: auto)
  --int {python,perl,sh,bash}
                        Architecture type (default: None)
  --report REPORT       JSON report output path (default: None)

مثال:

root@kitploit:~
python detux.py --sample test_script/example_binary1 --report reports/example_report1.json

المساهمون:

  • فيكاس أيينجار - العقل ( dudeintheshell ، البريد الإلكتروني: [email protected] )
  • مسلم كوسر - أعمال فكرية تقنية ([email protected])
  • راهول بينجفي - مساعدة في تحليل pcap (@c0dist، تويتر)
  • أمي جات - مساعدة في تحليل pcap (ameygat، [email protected] )

شكر

شكر لـ Aurélien Jarno (@aurel32) (https://www.aurel32.net/) على صور الأجهزة الافتراضية المبنية مسبقًا.

تنزيل الأداة