Repositori ini berisi kumpulan skrip dan plugin IDA Pro yang digunakan oleh tim FireEye Labs Advanced Reverse Engineering (FLARE).
Untuk menginstal, salin isi direktori plugins di repositori ini ke folder %PROGRAMFILES%IDAplugins Anda.
Direktori python di sini dapat disalin ke folder %PROGRAMFILES%IDApython Anda, atau Anda dapat memodifikasi variabel lingkungan PYTHONPATH untuk memasukkan direktori tersebut.
Plugin IDA shellcode_hashes_search_plugin.py mengimplementasikan pencarian hash yang dijelaskan di sini: https://www.mandiant.com/blog/precalculated-string-hashes-reverse-engineering-shellcode/.
Direktori shellcode_hashes berisi skrip yang digunakan untuk membuat database skrip shellcode_hash_search.py, bersama dengan database yang disediakan.
Plugin struct_typer_plugin.py mengimplementasikan pengetikan struct yang dijelaskan di sini: https://www.mandiant.com/blog/applying-function-types-structure-fields-ida/
stackstrings_plugin.py mengimplementasikan pemulihan string yang dibuat secara manual yang dijelaskan di sini: http://www.fireeye.com/blog/threat-research/2014/08/flare-ida-pro-script-series-automatic-recovery-of- dibangun-string-in-malware.html
Skrip untuk IDA Pro ini menambahkan informasi MSDN dari file XML ke database. Informasi tentang plugin ini dapat ditemukan di: https://www.fireeye.com/blog/threat-research/2014/09/flare-ida-pro-script-series-msdn-annotations-ida-pro-for-malware -analisis.html
Fungsi berikut disertakan:
TL;DR: Di IDA jalankan annotate_IDB_MSDN.py .
Semua file (skrip IDAPython, parser XML, file XML informasi MSDN, dll.) harus ditempatkan di direktori yang sama yang dapat diakses oleh IDA Pro. Di IDA gunakan File - File skrip... (ALT + F7) untuk membuka annotate_IDB_MSDN.py . Formulir akan memungkinkan Anda mengubah pengaturan dan memberi anotasi pada file IDB setelah Anda mengklik OK.
Setelah menjalankan skrip satu kali, Lihat - Skrip terbaru (ALT + F9) juga dapat digunakan.
Plugin ini memungkinkan Anda menentukan atau memilih jenis fungsi untuk panggilan tidak langsung seperti yang dijelaskan di sini: https://www.fireeye.com/blog/threat-research/2015/04/flare_ida_pro_script.html
Skrip ini memungkinkan Anda dengan mudah membuat pola fungsi dari database IDB yang ada yang kemudian dapat diubah menjadi tanda tangan FLIRT untuk membantu mengidentifikasi fungsi serupa di file baru. Informasi lebih lanjut tersedia di: https://www.fireeye.com/blog/threat-research/2015/01/flare_ida_pro_script.html
Utilitas ini dapat membantu Anda mengidentifikasi argumen statis pada fungsi yang digunakan dalam suatu program. Ini paling sering digunakan untuk mengekstrak argumen ke fungsi dekoder string. Contoh penggunaan tersedia di
Posting blog dengan informasi lebih lanjut tersedia di:
https://www.fireeye.com/blog/threat-research/2015/11/flare_ida_pro_script.html
Skrip ini membuat referensi silang antara referensi pemilih dan implementasinya seperti yang ditentukan di bagian terkait runtime Objective-C dari target Mach-O yang dapat dieksekusi. Ini juga menambal penunjuk referensi pemilih untuk menunjuk ke fungsi implementasinya. Hal ini membuat analisis kode Objective-C lebih mudah dengan memungkinkan transisi yang mulus antara implementasi dan lokasi di mana pemilihnya direferensikan di seluruh kode. Komentar kode Objective-C yang berguna ditambahkan ke setiap panggilan ke varian objc_msgSend untuk secara jelas menunjukkan metode mana yang dipanggil di kelas mana.
ironstrings.py
adalah skrip IDAPython yang menggunakan emulasi kode untuk memulihkan string yang dibuat (stackstrings) dari malware. Silakan lihat detailnya di README skrip.
code_grafter.py
adalah skrip IDAPython yang mencangkokkan kode ke database IDA untuk mengimplementasikan berbagai fungsi yang diimpor dan meningkatkan kemungkinan untuk dapat mengeksekusi unpacker atau decoder sepenuhnya di bawah Bochs (atau alat emulasi lainnya yang tidak menerapkan penanganan khusus untuk ini fungsi). Hal ini mencegah kesalahan ketika eksekusi yang ditiru mencapai fungsi seperti VirtualAlloc
atau lstrlenA
.