From Collaborative RCE Tool Library

Jump to: navigation, search

radare

Tool name: radare
Rating: 0.0 (0 votes)
Author: pancake                        
Website: http://radare.nopcode.org
Current version: 0.9.3
Last updated: February 19, 2008
Direct D/L link: http://radare.nopcode.org/get/radare-0.9.3.tar.gz
License type: GPL
Description: The radare project aims to provide a complete unix-like toolchain for working with binary files. It currently provides a set of tools to work with x86, arm and java with some ones powerpc.

The core is a raw hexadecimal editor for commandline with scripting features and perl/python extensions that gets extended with IO plugins that hooks the open/read/write/close/system calls.

The debugger and disassembler has a code analysis module for x86, arm and java. This way it's possible to draw graphs using Cairo on a GTK window or store the flow execution of a program on a log file and use the information to diff't against another trace or binary.

The toolchain provides assemblers and disasemblers for x86, arm and java.

The disassembler has been enhaced to handle inline comments, code block detections and flag references (data pointers or so).

The debugger currently works on linux,*bsd x86-32 but it has initial support for x86-64 and linux-ARM, and w32 support is in mind too.

But there are IO plugins for debugging windows and DOS applications via wine and dosemu. Initial gxemul support gives us the possibility to also debug ARM, MIPS, SPARC, .. binaries.

There are some internal commands to handle memory maps, mount a syscall proxy, inject code, patch data, dump user data sections, step-back, syscall tracing, hardware DRx register manipulation, conditional watchpoints with expressions, signalling manipulation, syscall injection and very early threading support..

Data structures can be parsed with hand-written C programs called as extensions from radare. So the hexadecimal editor comes with a set of views for different bases and print formats like URL-encoding, binary, octal, shellcode, C string-like, which is really useful for developing shellcodes.

There's a minimal GUI frontend written in C that interacts directly with an VTE running radare. But I plan to write a new native frontend written in Vala.

Current development plugins are:

* ewf: EnCase (R) forensic disk images
* winedbg: WineDebugger interface ( winedbg://./program.exe )
* haret: Remotely read WindowsCE memory ( haret://host:port )
* ptrace: Debugs or attach to a process ( dbg://file or pid://PID )
* sysproxy: Connects to a remote syscallproxy server
* remote: TCP IO ( listen://:port or connect://host:port )
* gdb: Debugs or attach to a process using gdb (gdb://file, gdb://PID, gdb://host:port)
* w32: posix to native w32 api io
* posix: plain posix file access

The tools provided around the core are:

* radare: command line hexadecimal editor with IO plugin extensions
* rabin: get info from ELF/MZ/PE/CLASS files
* rasc: shellcode generator and tester (outputs in raw, hexpairs or C)
* bindiff: binary diffing utilities for raw files, binaries, data blocks, etc
* xrefs: find crossed references on raw images for ppc, arm and x86
* hasher: calculate different algorithms over data blocks of a file or stream
* rsc: command line helpers written in shellscript or perl
* javasm: minimalistic java assembler/disassembler/classdumper
* armasm: minimalistic arm assembler
* xc: converts between multiple radix numeric bases

FMI see the mailing list

Have fun!
Related URLs: No related URLs have been submitted for this tool yet


RSS feed Feed containing all updates for this tool.



If you find that any information for the tool above is missing, outdated or incorrect, please edit it!
(please also edit it if you think it fits well in some additional category, since this can also be controlled)


Views
Category Navigation Tree
   Code Ripping Tools  (1)
   Crypto Tools  (2)
   Ring 0 Debuggers  (6)
   Ring 3 Debuggers  (10)
   Symbol Retrievers  (4)
   VM Debugging Tools  (1)
   Binary Diff Tools  (5)
   Image Diff Tools  (2)
   System Diff Tools  (2)
   Text Diff Tools  (6)
   Firefox Extensions  (1)
   Hex Editors  (10)
   Memory Patchers  (3)
   Packers  (10)
   Profiler Tools  (9)
   Resource Editors  (7)
   String Finders  (5)
   Tool Hiding Tools  (1)
   Tracers  (10)
   Automated Unpackers  (12)
   Dump Fixers  (2)
   IAT Restore Tools  (3)
   Memory Dumpers  (8)
   OEP Finders  (4)
   Process Dumpers  (4)