Rizin 0.4.0 և GUI Cutter 2.1.0 հակադարձ ճարտարագիտության շրջանակի թողարկում

Տեղի ունեցավ Rizin-ի հակադարձ ճարտարագիտության շրջանակի և դրա հետ կապված գրաֆիկական կեղևի թողարկումը: Rizin նախագիծը սկսվեց որպես Radare2 շրջանակի պատառաքաղ և շարունակեց իր զարգացումը` շեշտը դնելով հարմար API-ի և առանց դատաբժշկական փորձաքննության կոդերի վերլուծության վրա: Պատառաքաղից ի վեր նախագիծն անցել է սկզբունքորեն այլ մեխանիզմի՝ սերիալիզացիայի վրա հիմնված վիճակի տեսքով սեսիաների («նախագծերի») պահպանման համար: Բացի այդ, կոդի բազան զգալիորեն վերանախագծվել է, որպեսզի այն ավելի պահպանելի լինի: Ծրագրի կոդը գրված է C-ով և տարածվում է LGPLv3 լիցենզիայի ներքո:

The Cutter-ի գրաֆիկական կեղևը գրված է C++-ով՝ օգտագործելով Qt և տարածվում է GPLv3 լիցենզիայի ներքո: Cutter-ը, ինչպես և ինքը Rizin-ը, ուղղված է հակադարձ ինժեներական ծրագրերի գործընթացին մեքենայական կոդով կամ բայթկոդով (օրինակ՝ JVM կամ PYC): Գոյություն ունեն Cutter/Rizin-ի ապակոմպիլյացիոն հավելվածներ՝ հիմնված Ghidra-ի, JSdec-ի և RetDec-ի վրա:

Rizin 0.4.0 և GUI Cutter 2.1.0 հակադարձ ճարտարագիտության շրջանակի թողարկում

Նոր թողարկումում.

  • Ավելացվեց FLIRT ստորագրություններ ստեղծելու աջակցություն, որոնք այնուհետև կարող են բեռնվել IDA Pro-ում;
  • Փաթեթը ներառում է հանրաճանաչ գրադարանների ստանդարտ ստորագրությունների տվյալների բազա;
  • Գործարկվող ֆայլերի գործառույթների և տողերի բարելավված ճանաչում Go for x86/x64/PowerPC/MIPS/ARM/RISC-V-ում;
  • Իրականացվել է նոր միջանկյալ ներկայացման RzIL լեզու, որը հիմնված է BAP Core տեսության վրա (SMT-նման լեզու):
  • Ավելացվել է «հում» ֆայլերի բազային հասցեն ավտոմատ հայտնաբերելու հնարավորությունը.
  • Գործարկվել է վրիպազերծման ռեժիմում Windows PageDump/Minidump ձևաչափերի հիման վրա հիշողության «պատկերների» բեռնման աջակցություն.
  • Բարելավված աշխատանքը հեռակառավարվող վրիպազերծիչների հետ՝ հիմնված WinDbg/KD-ի վրա:
  • Այս պահին ARMv7/ARMv8, AVR, 6052, brainfuck ճարտարապետությունների աջակցությունը փոխանցվել է նոր RzIL-ին։ Հաջորդ թողարկումով նախատեսվում է ավարտել SuperH-ի, PowerPC-ի և մասամբ x86-ի թարգմանությունը։

Նաև լրացուցիչ թողարկվել է.

  • rz-libyara – պլագին Rizin/Cutter-ի համար՝ Yara ձևաչափով ստորագրություններ բեռնելու և ստեղծելու համար։
  • rz-libdemangle – ֆունկցիայի անվան վերծանման գրադարան C++/ObjC/Rust/Swift/Java լեզուների համար;
  • rz-ghidra – պլագին Rizin/Cutter-ի համար ապակոմպիլյացիայի համար (հիմնված Ghidra C++ կոդի վրա);
  • jsdec – պլագին Rizin/Cutter-ի համար՝ սկզբնական մշակումը ապակոմպիլացնելու համար;
  • rz-retdec – պլագին Rizin/Cutter-ի համար ապակոմպիլյացիայի համար (հիմնված RetDec-ի վրա);
  • rz-tracetest – գործիք՝ մեքենայական կոդի թարգմանության ճշգրտությունը RzIL-ի խաչաձեւ ստուգելու համար՝ համեմատելով էմուլյացիոն հետքի հետ (հիմնված QEMU, VICE):

Source: opennet.ru

Добавить комментарий