Radare 2
Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den
version , der blev gennemgået den 30. december 2019; checks kræver
9 redigeringer .
Radare 2 |
---|
|
Radare2 webgrænseflade |
Type |
Adskiller og ramme til reverse engineering |
Forfatter |
pandekage |
Udvikler |
pandekage |
Skrevet i |
Xi |
Interface |
kommandolinje , grafisk , webgrænseflade |
Operativ system |
Linux , BSD , OS X , Windows , Solaris , Android , iOS , Firefox OS , MeeGo , QNX , Haiku |
Interface sprog |
engelsk |
Første udgave |
februar 2006 |
Hardware platform |
på tværs af platforme |
nyeste version |
|
Stat |
Aktiv |
Licens |
LGPL |
Internet side |
radare.org |
Radare2 (også kendt som r2 ) er et gratis cross-platform reverse engineering - rammeværk skrevet i C , der inkluderer en disassembler , hex-editor , kodeanalysator osv. [2] . Bruges til omvendt , fejlfinding af malware og firmware [3] [4] .
Historie og udvikling
Radare [5] -projektet begyndte at udvikle en hacker kaldet pandekage i 2006, og i lang tid var han faktisk den eneste udvikler. Oprindeligt var projektet udtænkt som en hexadecimal editor med en simpel konsolgrænseflade, der gjorde det muligt at finde og gendanne data fra harddiske. Derfor er det blevet kaldt "et værktøj til computerforensics ". Senere skete der ifølge forfatterne en ændring i projektets koncept, og udviklernes mål var at skabe en fuldgyldig platform designet til at analysere binære filer , især eksekverbare [6] .
I 2010 blev rammen "redesignet", hvorefter projektet begyndte at vokse og fyldes op med nye funktioner, som gjorde det muligt at bruge det ikke kun som en editor, men også som en disassembler og analysator af både kode og shellcodes .
Sammensætning af radare2
Radare2-rammeværket er tilgængeligt som biblioteker og hjælpeprogrammer:
- Rasm2 er en assembler / disassembler af rammeværket, implementeret som en separat applikation og giver dig mulighed for at adskille både filer og individuelle linjer.
- Rabin2 er et værktøj til at arbejde med forskellige eksekverbare filer (ELF, PE, Java class, Mach-O). Bruges til at få forskellige oplysninger om en fil: importerede funktioner, eksporterede symboler, sektioner, inkluderede biblioteker og så videre.
- Rahash2 er et værktøj til at få hash-værdier i mange formater fra både filer og specifikke stykker data.
- Radiff2 er et værktøj til at sammenligne binære filer.
- Rafind2 er et værktøj til at søge i både strenge med og uden regulære udtryk, samt data i hexadecimalt format eller et binært mønster.
- Ragg2 er et eksperimentelt værktøj til kompilering af små programmer til x86/x64 og ARM-arkitekturer.
- Rax2 er et værktøj til at konvertere data i forskellige formater.
- Rarun2 - giver dig mulighed for at køre programmet med forskellige miljøindstillinger, argumenter, rettigheder og mapper.
- Radeco [7] er en decompiler til .
Cutter
Cutter [8] er en interaktiv adskiller baseret på radare2.
Understøttede arkitekturer/filformater
Versionshistorik
Farve
|
Betyder
|
Rød |
gammel version
|
Grøn |
Nuværende version
|
radare2 version
|
Udgivelses dato
|
Ejendommeligheder
|
0.9.2
|
2. oktober 2012 |
- Understøttelse af nye CPU'er: Z80, dcpu16, m68k og arc.
- Tilføjet støtte til følgende platforme: dalvik, mips, arm.
- Tilføjet håndtering af zip:// og apk://.
- Forbedret analysator af 16-bit x86-kode.
- Tilføjet mange kommandoer som ?i, ?I, ?k, b+, b- osv.
- Valabind 0.7.2 er nu påkrævet.
- Rettet fejl ved afkodning af opcode FF25 i x86_64-arkitektur.
- Implementering af DWARF-støtte er begyndt.
- Tilføjet understøttelse af jmp [(rip+)0xoffset] og kald [(rip+)0xoffset].
|
0.9.6
|
11. november 2013 |
- Understøttelse af farveskemaer og visning af pile/rammer med Unicode-tegn.
- Placeringen af konfigurationsfilerne er angivet i overensstemmelse med XDG-specifikationerne.
- Understøttelse af AArch64, Texas Instruments C55x+, 8051, ARCompact platforme.
- Automatisk genkendelse og indlæsning af TE (Terse Executable) eksekverbare filer, BIOS/UEFI-billeder.
- Understøttelse af Java 7 klasser.
- Understøttelse af deklarering af struktur og sættyper, for eksempel med kommandoen 'td'.
- Python-bindinger omskrevet ved hjælp af ctypes i stedet for swig.
- Bindende support til Java JNI og D.
- For at forenkle arbejdet har r2 tilføjet grundlæggende understøttelse af kommandoerne 'clear', 'ls', 'cat', 'cd', 'pwd'.
- Alle kommandoer kan forbindes via rør '|' ligesom i en almindelig POSIX-skal.
- Refaktoreringen og overgangen af kernen til SDB (en simpel nøgleværdidatabase) til lagring af metainformation (funktioner, etiketter, kommentarer og meget mere) er begyndt.
|
0.9.9
|
5. juni 2015 |
|
1,0 [9]
|
6. november 2016 |
Tilføjet kommandofuldførelse, farvetemaer, menuetOS, KolibriOS, DOS4GW-formater, forbedret PE, MACH0, ELF, COFF-tegnparsere, forbedret Android-understøttelse
|
1.0.2 [9]
|
8. november 2016 |
|
Se også
Noter
- ↑ Udgivelse 5.7.8 - 2022.
- ↑ Joshua J. Drake, Zach Lanier, Collin Mulliner, Pau Oliva Fora, Stephen A. Ridley. Android Hackers håndbog . - John Wiley & Sons, 2014. - S. 495. - 576 s. — ISBN 9781118922255 .
- ↑ Workshop "Reversering og fejlretning af malware og firmware ved hjælp af radare2-rammeværket" . Hentet 4. august 2015. Arkiveret fra originalen 21. juli 2015. (ubestemt)
- ↑ Ken Dunham, Shane Hartman, Manu Quintans, Jose Andre Morales, Tim Strazzere. Android Malware og analyse . — CRC Press, 2014-10-24. - S. 146. - 246 s. — ISBN 9781482252194 .
- ↑ Git radare repository Arkiveret 11. juni 2018 på Wayback Machine
- ↑ Radare-dokumentation, Kapitel 1: Introduktion, 1.1 Historie Arkiveret 27. november 2015 på Wayback Machine
- ↑ Radeco Git Repository Arkiveret 18. marts 2017 på Wayback Machine .
- ↑ Cutter hjemmeside Arkiveret 4. marts 2022 på Wayback Machine
- ↑ 1 2 Frigiver radare/radare2 GitHub . Hentet 3. december 2016. Arkiveret fra originalen 12. april 2017. (ubestemt)
Litteratur
På engelsk
Links