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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
MalEval — الكود الرسمي لورقة ISSTA 2026: هل "معرفة أنه ضار" كافية؟ تقييم LLMs للتدقيق الدقيق لسلوك البرمجيات الخبيثة | Kitploit
أدوات/GitHubGitHub/zhengxr930/maleval
أمان أندرويدالتحليل الثابتتحليل الكودتحليل البرمجيات الخبيثةتعلم الآلةالأوراق والأبحاثالتعلم والتعليمأمن الذكاء الاصطناعي
GitHubzhengxr930/maleval

MalEval

الكود الرسمي لورقة ISSTA 2026: هل "معرفة أنه ضار" كافية؟ تقييم LLMs للتدقيق الدقيق لسلوك البرمجيات الخبيثة

عرض المستودع
5112منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

MalEval

مقال: هل «معرفة أنه خبيث» كافٍ؟ تقييم نماذج اللغات الكبيرة للتدقيق الدقيق في سلوك البرمجيات الخبيثة

DOI المقال: 10.1145/3832187

MalEval هو إطار عمل لتقييم تقارير سلوك البرمجيات الخبيثة لنظام أندرويد المُولَّدة بواسطة نماذج اللغات الكبيرة. ينفّذ الكود الموجود في هذا المستودع مسارين للتنفيذ:

  1. من ملف APK: تشغيل التحليل الساكن على ملفات APK لإنتاج نقاط الدخول وسلاسل الاستدعاء وأجسام الدوال والدوال القابلة للوصول.
  2. من المخرجات (Artifact): البدء من مخرجات التحليل الساكن المُحسوبة مسبقًا وتوليد ملخصات الدوال والتمثيلات الوسيطة للسياق وتقارير السلوك ومقاييس التقييم.

تستضاف مجموعة البيانات المنشورة بشكل منفصل في مستودع بيانات MalEval على Hugging Face.

يحتوي المعيار على 255 تطبيق أندرويد: 200 عينة برمجيات خبيثة مؤرشفة، و30 عينة برمجيات خبيثة حديثة، و25 تطبيقًا سليمًا تُستخدم كإيجابيات كاذبة مُحاكاة. راجع DATA.md للحصول على الملفات المنشورة ومصادرها وحقوقها وملاحظات التعامل الآمن معها.

هيكل المستودع

root@kitploit:~
info/                Sample metadata for the benign, MalRadar, and new malware splits.
model_registry.yaml Model/provider configuration for LLM-based stages.
DATA.md              Dataset composition, provenance, and access instructions.
LICENSE.txt          License scope and third-party-material exclusions.
CITATION.cff         Machine-readable citation metadata.
src/                 Static analysis, summarization, behavior generation, and metrics code.

يجب فك ضغط مجموعة البيانات بحيث يصبح المستودع بهذا الهيكل:

root@kitploit:~
MalEval/
|-- info/
|-- src/
`-- artifacts/
    |-- apk/
    |-- call_chain/
    |-- entrypoints/
    |-- functions/
    |-- meta_info/
    |-- reachable_func/
    `-- reports/

البيئة

استخدم بايثون 3.10 أو أحدث. نوصي بإنشاء بيئة افتراضية جديدة:

root@kitploit:~
python3 -m venv .venv
source .venv/bin/activate
python3 -m pip install --upgrade pip
python3 -m pip install -r requirements.txt

قم بتكوين موفري النماذج في model_registry.yaml قبل تشغيل المراحل القائمة على نماذج اللغات الكبيرة. يمكن لكل إدخال نموذج تخزين إما قيمًا حرفية، مثل api_key وbase_url، أو مراجع لمتغيرات بيئة، مثل api_key_env وbase_url_env.

مثال:

root@kitploit:~
models:
  gpt:
    provider: openai
    model: gpt-5
    api_key: <your_openai_key>
    base_url: https://api.openai.com/v1

يتضمن السجل الافتراضي إدخالات لـ gpt، وgpt-5، وqwen، وdeepseek، وllama، وcoder، وclaude، وgemini. إذا كنت تفضل متغيرات البيئة، فعيّن المتغيرات المشار إليها في model_registry.yaml، على سبيل المثال OPENAI_API_KEY، وDEEPSEEK_API_KEY، وQWEN3_API_KEY، وHUGGINGFACE_API_KEY، وANTHROPIC_API_KEY، وGEMINI_API_KEY، و، و.

من ملف APK

يسلك هذا المسار بدءًا من ملفات APK الموجودة تحت artifacts/apk/<split>/ ويعيد توليد مخرجات التحليل الساكن. يجب أن يكون التقسيم أحد القيم malradar أو new أو benign.

