Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
iocextract — مستخرج مؤشرات الاختراق (IOC) المنزوعة الأنياب. | Kitploit
أدوات/GitHubGitHub/pedramamini/iocextract
إدارة مؤشرات الاختراق (IOC)الاستخبارات مفتوحة المصدر (OSINT)موجزات ومجمعات التهديداتالتحقيق الجنائي الرقميجمع المعلوماتتحليل البرمجيات الخبيثةالتحاليل الرقمية الجنائيةاستخبارات التهديدات
GitHubpedramamini/iocextract

iocextract

مستخرج مؤشرات الاختراق (IOC) المنزوعة الأنياب.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

iocextract

Developed by InQuest Build Status Documentation Status PyPI Version

مؤشر الاختراق (IOC) مستخرج لبعض القطع الأثرية الأكثر شيوعًا.

جدول المحتويات

  • نظرة عامة
    • المشكلة
    • الحل الذي نقدمه
    • حالة استخدام نموذجية
  • التثبيت
  • الاستخدام
    • المكتبة
    • واجهة سطر الأوامر
  • معلومات مفيدة
    • الأسئلة الشائعة
    • مزيد من التفاصيل
    • تعبير عادي مخصص
    • مشاريع ذات صلة
    • المساهمة

نظرة عامة

حزمة iocextract هي مكتبة وواجهة سطر أوامر (CLI) لاستخراج عناوين URL وعناوين IP وتجمعات MD5/SHA وعناوين البريد الإلكتروني وقواعد YARA من نصوص. تتيح لك استخراج مؤشرات الاختراق المشفرة و"المعرّضة" (defanged) مع خيار فك تشفيرها أو إعادة تنسيقها (refang).

المشكلة

من الممارسات الشائعة لمحللي البرامج الضارة أو برامج نقاط النهاية "تعريض" مؤشرات الاختراق مثل عناوين URL وIP، لمنع التعرض العرضي لمحتوى ضار حي. القدرة على استخراج وتجميع هذه المؤشرات غالبًا ما تكون ذات قيمة للمحللين. للأسف، غالبًا ما تمر أدوات "استخراج مؤشرات الاختراق" الحالية دون التعرف عليها، لأنها لا تُلتقط بواسطة التعبير العادي القياسي.

على سبيل المثال، تقنية التعريض البسيطة المتمثلة في وضع أقواس حول النقاط:

127[.]0[.]0[.]1

الأدوات الحالية التي تستخدم تعبيرًا عاديًا بسيطًا لعناوين IP ستتجاهل هذا المؤشر بالكامل.

الحل الذي نقدمه

من خلال الجمع بين تعبير عادي مصمم خصيصًا ومعالجة لاحقة مخصصة، نتمكن من اكتشاف مؤشرات الاختراق "المعرّضة" وإزالة تشويشها. هذا يوفر الوقت والجهد للمحلل، الذي قد يضطر إلى العثور يدويًا على المؤشرات وتحويلها إلى تنسيق قابل للقراءة آليًا.

حالة استخدام نموذجية

ينشر العديد من مستخدمي Twitter عناوين C2 أو معلومات مؤشرات اختراق قيمة أخرى بعناوين URL معرّضة. على سبيل المثال، هذه التغريدة من @InQuest:

Recommended reading and great work from @unit42_intel:
https://researchcenter.paloaltonetworks.com/2018/02/unit42-sofacy-attacks-multiple-government-entities/ ...
InQuest customers have had detection for threats delivered from hotfixmsupload[.]com
since 6/3/2017 and cdnverify[.]net since 2/1/18.

إذا قمنا بتشغيل هذا عبر المستخرج، يمكننا بسهولة سحب عناوين URL:

https://researchcenter.paloaltonetworks.com/2018/02/unit42-sofacy-attacks-multiple-government-entities/
hotfixmsupload[.]com
cdnverify[.]net

تمرير refang=True في وقت الاستخراج سيزيل التشويش، ولكن نظرًا لأن هذه مؤشرات اختراق حقيقية، دعنا نتركها معرّضة في توثيقنا.

التثبيت

قد تحتاج إلى تثبيت رؤوس تطوير Python لتثبيت اعتماد regex. على أنظمة Ubuntu/Debian، جرب:

sudo apt-get install python-dev

ثم قم بتثبيت iocextract من pip:

pip install iocextract

إذا واجهت مشاكل في التثبيت على Windows، جرب تثبيت regex مباشرة عن طريق تنزيل العجلة المناسبة من PyPI والتثبيت عبر pip:

pip install regex-2018.06.21-cp27-none-win_amd64.whl

الاستخدام

المكتبة

جرب استخراج بعض عناوين URL المعرّضة:

import iocextract

content = \
"""
I really love example[.]com!
All the bots are on hxxp://example.com/bad/url these days.
C2: tcp://example[.]com:8989/bad
"""

