Kehyksen julkaisu käänteissuunnittelulle Rizin 0.4.0 ja GUI Cutter 2.1.0

Rizinin käänteisen suunnittelun puitteet ja siihen liittyvä graafinen kuori Cutter julkaistiin. Rizin-projekti alkoi Radare2-kehyksen haarukkana ja jatkoi kehitystään painottaen kätevää APIa ja keskittyen koodianalyysiin ilman rikosteknistä tutkimusta. Haarukan jälkeen projekti on siirtynyt olennaisesti erilaiseen istuntojen ("projektien") tallennusmekanismiin serialisointiin perustuvan tilan muodossa. Lisäksi koodipohjaa on suunniteltu merkittävästi uudelleen, jotta se olisi helpompi ylläpitää. Projektikoodi on kirjoitettu C-kielellä ja sitä jaetaan LGPLv3-lisenssillä.

Cutter-graafinen kuori on kirjoitettu C++-kielellä Qt:n avulla ja jaettu GPLv3-lisenssillä. Cutter, kuten itse Rizin, on suunnattu käänteissuunnitteluohjelmien prosessiin konekoodissa tai tavukoodissa (esimerkiksi JVM tai PYC). Cutter/Rizinille on olemassa purkulaajennuksia, jotka perustuvat Ghidraan, JSdeciin ja RetDeciin.

Kehyksen julkaisu käänteissuunnittelulle Rizin 0.4.0 ja GUI Cutter 2.1.0

Uudessa julkaisussa:

  • Lisätty tuki FLIRT-allekirjoitusten luomiseen, jotka voidaan sitten ladata IDA Prohon;
  • Paketti sisältää tietokannan suosittujen kirjastojen standardiallekirjoituksista;
  • Parannettu toimintojen ja suoritettavien tiedostojen rivien tunnistus Go for x86/x64/PowerPC/MIPS/ARM/RISC-V;
  • Uusi BAP Core Theoryyn (SMT:n kaltainen kieli) perustuva väliesityskieli RzIL on otettu käyttöön;
  • Lisätty mahdollisuus tunnistaa "raaka" tiedostojen perusosoite automaattisesti;
  • Tuki muistin "snapshots" -tiedostojen lataamiselle, joka perustuu Windows PageDump/Minidump -muotoihin virheenkorjaustilassa, on otettu käyttöön;
  • Parannettu työskentely WinDbg/KD:hen perustuvien etävirheenkorjainten kanssa.
  • Tällä hetkellä ARMv7/ARMv8, AVR, 6052, brainfuck-arkkitehtuurien tuki on siirretty uuteen RzIL:iin. Seuraavaan julkaisuun mennessä on tarkoitus saada käännös valmiiksi SuperH:lle, PowerPC:lle ja osittain x86:lle.

Lisäksi julkaistu:

  • rz-libyara – Rizin/Cutter-laajennus, joka tukee Yara-muodossa olevien allekirjoitusten lataamista ja luomista;
  • rz-libdemangle – funktion nimen dekoodauskirjasto C++/ObjC/Rust/Swift/Java-kielille;
  • rz-ghidra – laajennus Rizin/Cutterille purkamista varten (perustuu Ghidra C++ -koodiin);
  • jsdec – Rizin/Cutter-laajennus alkuperäisen kehityksen purkamiseen;
  • rz-retdec – laajennus Rizin/Cutterille purkamista varten (RetDec-pohjainen);
  • rz-tracetest – apuohjelma konekoodin RzIL-käännöksen oikeellisuuden ristiintarkistamiseksi emulointijäljitykseen (perustuu QEMU:hun, VICE:hen).

Lähde: opennet.ru

Lisää kommentti