تشغيل ملف APK واحد:

root@kitploit:~
sha=<apk_sha256>
python3 src/preparation/run_static_analysis.py \
  --folder malradar \
  --apk "$sha" \
  --output-root results/static_analysis

تشغيل دفعة عيّنات صغيرة:

root@kitploit:~
python3 src/preparation/run_static_analysis.py \
  --folder malradar \
  --sample-size 5 \
  --seed 42 \
  --output-root results/static_analysis

تُكتب الملفات المُولَّدة إلى:

root@kitploit:~
results/static_analysis/entrypoints/
results/static_analysis/call_chain/
results/static_analysis/functions/
results/static_analysis/reachable_func/

من المخرجات (Artifact)

يسلك هذا المسار بدءًا من دليل artifacts/ المنشور، ويستخدم ملفات functions وcall_chain وentrypoints وreachable_func وmeta_info المُحسوبة مسبقًا.

ملخصات الدوال

root@kitploit:~
model=gpt
split=malradar
sha=<apk_sha256>

python3 src/preparation/get_functionality_summary.py --model "$model" --folder "$split" --apk "$sha"

احذف --apk لتشغيل التقسيم بالكامل.

الملخصات مع السياق وبدون سياق

root@kitploit:~
python3 src/preparation/get_context_summary.py --model "$model" --folder "$split" --apk "$sha"
python3 src/preparation/get_no_context_summary.py --model "$model" --folder "$split" --apk "$sha"

تقارير السلوك

root@kitploit:~
python3 src/generate_behavior/get_behavior.py --model "$model" --folder "$split" --flag context --apk "$sha"
python3 src/generate_behavior/get_behavior.py --model "$model" --folder "$split" --flag no_context --apk "$sha"
python3 src/generate_behavior/get_meta_behavior.py --model "$model" --folder "$split" --apk "$sha"

تُكتب المخرجات تحت results/summary/ وresults/context_summary/ وresults/no_context_summary/ وresults/behavior/ وresults/no_context_behavior/ وresults/meta_behavior/.

المقاييس

بعد توليد الملخصات وتقارير السلوك، احسب المقاييس باستخدام:

root@kitploit:~
python3 src/metrics/run_metrics.py --model "$model" --flag context
python3 src/metrics/run_metrics.py --model "$model" --flag no_context
python3 src/metrics/run_metrics.py --model "$model" --flag meta

لتخطي استدعاءات نموذج الحكم:

root@kitploit:~
python3 src/metrics/run_metrics.py --model "$model" --flag context --skip-eas

تتوفر أيضًا نصوص برمجية منفصلة لحساب المقاييس:

root@kitploit:~
python3 src/metrics/aec_b_f1.py --model "$model" --flag context
python3 src/metrics/fpcr_tpmr_f1c.py --model "$model" --flag context
python3 src/metrics/eas.py --model "$model" --flag context --split malradar --judge-model gpt-5

التحقق الأدنى

يمكن فحص شجرة المصدر دون تنزيل ملفات APK أو تكوين بيانات اعتماد النماذج:

root@kitploit:~
python3 -m compileall -q src
python3 - <<'PY'
import json
from pathlib import Path

expected = {
    "archived_sample_info.json": 200,
    "latest_sample_info.json": 30,
    "benign_sample_info.json": 25,
}
for name, count in expected.items():
    actual = len(json.loads((Path("info") / name).read_text()))
    assert actual == count, (name, actual, count)
print("metadata check passed: 200 archived malware + 30 recent malware + 25 benign")
PY

نطاق قابلية إعادة الإنتاج

  • لا يتطلب حساب المقاييس على التقارير المنشورة أجهزة استدلال محلية للنماذج.
  • تتطلب إعادة توليد مخرجات نماذج اللغات الكبيرة بيانات الاعتماد المناسبة لواجهات API أو نقطة نهاية مستضافة ذاتيًا متوافقة.
  • يجب إجراء التحليل الساكن وجميع التعاملات مع ملفات APK في بيئة بحثية معزولة. لا تثبّت أو تشغّل العينات المنشورة على جهاز شخصي أو جهاز إنتاج.
  • قد تتأثر إعادة الإنتاج الرقمية الدقيقة بالتغييرات في نقاط نهاية النماذج المستضافة. تحافظ التقارير المنشورة على المخرجات المستخدمة في الورقة البحثية.
تنزيل الأداة
GEMINI_PROJECT
GEMINI_LOCATION