
تم تطبيق FLARE floss على جميع العينات المفكوكة والمفرّغة في Malpedia، مع معالجة مسبقة للاستخدام لاحقًا.
يحتوي هذا المستودع على نتيجة أداة FLARE FLOSS المطبقة على جميع العينات غير المعبأة والمفرغة في Malpedia، بعد معالجتها مسبقًا للاستخدام الإضافي.
نعتزم تحديث هذه المجموعة بشكل دوري.
في التشغيل الأخير في يناير 2026، تمت معالجة 9,202 ملفًا مرتبطة بـ 2,136 عائلة من البرامج الضارة. أسفر تطبيق FLOSS عن 61,135,522 سلسلة نصية خام، تم تنظيفها وإزالة التكرارات إلى 5,666,515 سلسلة فريدة. بمجرد فك الضغط، تبلغ المجموعة حاليًا حوالي 1300 ميغابايت.
يتم توفير مجموعة السلاسل النصية على شكل قاموس JSON (انظر مجلد data) ويتكون من ثلاثة أقسام:
about: يشبه رأس الملف، ويحتوي على بيانات وصفية حول هذه المجموعة.family_to_id: تعيين معرفات العائلات إلى أسماء العائلات، كما هو موجود في Malpedia (بالإضافة إلى بعض المكتبات).strings: البيانات الفعلية، قاموس حيث المفتاح هو السلسلة والقيمة هي قاموس يحتوي على بعض المعلومات الإضافية.باختصار، تبدو البيانات كما يلي:
{
"about": {
"author": "Daniel Plohmann // daniel.plohmann<at>fkie.fraunhofer.de",
"date_flossed": "2026-01-06",
"date_published": "2026-01-06",
"floss_version": "floss v3.0.1-0-g3782dc9",
"info": "This collection contains the output of applying the FLARE team's floss tool to all unpacked+dumped samples in Malpedia, with additional information in which families the respective string was found, along with its extraction method and encoding. Processing has been applied to reduce the number of mistakenly extracted data strings with no real value to further analysis, FLOSS QUANTUMSTRAND and own tagging has been applied to enrich the output.",
"license": "Creative Commons BY-SA 4.0",
"num_input_strings": 61135522,
"num_filtered_input_strings": 26844200,
"num_malware_families": 2136,
"num_samples_flossed": 9202,
"num_tagged_strings": 2421776,
"num_unique_strings": 5666515,
"reference": "malpedia.caad.fkie.fraunhofer.de/",
"source": "https://github.com/malpedia/malpedia-flossed"
},
"family_to_id": {
"elf.anchor_dns": 1121,
"elf.angryrebel": 1393,
"elf.babuk": 899,
...
"win.zupdax": 1328,
"win.zxxz": 1732,
"win.zyklon": 689
},
"strings": {
...
"Mozilla/4.0 (compatible; MSIE 6.0; Win32)": {
"encodings": [
"ASCII"
],
"families": [
79,
272,
683,
914,
918,
1000,
1572
],
"family_count": 7,
"methods": [
"static"
],
"string": "Mozilla/4.0 (compatible; MSIE 6.0; Win32)",
"tags": [
"user-agent"
]
},
...
الترميزات الممكنة هي ASCII و UTF-16LE، بينما تشير الطرق إلى طرق استخراج FLOSS: decoded و stack و static و tight و language.
العلامات مشتقة من مجموعة من الإرشادات الذاتية الخاصة بنا وكذلك بناءً على الأساليب والبيانات الموجودة في فرع التطوير QUANTUMSTRAND من FLOSS.
بدلاً من تحليل ملف JSON الضخم في كل مرة، نقدم خدمة ويب معبأة في Docker تتيح عمليات البحث.
تستخدم falcon كواجهة خلفية API، مع WSGI عبر waitress، وموكَّلة للنشر عبر nginx.
يعتمد التصميم على awesome-compose ولكن تم تحديثه وتكييفه للاستخدام مع falcon و waitress.
تدعم الخدمة عمليات البحث الفردية كطلبات GET وعمليات البحث المتعددة كطلبات POST:
$ curl https://strings.malpedia.io/api/query/FIXME
{"status": "successful", "data": [{"encodings": ["ASCII"], "families": ["win.kins", "win.vmzeus", "win.zeus_sphinx", "win.citadel", "win.ice_ix", "win.murofet", "win.zeus"], "family_count": 7, "methods": ["static"], "string": "FIXME", "tags": [], "matched": true}, {"matched": false, "string": "NOT_FLOSSED"}]}
$ curl -X POST https://strings.malpedia.io/api/query --data '"FIXME","NOT_IN_THE_DATABASE"'
{"status": "successful", "data": [{"encodings": ["ASCII"], "families": ["win.kins", "win.vmzeus", "win.zeus_sphinx", "win.citadel", "win.ice_ix", "win.murofet", "win.zeus"], "family_count": 7, "methods": ["static"], "string": "FIXME", "tags": [], "matched": true}, {"matched": false, "string": "NOT_IN_THE_DATABASE"}]}
اطلع على البرنامج النصي التجريبي بلغة Python لمعرفة كيفية التفاعل مع الخدمة.
نستضيف أيضًا مثيلًا عامًا لهذه الخدمة على strings.malpedia.io.
هنا بعض التوثيق لخدمة الويب.
من المحتمل أن تكون حالة الاستخدام الجيدة لهذه المجموعة من السلاسل النصية في أدوات تحليل الثنائيات، لذا قمنا ببناء مكوّن إضافي متوافق مع IDA Pro و Ghidra و Binary Ninja يوضح ذلك:
لكي يعمل مع جميع المنصات الثلاثة مرة واحدة، نستخدم gui-plugin-template، المبني على hyara.
هنا بعض التوثيق للمكوّن الإضافي، يشرح كيفية تثبيته وتكوينه.
أضفنا مكوّنًا إضافيًا للاستخبارات لـ Malcat يبحث عن جميع السلاسل النصية في الثنائي المحدد ويعرض النتائج في نتيجة Kesakode مخصصة.
للتثبيت، ما عليك سوى وضع الملف الموجود في ./plugins/malcat/MalpediaFlossed.py داخل مجلد data/intelligence في Malcat.
افتراضيًا، يتم استخدام المثيل العام strings.malpedia.io لعمليات البحث ولكن يمكنك أيضًا تحديد نقطة نهاية خاصة بك.
/api/query/<needle> عند مواجهة مسار مشفر بعنوان URL، إضافة إمكانية استعلامات containsيتم إصدار البيانات بموجب ترخيص CC BY-SA 4.0، مما يسمح بالاستخدام التجاري.