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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/zeze-zeze/ioctlance
التحليل الثابتالتحليل الديناميكي (عزل)أطر الاستغلالتحليل الثغرات الأمنيةالهندسة العكسيةالاختبار العشوائيتحليل الملفات الثنائية
GitHubzeze-zeze/ioctlance

ioctlance

أداة تُستخدم لاصطياد الثغرات الأمنية في برامج تشغيل WDM بنية x64

عرض المستودع
46955منذ 2 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

IOCTLance

الوصف

تم تقديمه في CODE BLUE 2023، ويقدم هذا المشروع بعنوان Enhanced Vulnerability Hunting in WDM Drivers with Symbolic Execution and Taint Analysis أداة IOCTLance التي تعزز قدرتها على اكتشاف أنواع مختلفة من الثغرات الأمنية في برامج تشغيل نموذج تشغيل Windows (WDM). في تقييم شامل شمل 104 برنامج تشغيل WDM معروف الثغرات و328 برنامجًا غير معروف، كشفت IOCTLance بنجاح عن 117 ثغرة أمنية غير مكتشفة سابقًا داخل 26 برنامج تشغيل متميز. ونتيجة لذلك، تم الإبلاغ عن 41 CVE، تشمل 25 حالة من رفض الخدمة، و5 حالات من عدم كفاية التحكم في الوصول، و11 مثالًا على رفع الامتيازات.

الميزات

أنواع الثغرات المستهدفة

  • تعيين الذاكرة الفعلية
  • مقبض عملية يمكن التحكم به
  • فيض المخزن المؤقت
  • إلغاء الإشارة لمؤشر فارغ
  • قراءة/كتابة عنوان قابل للتحكم
  • تنفيذ شيفرة تعسفية
  • wrmsr تعسفي
  • out تعسفي
  • عملية ملف خطيرة
  • إنهاء عملية تعسفي
  • إغلاق مقبض قابل للتحكم في سياق عملية مختلفة

التعديلات الاختيارية

  • حد الطول
  • حد الحلقة
  • مهلة إجمالية
  • مهلة IoControlCode
  • التكرار
  • تمثيل قسم البيانات برموز

البناء

دوكر (موصى به)

root@kitploit:~
docker build .
docker run -it <IOCTLance IMAGE ID> bash

محلي

root@kitploit:~
dpkg --add-architecture i386
apt-get update
apt-get install git build-essential python3 python3-pip python3-dev htop vim sudo \
                openjdk-8-jdk zlib1g:i386 libtinfo5:i386 libstdc++6:i386 libgcc1:i386 \
                libc6:i386 libssl-dev nasm binutils-multiarch qtdeclarative5-dev libpixman-1-dev \
                libglib2.0-dev debian-archive-keyring debootstrap libtool libreadline-dev cmake \
                libffi-dev libxslt1-dev libxml2-dev

pip install angr==9.2.18 ipython==8.5.0 ipdb==0.13.9

التحليل

root@kitploit:~
# python3 analysis/ioctlance.py -h
usage: ioctlance.py [-h] [-i IOCTLCODE] [-T TOTAL_TIMEOUT] [-t TIMEOUT] [-l LENGTH] [-b BOUND]
                    [-g GLOBAL_VAR] [-a ADDRESS] [-e EXCLUDE] [-o] [-r] [-c] [-d]
                    path

positional arguments:
  path                  dir (including subdirectory) or file path to the driver(s) to analyze

optional arguments:
  -h, --help            show this help message and exit
  -i IOCTLCODE, --ioctlcode IOCTLCODE
                        analyze specified IoControlCode (e.g. 22201c)
  -T TOTAL_TIMEOUT, --total_timeout TOTAL_TIMEOUT
                        total timeout for the whole symbolic execution (default 1200, 0 to unlimited)
  -t TIMEOUT, --timeout TIMEOUT
                        timeout for analyze each IoControlCode (default 40, 0 to unlimited)
  -l LENGTH, --length LENGTH
                        the limit of number of instructions for technique LengthLimiter (default 0, 0
                        to unlimited)
  -b BOUND, --bound BOUND
                        the bound for technique LoopSeer (default 0, 0 to unlimited)
  -g GLOBAL_VAR, --global_var GLOBAL_VAR
                        symbolize how many bytes in .data section (default 0 hex)
  -a ADDRESS, --address ADDRESS
                        address of ioctl handler to directly start hunting with blank state (e.g.
                        140005c20)
  -e EXCLUDE, --exclude EXCLUDE
                        exclude function address split with , (e.g. 140005c20,140006c20)
  -o, --overwrite       overwrite x.sys.json if x.sys has been analyzed (default False)
  -r, --recursion       do not kill state if detecting recursion (default False)
  -c, --complete        get complete base state (default False)
  -d, --debug           print debug info while analyzing (default False)

التقييم

root@kitploit:~
# python3 evaluation/statistics.py -h
usage: statistics.py [-h] [-w] path

positional arguments:
  path        target dir or file path

optional arguments:
  -h, --help  show this help message and exit
  -w, --wdm   copy the wdm drivers into <path>/wdm

الاختبار

  1. قم بتجميع أمثلة الاختبار في test لإنشاء ملفات برامج تشغيل الاختبار.
  2. قم بتشغيل IOCTLance على ملفات برامج التشغيل.

المراجع

  • ucsb-seclab/popkorn-artifact
  • eclypsium/Screwed-Drivers
  • koutto/ioctlbf
  • Living Off The Land Drivers
تنزيل الأداة