for url in iocextract.extract_urls(content):
    print(url)

    # Output

    # hxxp://example.com/bad/url
    # tcp://example[.]com:8989/bad
    # example[.]com
    # tcp://example[.]com:8989/bad

ملاحظة: قد تظهر بعض عناوين URL مرتين إذا التقطتها تعابير عادية متعددة.

إذا أردت، يمكنك أيضًا "إعادة التنسيق" (refang)، أو إزالة طرق التشويش الشائعة من مؤشرات الاختراق:

import iocextract

for url in iocextract.extract_urls(content, refang=True):
    print(url)

    # Output

    # http://example.com/bad/url
    # http://example.com:8989/bad
    # http://example.com
    # http://example.com:8989/bad

إذا كنت لا تريد تعريض مؤشرات الاختراق المستخرجة على الإطلاق أثناء الاستخراج، يمكنك تعطيل ذلك أيضًا:

import iocextract

content = \
"""
http://example.com/bad/url
http://example.com:8989/bad
http://example.com
http://example.com:8989/bad
"""

for url in iocextract.extract_urls(content, defang=False):
    print(url)

    # Output

    # http://example.com/bad/url
    # http://example.com:8989/bad
    # http://example.com
    # http://example.com:8989/bad

جميع دوال extract_* في هذه المكتبة تُعيد مكررات (iterators)، وليس قوائم. فائدة هذا السلوك هي أن iocextract يمكنه معالجة مدخلات كبيرة جدًا، بتكلفة منخفضة جدًا. ومع ذلك، إذا كنت بحاجة لسبب ما للتكرار على المؤشرات أكثر من مرة، فسيتعين عليك حفظ النتائج كقائمة:

import iocextract

content = \
"""
I really love example[.]com!
All the bots are on hxxp://example.com/bad/url these days.
C2: tcp://example[.]com:8989/bad
"""

print(list(iocextract.extract_urls(content)))
# ['hxxp://example.com/bad/url', 'tcp://example[.]com:8989/bad', 'example[.]com', 'tcp://example[.]com:8989/bad']

واجهة سطر الأوامر

أداة سطر أوامر مضمنة أيضًا:

$ iocextract -h
    usage: iocextract [-h] [--input INPUT] [--output OUTPUT] [--extract-emails]
                  [--extract-ips] [--extract-ipv4s] [--extract-ipv6s]
                  [--extract-urls] [--extract-yara-rules] [--extract-hashes]
                  [--custom-regex REGEX_FILE] [--refang] [--strip-urls]
                  [--wide]

    Advanced Indicator of Compromise (IOC) extractor. If no arguments are
    specified, the default behavior is to extract all IOCs.

    optional arguments:
      -h, --help            show this help message and exit
      --input INPUT         default: stdin
      --output OUTPUT       default: stdout
      --extract-emails
      --extract-ips
      --extract-ipv4s
      --extract-ipv6s
      --extract-urls
      --extract-yara-rules
      --extract-hashes
      --custom-regex REGEX_FILE file with custom regex strings, one per line, with one capture group each
      --refang              default: no
      --strip-urls          remove possible garbage from the end of urls. default: no
      --wide                preprocess input to allow wide-encoded character matches. default: no

ملاحظة: فقط عناوين URL والبريد الإلكتروني وعناوين IPv4 يمكن "إعادة تنسيقها".

معلومات مفيدة

الأسئلة الشائعة

هل تبحث عن...

س. استخراج مؤشرات اختراق ربما معرّضة من نص عادي، مثل محتويات التغريدات أو منشورات المدونات؟

ج. نعم! هذا بالضبط ما صُمم iocextract من أجله، وهو حيث يؤدي أفضل أداء. هل تريد الذهاب خطوة أبعد وأتمتة الاستخراج والتخزين؟ تحقق من ThreatIngestor.

س. استخراج عناوين URL التي تم ترميزها بصيغة hex أو base64؟

ج. نعم، لكن CLI قد لا يعطيك أفضل النتائج. جرب كتابة نص Python واستدعاء iocextract.extract_encoded_urls مباشرة.

ملاحظة: على الأرجح ستحصل على قمامة إضافية في نهاية عناوين URL.

س. استخراج مؤشرات اختراق لم يتم تعريضها، من HTML/XML/RTF؟

ج. ربما، لكن يجب أن تفكر في استخدام علامة --strip-urls في CLI (أو معامل strip=True في المكتبة)، وقد لا تزال تحصل على بعض القمامة الإضافية في مخرجاتك. إذا كنت تستخرج من HTML، فكر في استخدام شيء مثل Beautiful Soup لعزل محتوى النص أولاً، ثم تمريره إلى iocextract، مثل هذا.

تنزيل الأداة