Radare 2
Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från
versionen som granskades den 30 december 2019; kontroller kräver
9 redigeringar .
Radare 2 |
---|
|
Radare2 webbgränssnitt |
Sorts |
Demonterare och ramverk för reverse engineering |
Författare |
pannkaka |
Utvecklaren |
pannkaka |
Skrivet i |
Xi |
Gränssnitt |
kommandorad , grafiskt , webbgränssnitt |
Operativ system |
Linux , BSD , OS X , Windows , Solaris , Android , iOS , Firefox OS , MeeGo , QNX , Haiku |
Gränssnittsspråk |
engelsk |
Första upplagan |
februari 2006 |
Hårdvaruplattform |
plattformsoberoende |
senaste versionen |
|
stat |
Aktiva |
Licens |
LGPL |
Hemsida |
radare.org |
Radare2 (även känd som r2 ) är ett gratis plattformsoberoende ramverk skrivet i C som inkluderar en disassembler , hex-editor , kodanalysator , etc. [2] . Används för omvänd , felsökning av skadlig programvara och firmware [3] [4] .
Historia och utveckling
Radare [5] -projektet började utveckla en hacker kallad pancake 2006, och under lång tid var han faktiskt den enda utvecklaren. Till en början var projektet tänkt som en hexadecimal editor med ett enkelt konsolgränssnitt som gjorde det möjligt att hitta och återställa data från hårddiskar. Därför har det kallats "ett verktyg för dator forensics ". Senare, enligt författarna, skedde en förändring i konceptet för projektet, och målet för utvecklarna var att skapa en fullfjädrad plattform utformad för att analysera binära filer , i synnerhet körbara filer [6] .
2010 "omformades ramverket", varefter projektet började växa och fyllas på med nya funktioner, vilket gjorde att det kunde användas inte bara som en redaktör utan också som en disassembler och analysator av både kod och skalkoder .
Sammansättning av radare2
Radare2-ramverket är tillgängligt som bibliotek och verktyg:
- Rasm2 är en assembler / disassembler av ramverket, implementerad som en separat applikation och låter dig demontera både filer och enskilda linjer.
- Rabin2 är ett verktyg för att arbeta med olika körbara filer (ELF, PE, Java class, Mach-O). Används för att få olika information om en fil: importerade funktioner, exporterade symboler, sektioner, inkluderade bibliotek och så vidare.
- Rahash2 är ett verktyg för att få hashvärden i många format från både filer och specifika datastycken.
- Radiff2 är ett verktyg för att jämföra binära filer.
- Rafind2 är ett verktyg för att söka både strängar med och utan reguljära uttryck, samt data i hexadecimalt format eller ett binärt mönster.
- Ragg2 är ett experimentellt verktyg för att kompilera små program för x86/x64 och ARM-arkitekturer.
- Rax2 är ett verktyg för att konvertera data i olika format.
- Rarun2 - låter dig köra programmet med olika miljöinställningar, argument, rättigheter och kataloger.
- Radeco [7] är en dekompilator för .
Cutter
Cutter [8] är en interaktiv demonterare baserad på radare2.
Arkitekturer/filformat som stöds
Versionshistorik
Färg
|
Menande
|
Röd |
gammal version
|
Grön |
Aktuell version
|
radare2 version
|
Utgivningsdatum
|
Egenheter
|
0.9.2
|
2 oktober 2012 |
- Stöd för nya CPU:er: Z80, dcpu16, m68k och arc.
- Tillagt stöd för följande plattformar: dalvik, mips, arm.
- Tillagd hantering av zip:// och apk://.
- Förbättrad analysator med 16-bitars x86-kod.
- Lade till många kommandon som ?i, ?I, ?k, b+, b- etc.
- Valabind 0.7.2 krävs nu.
- Fixat fel vid avkodning av opcode FF25 i x86_64-arkitektur.
- Implementering av DWARF-stöd har påbörjats.
- Lade till stöd för jmp [(rip+)0xoffset] och anrop [(rip+)0xoffset].
|
0.9.6
|
11 november 2013 |
- Stöd för färgscheman och visning av pilar/ramar med Unicode-tecken.
- Platsen för konfigurationsfilerna anges i enlighet med XDG-specifikationerna.
- Stöd för AArch64, Texas Instruments C55x+, 8051, ARCompact-plattformar.
- Automatisk igenkänning och laddning av TE (Terse Executable) körbara filer, BIOS/UEFI-bilder.
- Stöd för Java 7-klasser.
- Stöd för att deklarera struktur och uppsättningstyper, till exempel med kommandot 'td'.
- Python-bindningar omskrivna med ctypes istället för swig.
- Bindande stöd för Java JNI och D.
- För att förenkla arbetet har r2 lagt till grundläggande stöd för kommandona 'clear', 'ls', 'cat', 'cd', 'pwd'.
- Alla kommandon kan anslutas via rören '|' precis som i ett vanligt POSIX-skal.
- Refaktoreringen och övergången av kärnan till SDB (en enkel nyckel-värdesdatabas) för lagring av metainformation (funktioner, etiketter, kommentarer och mycket mer) har börjat.
|
0.9.9
|
5 juni 2015 |
|
1,0 [9]
|
6 november 2016 |
Lade till kommandokomplettering, färgteman, menuetOS, KolibriOS, DOS4GW-format, förbättrad PE, MACH0, ELF, COFF-teckentolkare, förbättrat Android-stöd
|
1.0.2 [9]
|
8 november 2016 |
|
Se även
Anteckningar
- ↑ Release 5.7.8 - 2022.
- ↑ Joshua J. Drake, Zach Lanier, Collin Mulliner, Pau Oliva Fora, Stephen A. Ridley. Android Hacker's Handbook . - John Wiley & Sons, 2014. - S. 495. - 576 sid. — ISBN 9781118922255 .
- ↑ Workshop "Återställa och felsöka skadlig programvara och firmware med hjälp av ramverket radare2" . Hämtad 4 augusti 2015. Arkiverad från originalet 21 juli 2015. (obestämd)
- ↑ Ken Dunham, Shane Hartman, Manu Quintans, Jose Andre Morales, Tim Strazzere. Android skadlig programvara och analys . — CRC Press, 2014-10-24. - S. 146. - 246 sid. — ISBN 9781482252194 .
- ↑ Git radare arkiv Arkiverad 11 juni 2018 på Wayback Machine
- ↑ Radaredokumentation, Kapitel 1: Introduktion, 1.1 Historia Arkiverad 27 november 2015 på Wayback Machine
- ↑ Radeco Git Repository Arkiverad 18 mars 2017 på Wayback Machine .
- ↑ Cutter hemsida Arkiverad 4 mars 2022 på Wayback Machine
- ↑ 1 2 Släpper radare/radare2 GitHub . Hämtad 3 december 2016. Arkiverad från originalet 12 april 2017. (obestämd)
Litteratur
På engelska
Länkar