
fireELF - إطار برمجيات خبيثة لا ملفي لنظام لينكس
fireELF هو إطار عمل مفتوح المصدر للبرامج الضارة بدون ملفات على لينكس، وهو متعدد المنصات ويسمح للمستخدمين بإنشاء وإدارة الحمولات بسهولة. بشكل افتراضي، يأتي مع 'memfd_create' وهي طريقة جديدة لتشغيل ملفات ELF القابلة للتنفيذ على لينكس بالكامل من الذاكرة، دون أن يلمس الملف الثنائي القرص الصلب.

الحمولة الوحيدة المضمنة 'memfd_create' مبنية على بحث Stuart، تقوم هذه الحمولة بإنشاء واصف ملف مجهول في الذاكرة ثم تستخدم fexecve لتنفيذ الملف الثنائي مباشرة من واصف الملف. وهذا يسمح بالتنفيذ بالكامل في الذاكرة مما يعني أنه إذا تمت إعادة تشغيل نظام لينكس، فلن يتم العثور على الحمولة في أي مكان.
بشكل افتراضي، يأتي fireELF مع 'memfd_create' ولكن يمكن للمستخدمين تطوير حمولاتهم الخاصة. بشكل افتراضي، يتم تخزين الحمولات في payloads/ ولإنشاء حمولة صالحة، تحتاج ببساطة إلى تضمين قاموس باسم 'desc' مع المعاملات 'name' و'description' و'archs' و'python_vers'. مثال على قاموس desc أدناه:
desc = {"name" : "test payload", "description" : "new memory injection or fileless elf payload", "archs" : "all", "python_vers" : ">2.5"}
بالإضافة إلى قاموس 'desc'، فإن نقطة الدخول التي يستخدمها محرك الإضافات التي بنيتها تتطلب دالة main والتي سيتم تمرير معاملين إليها تلقائيًا، أحدهما قيمة منطقية إذا كانت true فهذا يعني أنه يتم تمرير رابط، والمعامل الثاني الذي يتم تمريره هو البيانات. مثال على نقطة دخول بسيطة أدناه:
def main(is_url, url_or_payload):
return
إذا كانت لديك طريقة، فلا تتردد في إرسال حمولة!
قم بتنزيل التبعيات عن طريق تشغيل:
pip3 -U -r dep.txt
تم تطوير fireELF باستخدام بايثون 3.x.x
usage: main.py [-h] [-s] [-p PAYLOAD_NAME] [-w PAYLOAD_FILENAME]
(-u PAYLOAD_URL | -e EXECUTABLE_PATH)
fireELF, Linux Fileless Malware Generator
optional arguments:
-h, --help show this help message and exit
-s Supress Banner
-p PAYLOAD_NAME Name of Payload to Use
-w PAYLOAD_FILENAME Name of File to Write Payload to (Highly Recommended if
You're not Using the Paste Site Option)
-u PAYLOAD_URL Url of Payload to be Executed
-e EXECUTABLE_PATH Location of Executable