
fireELF - Dateiloses Linux-Malware-Framework
fireELF ist ein quelloffenes, dateiloses Linux-Malware-Framework, das plattformübergreifend ist und es Benutzern ermöglicht, einfach Payloads zu erstellen und zu verwalten. Standardmäßig wird 'memfd_create' mitgeliefert, eine neue Möglichkeit, Linux-ELF-Executables vollständig aus dem Speicher auszuführen, ohne dass die Binärdatei die Festplatte berührt.

Der einzige enthaltene Payload 'memfd_create' basiert auf der Forschung von Stuart. Dieser Payload erstellt einen anonymen Dateideskriptor im Speicher und verwendet dann fexecve, um die Binärdatei direkt über den Dateideskriptor auszuführen. Dies ermöglicht die vollständige Ausführung im Speicher, was bedeutet, dass der Payload nach einem Neustart des Linux-Systems nirgends zu finden ist.
Standardmäßig wird fireELF mit 'memfd_create' ausgeliefert, aber Benutzer können ihre eigenen Payloads entwickeln. Standardmäßig werden die Payloads im Verzeichnis payloads/ gespeichert. Um einen gültigen Payload zu erstellen, müssen Sie lediglich ein Dictionary mit dem Namen 'desc' mit den Parametern 'name', 'description', 'archs' und 'python_vers' erstellen. Ein Beispiel für ein desc-Dictionary finden Sie unten:
desc = {"name" : "test payload", "description" : "new memory injection or fileless elf payload", "archs" : "all", "python_vers" : ">2.5"}
Zusätzlich zum 'desc'-Dictionary benötigt der Einstiegspunkt, den ich in die Plugin-Engine eingebaut habe, eine main-Funktion, der automatisch zwei Parameter übergeben werden: Einer ist ein Boolean – wenn er wahr ist, bedeutet das, dass eine URL übergeben wird; der zweite übergebene Parameter sind die Daten. Ein Beispiel für einen einfachen Einstiegspunkt finden Sie unten:
def main(is_url, url_or_payload):
return
Wenn Sie eine Methode haben, können Sie gerne einen Payload beitragen!
Laden Sie die Abhängigkeiten mit folgendem Befehl herunter:
pip3 -U -r dep.txt
fireELF wurde in Python 3.x.x entwickelt.
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