Skip to content
تم إنشاء هذه الصفحة وترجمتها بمساعدة الذكاء الاصطناعي. إذا لاحظت أي أخطاء، لا تتردد في المساهمة في تحسينها. تعديل على GitHub

أنواع الملفات المدعومة

يحدد PRX-SD أنواع الملفات باستخدام كشف الرقم السحري (فحص البايتات الأولى من الملف) بدلاً من الاعتماد على امتدادات الملفات. هذا يضمن التعرف الدقيق حتى عند إعادة تسمية الملفات أو غياب الامتدادات.

مصفوفة نوع الملفات

يعرض الجدول التالي جميع أنواع الملفات المدعومة وطبقات الكشف التي تنطبق على كل منها:

نوع الملفالامتداداتالبايتات السحريةالهاشYARAالاستدلالياتالتكرار في الأرشيف
PE (ويندوز).exe، .dll، .sys، .scr، .ocx4D 5A (MZ)نعمنعمنعم--
ELF (لينكس).so، .o، (بدون امتداد)7F 45 4C 46نعمنعمنعم--
Mach-O (ماك أو إس).dylib، .bundle، (بدون امتداد)FE ED FA CE/CF أو CE FA ED FE/CFنعمنعمنعم--
Universal Binary(بدون امتداد)CA FE BA BEنعمنعمنعم--
PDF.pdf25 50 44 46 (%PDF)نعمنعمنعم--
Office (OLE).doc، .xls، .pptD0 CF 11 E0نعمنعمنعم--
Office (OOXML).docx، .xlsx، .pptx50 4B 03 04 (ZIP) + [Content_Types].xmlنعمنعمنعممُستخرَج
ZIP.zip50 4B 03 04نعمنعممحدودمتكرر
7-Zip.7z37 7A BC AF 27 1Cنعمنعممحدودمتكرر
tar.tar75 73 74 61 72 في الإزاحة 257نعمنعممحدودمتكرر
gzip.gz، .tgz1F 8Bنعمنعممحدودمتكرر
bzip2.bz242 5A 68 (BZh)نعمنعممحدودمتكرر
xz.xzFD 37 7A 58 5A 00نعمنعممحدودمتكرر
RAR.rar52 61 72 21 (Rar!)نعمنعممحدودمتكرر
CAB.cab4D 53 43 46 (MSCF)نعمنعممحدودمتكرر
ISO.iso43 44 30 30 31 في الإزاحة 32769نعمنعممحدودمتكرر
سكريبت Shell.sh، .bash23 21 (#!)نعمنعمنمط--
Python.py، .pycنص / 42 0D 0D 0Aنعمنعمنمط--
JavaScript.js، .mjsكشف نصينعمنعمنمط--
PowerShell.ps1، .psm1كشف نصينعمنعمنمط--
VBScript.vbs، .vbeكشف نصينعمنعمنمط--
Batch.bat، .cmdكشف نصينعمنعمنمط--
Java.class، .jarCA FE BA BE / ZIPنعمنعممحدود.jar متكرر
WebAssembly.wasm00 61 73 6Dنعمنعممحدود--
DEX (أندرويد).dex64 65 78 0A (dex\n)نعمنعممحدود--
APK (أندرويد).apkZIP + AndroidManifest.xmlنعمنعممحدودمتكرر

وسيلة إيضاح طبقة الكشف

الطبقةالمعنى
الهاشهاش SHA-256/MD5 يُفحص مقابل قاعدة بيانات التوقيعات
YARAمجموعة قواعد YARA الكاملة مُطبَّقة على محتويات الملف
الاستدلاليات: نعمتحليل استدلالي كامل خاص بنوع الملف (انظر الاستدلاليات)
الاستدلاليات: محدودفحوصات إنتروبيا وهيكل أساسية فقط
الاستدلاليات: نمطمطابقة أنماط نصية للأوامر المشبوهة والتشويش
التكرار في الأرشيفتُستخرج المحتويات ويُفحص كل ملف بشكل فردي

كشف الرقم السحري

يقرأ PRX-SD أول 8192 بايت من كل ملف لتحديد نوعه. هذا النهج أكثر موثوقية من الكشف المستند إلى الامتداد:

الملف: invoice.pdf.exe
الامتداد يقترح: PDF
البايتات السحرية: 4D 5A → ملف PE قابل للتنفيذ
PRX-SD يحدد: PE (صحيح)

عدم تطابق الامتداد

عندما لا يتطابق امتداد الملف مع الرقم السحري المكتشف، يضيف PRX-SD ملاحظة إلى تقرير الفحص. عدم تطابق الامتداد أسلوب شائع للهندسة الاجتماعية (مثل photo.jpg.exe).

أولوية كشف الرقم السحري

عندما يمكن لتوقيعات متعددة أن تتطابق (مثل رقم سحري ZIP لكل من .zip و.docx)، يستخدم PRX-SD فحصاً أعمق:

  1. قراءة البايتات السحرية في الإزاحة 0
  2. إذا كانت غامضة (مثل ZIP)، فحص الهيكل الداخلي
  3. لتنسيقات مستندة إلى ZIP، تحقق من [Content_Types].xml (OOXML) وMETA-INF/MANIFEST.MF (JAR) وAndroidManifest.xml (APK)
  4. الرجوع إلى النوع العام للحاوية

الفحص المتكرر للأرشيف

عندما يواجه PRX-SD أرشيفاً (ZIP أو 7z أو tar أو gzip أو RAR أو غيره)، يستخرج المحتويات إلى دليل مؤقت ويفحص كل ملف بشكل فردي من خلال خط أنابيب الكشف الكامل.

عمق التكرار

الإعدادالافتراضيالوصف
max_archive_depth5الحد الأقصى لمستويات التداخل للأرشيفات داخل الأرشيفات
max_archive_files10,000الحد الأقصى للملفات المستخرجة من أرشيف واحد
max_archive_size_mb500الحد الأقصى للحجم الإجمالي المستخرج قبل التوقف

هذه الحدود تمنع استنزاف الموارد من قنابل zip والأرشيفات المتداخلة بعمق.

toml
# ~/.config/prx-sd/config.toml
[scanning]
max_archive_depth = 5
max_archive_files = 10000
max_archive_size_mb = 500

قنابل Zip

يكشف PRX-SD قنابل zip (الأرشيفات ذات نسب الضغط المتطرفة) ويوقف الاستخراج قبل استهلاك مساحة قرص أو ذاكرة مفرطة. يُبلَّغ عن كشف قنبلة zip بـ SUSPICIOUS في نتائج الفحص.

الأرشيفات المحمية بكلمة مرور

لا يمكن لـ PRX-SD استخراج الأرشيفات المحمية بكلمة مرور. يُبلَّغ عنها بـ skipped في نتائج الفحص مع ملاحظة عن التشفير. لا يزال ملف الأرشيف نفسه يُفحص مقابل قواعد بيانات الهاش وYARA.

كشف النصوص البرمجية

لملفات النصوص البرمجية النصية (Shell وPython وJavaScript وPowerShell وVBScript وBatch)، يطبق PRX-SD استدلاليات مستندة إلى الأنماط:

النمطالنقاطالوصف
سلاسل مُشوَّشة10-20أوامر مُرمَّزة بـ base64، تسلسل سلاسل مفرط
تنزيل + تنفيذ15-25curl/wget مُمرَّر إلى bash/sh، Invoke-WebRequest + Invoke-Expression
reverse shell20-30أنماط reverse shell معروفة (/dev/tcp، nc -e، bash -i)
الوصول إلى بيانات الاعتماد10-15قراءة /etc/shadow، مخازن بيانات اعتماد المتصفح، keychain
آليات الاستمرارية10-15إضافة مهام cron وخدمات systemd ومفاتيح التسجيل

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

الملفات التي لا تتطابق مع أي رقم سحري معروف لا تزال تُفحص مقابل قواعد بيانات الهاش وYARA. لا يُطبَّق التحليل الاكتشافي على أنواع الملفات غير المعروفة. أمثلة شائعة:

  • بيانات ثنائية خام
  • تنسيقات خاصة بدون أرقام سحرية عامة
  • الملفات المشفرة (ما لم يُتعرَّف على تنسيق الحاوية)

تظهر هذه الملفات بـ type: unknown في تقارير الفحص وتحصل على فحص الهاش + YARA فقط.

الخطوات التالية

Released under the Apache-2.0 License.