From e0c70029510558ac2b7cb06fc8fd44066ed9f81b Mon Sep 17 00:00:00 2001 From: Thomas Smits Date: Wed, 9 Oct 2024 13:21:07 +0200 Subject: [PATCH] Update of exercises --- Assignment_001/flag_printer.jar | Bin 1702 -> 1702 bytes Assignment_004/payload_2.so | Bin 21520 -> 21520 bytes Assignment_005/payload_1b | Bin 0 -> 14528 bytes Assignment_005/readme.md | 38 ++++++++++++++++++++++++++++++++ readme.md | 1 + 5 files changed, 39 insertions(+) create mode 100755 Assignment_005/payload_1b create mode 100644 Assignment_005/readme.md diff --git a/Assignment_001/flag_printer.jar b/Assignment_001/flag_printer.jar index e34f172f917b57a5f4a341a4dfdc675308ba353a..8af3b518a624530fb4e323baec0a26fedd54440f 100644 GIT binary patch delta 77 zcmZ3+yNs7Nz?+#xgn@&DgJEHm=R{sBW)S5yfq6lc=f=C!nL+gCau!`ikoe@~tQKJU S5vx5&VzLUG4VX@5a|QrrMHiv~ delta 77 zcmZ3+yNs7Nz?+#xgn@&DgP}OnX(F!`Gl=q<0HQYDoz4uRHMGJ+VBm$O=c=|`;g OU|NOE223ZjIRgMZ^%iyj diff --git a/Assignment_004/payload_2.so b/Assignment_004/payload_2.so index a158640d8772f0c6f3c42254c5cf721e447ddbd0..ed1c284c86f17f837ecac26b4f9af1869882cf1b 100755 GIT binary patch delta 43 zcmV+`0M!4Gr~#0u0kGHt6ngcZOasfscT0x8Rkw{7DCi6qlC$grwi5yn0JEePY(1$V B5()qS delta 43 zcmV+`0M!4Gr~#0u0kGHt6n||ZOkgo;dHpA;DURq^gYc>)5VPz8wi5yX0kfnQY(0;O B5qJOq diff --git a/Assignment_005/payload_1b b/Assignment_005/payload_1b new file mode 100755 index 0000000000000000000000000000000000000000..a44badd84bff8cd680258401bb9e6fc668ebafb0 GIT binary patch literal 14528 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 + + + +In diesem Assignment geht es darum, Techniken kennenzulernen, die Autoren von Malware benutzen, um sich einer statischen Analyse zu entziehen. Hierzu werden wir erneut das `rabin2`-Tool aus dem Radare 2 Paket verwenden. + + +## Radare 2 + +Für diese Übung werden wir das Kommandozeilen-Reverse-Engineering-Werkzeug Radare 2 einsetzen. Sie finden Tipps zur Installation und Verwendung in der [Kurzanleitung](../help/radare2.md). + +## Aufgabe + +Das Werkzeug `rabin2` kann dazu verwendet werden, die importierten Funktionen und enthaltenen Strings einer Binärdatei zu untersuchen. Sie können zur Anzeige der Strings auch das `strings`-Kommando verwenden. + +Nehmen Sie sich die folgende Datei vor und verwenden Sie `rabin2`, um sich die Importe (Option `-i`) und die enthaltenen Strings (Option `-z`) anzeigen zu lassen. + + * [payload_1b](payload_1b) + + +## Hinweis + +Bei dem Executable handelt es sich um ein Programm unbekannter Funktionalität, wie man sie z.B. bei der Untersuchung von kompromittierten Rechner finden könnte. Es kann gut sein, dass es sich um eine _Malware_ handelt, welche bei der Ausführung Schaden verursacht, bis hin zur Zerstörung aller Daten auf dem Rechner. Deswegen sollten Sie die Datei __auf keinen Fall__ ohne Schutzmaßnahmen (virtuelle Maschine etc.) __ausführen__. Die hier vorgenommene Analyse kommt ohne Ausführung der Datei aus und ist insofern sicher auch ohne Schutzmaßnahmen durchführbar. + +Sie müssen in der Realität damit rechnen, dass die Malware Schwachstellen in den von Ihnen verwendeten Werkzeugen nutzt, um bei einem Reverse-Engineering Ihren Rechner anzugreifen. Da wir uns hier in einem Übungskontext befinden, ignorieren wir dieses Problem. + +Die Liste der Funktionen, die importiert werden, ist recht kurz. Die Strings sind kryptisch und seltsam. + +Diese Software verschleiert offensichtlich die Bibliotheksfunktionen, die sie benutzt. Können Sie dahinter kommen, wie hierbei vorgegangen wird und welche Funktionen verwendet werden? + +## Abgabe + + * Schreiben Sie auf, was Sie über die Datei herausgefunden haben. + * Geben Sie eine Einschätzung ab, ob es sich möglicherweise um eine Malware handelt. + * Welche Art von Malware könnte vorliegen? Was macht sie wahrscheinlich? + +Die Abgabe erfolgt über das Repository, das Ihrem Team zugeordnet ist. \ No newline at end of file diff --git a/readme.md b/readme.md index cba2fc5..114b723 100644 --- a/readme.md +++ b/readme.md @@ -19,6 +19,7 @@ Hinweise zur nötigen Softwareausstattung finden Sie [hier](help/software.md). | 2. | 02.10.2024 | [Dateien mit `file` untersuchen (files.zip)](Assignment_002/readme.md) | | [✅](Assignment_002/solution/) | | 3. | 02.10.2024 | [Importe mit rabin2 untersuchen (payload_1)](Assignment_003/readme.md) | **08.10.2024** | | | 4. | 02.10.2024 | [Exports und Imports mit rabin2 untersuchen (payload_2.so)](Assignment_004/readme.md) | **08.10.2024** | | +| 5. | 09.10.2024 | [Importe mit rabin2 untersuchen (payload_1b)](Assignment_005/readme.md) | | | ## 🎓 Benotung