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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
yaralyzer — افحص بصريًا وافرض فك تشفير مطابقات YARA و regex الموجودة في كل من البيانات الثنائية والنصية باستخدام الألوان. الكثير من الألوان. | Kitploit
أدوات/GitHubGitHub/michelcrypt4d4mus/yaralyzer
الهندسة العكسيةالتحقيق الجنائي الرقميتحليل البرمجيات الخبيثةتحليل الملفات الثنائية
GitHubmichelcrypt4d4mus/yaralyzer

yaralyzer

افحص بصريًا وافرض فك تشفير مطابقات YARA و regex الموجودة في كل من البيانات الثنائية والنصية باستخدام الألوان. الكثير من الألوان.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

GithubRelease Release Downloads Tests Python Version

THE YARALYZER

مطابقة YARA

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

بداية سريعة

root@kitploit:~
pipx install yaralyzer

# المسح باستخدام تعريفات YARA في ملف:
yaralyze --yara-rules /secret/vault/sigmunds_malware_rules.yara lacan_buys_the_dip.pdf

# المسح باستخدام تعبير نمطي عشوائي:
yaralyze --regex-pattern 'good and evil.*of\s+\w+byte' --regex-modifier wide the_crypto_archipelago.exe

# المسح باستخدام نمط سداسي عشوائي من YARA:
yaralyze --hex-pattern 'd0 93 d0 a3 d0 [-] 9b d0 90 d0 93' one_day_in_the_life_of_ivan_cryptosovich.bin

ماذا يفعل

  1. رؤية البايتات الفعلية التي تطابقها قواعد YARA الخاصة بك. لم يعد هناك حاجة للتنقيب بنسخ ولصق مواضع البداية التي يُبلغ عنها YARA في محرر سداسي عشري مفضل لديك. يعرض كلاً من البايتات المتطابقة مع YARA بالإضافة إلى عدد قابل للتكوين من البايتات قبل وبعد كل تطابق في التمثيل السداسي العشري وتمثيل سلسلة Python "الخام".
  2. افعل الشيء نفسه لأنماط البايت والتعبيرات النمطية دون كتابة ملف YARA. إذا كنت كسولًا جدًا لكتابة ملف YARA ولكنك تحاول تحديد، على سبيل المثال، ما إذا كان هناك تعبير نمطي مخفي في مكان ما في الملف، يمكنك المسح بحثًا عن النمط '/.+/' وستحصل فورًا على نافذة على جميع البايتات في الملف التي تقع بين الشرطتين المائلتين. نفس القصة للاقتباسات، BOMs، إلخ. أي تعبير نمطي يمكن لـ YARA التعامل معه مدعوم، لذا السماء هي الحد الأقصى.
  3. كشف الترميزات المحتملة لكل مجموعة من البايتات المتطابقة. chardet هي مكتبة متطورة لتخمين ترميزات الأحرف ويتم استخدامها هنا.
  4. عرض نتيجة فرض ترميزات أحرف مختلفة على المناطق المتطابقة. سيتم محاولة فرض العديد من ترميزات الأحرف الافتراضية إجباريًا في المنطقة المحيطة بالتطابق. سيتم أيضًا استخدام chardet لمعرفة ما إذا كانت البايتات تناسب نمط أي ترميز معروف. إذا كانت ثقة chardet كافية (قابلة للتكوين)، فسيتم عرض محاولة فك تشفير البايتات باستخدام هذا الترميز.
  5. تصدير المناطق المتطابقة/فك التشفير إلى ملفات SVG وHTML ونص ملون. أظهر فن ASCII الخاص بك.

لماذا يفعل ذلك

تم استخراج وظيفة Yaralyzer من Pdfalyzer عندما أصبح من الواضح أن تصور وفك تشفير تطابقات الأنماط في الملفات الثنائية له فائدة أكبر من مجرد استخدامه في أداة تحليل PDF.

YARA، لمن لا يعرفون1، يُسوق كأداة تحليل/تنبيه للبرامج الضارة ولكنه في الواقع أكثر وأقل من ذلك بكثير. طريقة واحدة للتفكير فيه هي أن YARA هو محرك مطابقة تعبيرات نمطية معزز. يمكنه تحديد موقع تطابقات التعبيرات النمطية في الملفات الثنائية مثل أي محرك تعبيرات نمطية ولكنه يمكنه أيضًا القيام بأشياء أكثر غرابة مثل دمج التعبيرات النمطية في مجموعات منطقية، ومقارنة التعبيرات النمطية ضد جميع النسخ الـ 256 المعالجة بـ XOR من الملف الثنائي، والتحقق من ترميزات base64 وغيرها من ترميزات النمط، وأكثر من ذلك. وربما الأهم من ذلك كله أن YARA يوفر تنسيقًا نصيًا قياسيًا لمشاركة التعبيرات النمطية "المعززة" مع العالم. كل هذه الميزات مفيدة بشكل خاص عند تحليل أو هندسة عكسية للبرامج الضارة، التي يميل مؤلفوها إلى استثمار الكثير من الوقت في جعل الأشياء صعبة الاكتشاف.

لكن... هذا أيضًا كل ما يفعله YARA. كل شيء آخر يعود للمستخدم. YARA هو مجرد محرك مطابقة، وإذا كنت لا تعرف ما الذي تطابقه (أو حتى ما هو ترميز الأحرف الذي يمكنك المطابقة به)، فإنه لا يأخذك بعيدًا جدًا. وجدت نفسي محبطًا بعض الشيء عند محاولة استخدام YARA للنظر في جميع تطابقات عدد قليل من الأنماط الحرجة:

  1. البايتات بين علامتي اقتباس مهربة (\".+\" و \'.+\')
  2. البايتات بين الشرطتين المائلتين (/.+/). الشرطتان المائلتان تحددان تعبيرًا نمطيًا في العديد من التطبيقات، وكنت أحاول معرفة ما إذا كانت أي من البايتات المطابقة لهذا النمط هي فعلًا تعبيرات نمطية.

YARA يخبرك فقط بموضع البايت والسلسلة المتطابقة، لكنه لا يستطيع إخبارك ما إذا كانت هذه البايتات هي UTF-8 أو UTF-16 أو Latin-1 إلخ (أو لا شيء مما سبق). كما وجدت نفسي أرغب في فهم ما يحدث في المنطقة المحيطة بالبايتات المتطابقة وليس فقط في البايتات المتطابقة. بمعنى آخر، أردت تحديد نطاق البايتات التي تسبق وتلي مباشرة أي شيء تمت مطابقته.

ظهر The Yaralyzer، الذي يتيح لك المسح السريع للمناطق المحيطة بالتطابقات مع عرض كيف ستبدو هذه المناطق إذا تم فرض ترميزات أحرف مختلفة عليها.

The Yaralyzer ليس أداة لعكس هندسة البرامج الضارة. لا يمكنه فعل ما تفعله أدوات مثل CyberChef ولا يحاول ذلك. إنه يهدف أكثر إلى إعطائك نظرة عامة بصرية سريعة على المناطق المشبوهة في الملف الثنائي حتى تتمكن من التركيز على المناطق التي قد ترغب في فحصها بأداة أكثر جدية.

التثبيت

قم بتثبيته باستخدام pipx أو pip3. pipx هو حل أفضل قليلاً لأنه يضمن أن أي حزم مثبتة به ستكون معزولة عن بقية بيئة Python المحلية. بالطبع إذا لم يكن لديك بيئة Python محلية، فهذه نقطة غير جوهرية ويمكنك التثبيت بحرية باستخدام pip/pip3.

root@kitploit:~
pipx install yaralyzer

الاستخدام

قم بتشغيل yaralyze -h لرؤية خيارات سطر الأوامر (لقطة الشاشة أدناه).

لمعلومات حول تصدير صور SVG، HTML، إلخ، راجع مثال على الإخراج.

الإعداد

إذا وضعت ملفًا اسمه .yaralyzer في دليل منزلك أو دليل العمل الحالي، فسيتم إضافة متغيرات البيئة المحددة في ملف .yaralyzer إلى البيئة في كل مرة يتم فيها استدعاء yaralyzer. يوفر هذا آلية لتكوين خيارات سطر الأوامر المختلفة بشكل دائم حتى تتمكن من تجنب كتابتها مرارًا وتكرارًا. راجع التعليقات في ملف المثال .yaralyzer.example لمزيد من المعلومات.

سيتم تحميل ملف .yaralyzer واحد فقط، وسيكون لملف دليل العمل .yaralyzer الأولوية على ملف الدليل المنزلي.

كمكتبة

Yaralyzer هو الفئة الرئيسية. يمكن العثور على الوثائق المُنشأة تلقائيًا لفئات وطرق Yaralyzer المختلفة هنا. لديها مجموعة متنوعة من المنشئات البديلة تدعم:

  1. قواعد YARA المجمعة مسبقًا
  2. إنشاء قاعدة YARA من سلسلة نصية
  3. تحميل قواعد YARA من ملفات
  4. تحميل قواعد YARA من جميع ملفات .yara في دليل
  5. مسح bytes
  6. مسح ملف

إذا كنت ترغب في التكرار عبر كائنات BytesMatch (مثل كائن re.Match لتطابق YARA) و BytesDecoder (يتتبع إحصائيات محاولة فك التشفير) المستخدمة بواسطة The Yaralyzer، يمكنك القيام بذلك على النحو التالي:

root@kitploit:~
from yaralyzer.yaralyzer import Yaralyzer

yaralyzer = Yaralyzer.for_rules_files(['/secret/rule.yara'], 'lacan_buys_the_dip.pdf')

for bytes_match, bytes_decoder in yaralyzer.match_iterator():
    do_stuff()

استكشاف الأخطاء وإصلاحها

إذا تلقيت yara.Error مع رمز خطأ رقمي، يمكنك التحقق من معنى هذا الرمز هنا.

مثال على الإخراج

يمكن لـ Yaralyzer تصدير التصورات إلى HTML، ونص ANSI ملون، وصور متجهة PNG و SVG باستخدام وظيفة تصدير الملفات المضمنة مع Rich بالإضافة إلى تنسيق JSON نص عادي (محدود إلى حد ما).

إذا كنت ترغب في تصدير صور .png مثل تلك الموجودة أدناه مباشرة من Yaralyzer، فستحتاج إلى القيام بأحد هذه الأشياء:

  1. تثبيت Inkscape (يمكن لمستخدمي homebrew تثبيته باستخدام brew install --cask inkscape)
  2. طلب الامتداد img عند تثبيت Yaralyzer والذي سيقوم بتثبيت cairosvg: pipx install yaralyzer[img]. ستحتاج أيضًا إلى تثبيت ملف تنفيذ CairoSVG يدويًا بطرق مختلفة حسب نظام التشغيل لديك، راجع وثائق CairoSVG للتفاصيل.

في تجربتنا، يعمل كل من Inkscape وCairoSVG، رغم أننا رأينا بعض العيوب في الإخراج المقدم باستخدام CairoSVG على صور SVG التي أنتجها Yaralyzer، لذا فإن Inkscape هو الخيار الموصى به.

نتيجة تطابق YARA الخام:

عرض السداسي العشري، سلسلة Python الخام، ومحاولات فك التشفير المختلفة لكل من التطابق والبايتات قبل وبعد التطابق (قابلة للتكوين):

ميزة إضافية: رؤية ما يعتقده chardet.detect() حول احتمالية أن تكون بايتاتك في ترميز/لغة معينة:

المساهمة

المساهمات أكثر من مرحب بها؛ راجع CONTRIBUTING.md للحصول على تفاصيل حول إعداد البيئة، تشغيل مجموعة الاختبارات، إلخ. هناك أيضًا قائمة مهام يجب إنجازها هناك.

Footnotes

  1. كما كنت حتى وقت قريب. ↩

تنزيل الأداة