Codename: Refactor Forever

@radare radare released this Mar 13, 2017 · 217 commits to master since this release

rfr2

Downloads

http://cloud.radare.org/get/1.3.0

Release 1.3.0

Project: radare2
Codename: beta
Date: Mon Mar 13 2017 00:37:36 GMT+0100 (CET)
Website: http://radare.org
Tarball: https://github.com/radare/radare2/releases
Builds: http://cloud.rada.re/get/1.3.0-git

radare2 1.3.0-git comes with 11868 new lines of features, bug fixes and enhancements.

Numbers:

  • commits: 415
  • fix: 223
  • crash: 12
  • new: 8
  • add: 67
  • anal: 19
  • leak: 3
  • esil: 4
  • debug: 9
  • type: 8
  • oob: 24
  • honor: 5
  • update: 13
  • clean: 5
  • import: 3
  • endian: 0
  • indent: 22
  • command: 12
  • enhance: 9
  • diff:
    • add: 29626
    • del: 17758
    • diff: 11868
.-----------------------------------------------------------------------------------------------------------------------------------.
|                                                         Release 1.3.0-git                                                         |
|-----------------------------------------------------------------------------------------------------------------------------------|
|     name     | commits | fix | add | honor | leak | esil | endian |                            authors                            |
|--------------|---------|-----|-----|-------|------|------|--------|---------------------------------------------------------------|
|              |     415 | 223 |  67 |     5 |    3 |    4 |      0 |                                                               |
| binr/radare2 |      11 |   5 |   3 |     0 |    0 |    0 |      0 | pancake defragger xarkes alvarofe ...                         |
| binr/rabin2  |       2 |   2 |   1 |     0 |    0 |    0 |      0 | pancake nibble                                                |
| binr/radiff2 |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                       |
| binr/rahash2 |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                               |
| libr/debug   |      14 |   9 |   3 |     0 |    0 |    0 |      0 | pancake osalvador.vilardaga alvarofe schumblub ... |
| libr/bin     |      74 |  48 |  17 |     0 |    0 |    0 |      0 | pancake alvarofe h4ng3r wargio ...                            |
| libr/core    |     171 |  92 |  25 |     4 |    1 |    2 |      0 | pancake alvarofe schumblub maijin ...              |
| libr/crypto  |       2 |   2 |   0 |     0 |    0 |    0 |      0 | wargio pancake                                                |
| libr/cons    |       8 |   7 |   1 |     1 |    0 |    0 |      0 | pancake ret2libc skuater itaycohen23 ...                      |
| libr/anal    |      50 |  25 |   6 |     0 |    0 |    2 |      0 | pancake alvarofe mrmacete srimanta.barua1 ...                 |
| libr/asm     |      35 |  17 |   9 |     0 |    1 |    0 |      0 | unlogic pancake alvarofe laanwj ...                              |
| libr/util    |      58 |  32 |   8 |     1 |    2 |    0 |      0 | pancake alvarofe wargio schumblub ...              |
| libr/egg     |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                       |
| libr/io      |       6 |   3 |   1 |     0 |    0 |    0 |      0 | pancake alvarofe wargio p4n74 ...                             |
| shlr/bochs   |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                       |
| man          |       3 |   0 |   1 |     0 |    0 |    0 |      0 | pancake                                                       |
'-----------------------------------------------------------------------------------------------------------------------------------'

Contributors: 415 / 46 = ~ 9 commits per contributor

41% - 174 pancake
20% - 83 alvarofe
5% - 22 SchumBlubBlub
4% - 17 maijin
3% - 14 unlogic
2% - 12 wargio
1% - 8 h4ng3r
1% - 8 nibble
1% - 6 xarkes
1% - 5 condr3t
1% - 5 mrmacete
0% - 4 xvilka
0% - 4 osalvador.vilardaga
0% - 4 ret2libc
0% - 3 defragger
0% - 3 me
0% - 3 skuater
0% - 3 laanwj
0% - 3 srimanta.barua1
0% - 2 p4n74
0% - 2 zutle.harh
0% - 2 itaycohen23
0% - 2 jeremy.goldstein+github
0% - 2 ahmedsoliman
0% - 2 sferrini
0% - 2 kazarmy
0% - 2 brainstorm
0% - 1 queueram
0% - 1 dx
0% - 1 thor0505
0% - 1 berne.campbell
0% - 1 vlad
0% - 1 cutlassc91
0% - 1 pankajkiitr.ucs2015
0% - 1 antide.petit
0% - 1 david.polverari
0% - 1 susan78965
0% - 1 Ferrancelades
0% - 1 Nevsor
0% - 1 thelightnet
0% - 1 polsha3
0% - 1 dogtopus
0% - 1 bofh666ftw
0% - 1 aneesh
0% - 1 jkrshnmenon
0% - 1 SztfG

Highlights

Tools

  • r2-indent
    • uses uncrustify and some regexes after it (also supports clang-format)
    • enforces a common indentation syntax across all the codebase (wip)
  • r2-docker
    • supports creating and using a docker image with r2
    • supports debugging linux-x86-32/64
  • Initial support for WebAsm

Usability

  • Show RBin plugin info with rabin2 -L [plugin]
  • rasm2 obeys R2_ARCH and R2_BITS env vars from r2
  • Added warning when loading project with different binary
  • Removed useless elf size flag (-nn) and set normal flag size
  • Enhance graph shortcuts

rabin2

  • Display plugin info in a proper structured way for humans with rabin2 -L [plugin].
  • Fix current rabin2 -L [-j] output.
  • Allow to specify -j before or after -L.

Important Bugs Fixed

  • Fixed r2pipe and RCons grep on Windows
  • Avoid 100% cpu usage in Linux debugger
  • Fix c++ demangler crash
  • Fix ASN1 memory bugs (various overflows)
  • Fix #6770 - Handle ^C in pdr and other search commands
  • Fixes for dalvik and analop (imm/ptr)
  • Fix crash in rabin2 -C for mach0
  • Fix #6806 - Invalid delta diff boundaries

Cleanup

  • Removed many scripts in sys/, use r2pm plz
  • Fixed many crashes, bugs and regressions
  • Remove assert in GNU's AArm64 disassembler
  • Update uncrustify config file
  • Refactoring of z/ and zs
  • Various optimizations for RConsCanvas
  • Rewrote r_anal_type_func_guess (~4x analysis speedup)

Commands

  • Add: dbf - put a breakpoint into every no-return func
  • Added afxX to afl* (which is saved with Ps)
  • Fix #6747 - Implemented @@@= iterator
  • Implement @@/ to temporary set the value of cmd.hit
  • Add rapatch format documentation in wp?
  • pif uses realsize instead of fcn->size
  • New aab command to find basic blocks and identify function heads
  • Vr refresh visual screen
  • Implement aggv like agv, but for the custom graph
  • Implement rabin2 -L [plugin] and iL [plugin]
  • iH support for DEX, MACH0, ELF and PE
  • Implement pxx and pxX for hex-less hexdumps
  • Enhance Vx - visual xrefs browser, with more highlight and less glitches
  • Add Pnx command for project note command parsing
  • New command pdk to disasm a klass

Features

  • Say hello to the new compact hexdump (e!hex.compact)
  • Debian confirms we run on GNU/Hurd - Without debugger or r2k
  • Fix #6818 - json indent ~{} honors scr.color
  • Fix #242 - Implement HFS timestamp in pth
  • Fix #6677 - Quoted multicommands issue
  • Fix #7006 - Support decimal in unit strings (f.ex: 2.3K)
  • Initial commit for parsing RTTI structures
  • Magic database is now compatible with GNU magic (BSD already supported)
  • More instructions supported for ARM, ARM64 and X86
  • Fix #4837 - Support punycode emojis
  • PPC(32/64) ESIL Emulation

Disassembly

  • Fix #6456 - Show cursor in data words
  • Print string references even if they contain special characters like newlines or tabs
  • Fix #6611 - Implement ORR for AArm64
  • Fix #6882 - Tricore byte copy to restore disassembling
  • riscv: Update opcodes from binutils-gdb
  • Update capstone (remove the fix-warns patch)
  • scr.html fixes for disassembly
  • riscv: Return actual instruction length
  • Fix asm.bits when af in arm/thumb

Analysis

  • Detect main pseudo-symbol in more PE and ELF binaries
  • Fix #7000 - ELF file identified as BIOS
  • Fix #3022 - Support OPEX for mips, arm, arm64 and x86
  • Added ARM Thumb ADR instruction to calculate the correct offset
  • Fix issue with arm/thumb bits detection
  • Fixed PC and LEA instruction to correctly resolve references
  • Fix #6884 - Improved ESIL output for various ARM arithmetic instructions
  • Fix #3448 - Add support for multiple-hit signatures
  • use op.stackptr instead of op.val for stack frame size guessing.
  • Enhancements for aab and abb, codename analblaze, using to be O(1) instead of O(n^n) (lulz)
  • Initial implementation of abb - analyze basic blocks in range

Binaries

  • Honor rabin2 -H, -rH, -qH and -jH
  • -HH shows the full header in dexdump/objdump format
  • Added PE overlay flag to r2 -nn and in iI
  • Add ASN1, X.509 and PKCS parsers (+ iC for PE)
  • Optimize ELF Symbol loading (> 4x faster)
  • Implement initial iHH for mach0
  • Parse .NET CLR header structure if found in PE
  • PDB: Add unions support

Downloads

1.2.1

@radare radare released this Feb 5, 2017 · 588 commits to master since this release

Release 1.2.1

Project: radare2
Codename: trustme
Date: Sun Feb 05 2017 11:58:50 GMT+0100 (CET)
Website: http://radare.org
Tarball: https://github.com/radare/radare2/releases

Numbers:

  • commits: 58
  • fix: 33
  • crash: 3
  • new: 2
  • add: 7
  • anal: 4
  • leak: 0
  • esil: 1
  • debug: 3
  • type: 2
  • oob: 3
  • honor: 0
  • update: 1
  • clean: 1
  • import: 0
  • endian: 0
  • indent: 1
  • command: 3
  • enhance: 2
    • diff:
    • add: 2465
    • del: 1892
    • diff: 573
.----------------------------------------------------------------------------------------------------------------------------------.
|                                                          Release 1.2.1                                                           |
|----------------------------------------------------------------------------------------------------------------------------------|
|     name     | commits | fix | add | honor | leak | esil | endian |                           authors                            |
|--------------|---------|-----|-----|-------|------|------|--------|--------------------------------------------------------------|
|              |      58 |  33 |   7 |     0 |    0 |    1 |      0 |                                                              |
| binr/radare2 |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                      |
| binr/rabin2  |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                              |
| binr/radiff2 |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                              |
| binr/rahash2 |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                              |
| libr/debug   |       8 |   5 |   3 |     0 |    0 |    0 |      0 | osalvador.vilardaga pancake 6bx0lm+7siazd414punk polsha3 ... |
| libr/bin     |       6 |   3 |   1 |     0 |    0 |    0 |      0 | pancake alvarofe                                             |
| libr/core    |      32 |  21 |   3 |     0 |    0 |    1 |      0 | pancake 6bx0lm+7siazd414punk alvarofe sven ...               |
| libr/crypto  |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                      |
| libr/cons    |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                              |
| libr/anal    |       6 |   4 |   0 |     0 |    0 |    0 |      0 | pancake 6bx0lm+7siazd414punk mrmacete                        |
| libr/asm     |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                      |
| libr/util    |       6 |   5 |   0 |     0 |    0 |    0 |      0 | pancake alvarofe zutle.harh polsha3 ...                      |
| libr/egg     |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                      |
| libr/io      |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                      |
| shlr/bochs   |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                      |
| man          |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                                      |
'----------------------------------------------------------------------------------------------------------------------------------'

Contributors: 58 / 11 = ~ 5.2727272727272725

60% - 35 pancake
15% - 9 6bx0lm+7siazd414punk
6% - 4 alvarofe
5% - 3 osalvador.vilardaga
3% - 2 zutle.harh
1% - 1 sven
1% - 1 polsha3
1% - 1 bofh666ftw
1% - 1 mrmacete
1% - 1 brainstorm
1% - 1 SztfG

Commits:

Fix #6694 - oobread in P
Release 1.2.1 - Trust me
s/struct r_anal_plugin_t/RAnalPlugin (#6686)
Fix compile warnings (#6687)
Fix newline issue in json
Use disasm_json API instead of RCore.cmd in pdrj/pdfj
pdrj resolves functions like pdfj now
Fix pdfj fixes
Fix pdfj invalid json issue
Fix #6691 - crash in r_strbuf_appendf. missing va_start
Fix #6678 - crash in r2 -d malloc://512 -
Fix reloc type 1 for x86-64 elf
Fix #6676 - rbin warn after re-o
Fix rbin warning when ood after o
Tweak Visual ?help (#6679)
Move o[er]ax to last pos of gpr regs (#6674)
Clean up o?/ob? and use consistent fieldname 'objid' for obj/ob/obo (#6675)
Update ?description for = commands (#6671)
Fix: Fixed regression pointed by #6650 (#6672)
Tweak ?help for scr.nkey (#6669)
Document H> and H>> in ?@? (#6670)
Fix #6665 - show t in V?
Fix mouse paste in some visual cmds when scr.wheel=1 (#6649)
Fix gs regressions
Fix #6643 - Add privileged notes on dockerfile
Use copyfile syscall for OSX in r_file_copy()
Fix many dd subcommands and enhance rarun2 -t
Use SdbHash within inSymtab mach0.c
Coding style fixes
Fix #6635 - oobr due to RNumCalc->calc_buf dereference
Fix #6622 - oobr due to wrong manipulation of iSq
New asm.relsub enhancement
Add rarun2 -t to wait for a tty connection
Fix ddd (dup2) on OSX, also extend the help message
Fixed build on Windows (undefined signals) (#6645)
Disable cmd.repeat by default again (causes conflict with ^C)
Fix build on OSX
Add support non-numeric signal numbers in RRunProfile (#6558)

  • Add support non-numeric signal numbers in RRunProfile
  • Add signal util module
  • Remove old signal_resolve implementation
    Remove the err from anal types.. thats not noreturn
    Fix null deref in reglist() when no anal plugs
    Windows debugger: Added dce command. Fixed dmm commands. (#6628)
  • Use double quotes to make .dmm* work on Windows
  • Fix r2pipe.cmdj('dmmj') command on Windows. Report correct path when listing modules ('dmm')
  • Removed unused local variable
  • Added 'dce' command for windows
  • Escape backslashes for JSON output only
  • Do not include r_debug_native_continue() for CYGWIN builds. Removed unnecessary memset.
  • Added exception for CYGWIN to not escape backslashes in path
  • Escape backslashes in both file paths and map names. Use map name for 'f mod.%s' instead of file path
  • Added more exceptions for CYGWIN
  • Validate escaped strings
    Release 1.2.1
    Fix null deref and infinite loop when building with no plugins
    More builds fixes for less plugins
    Add sys/sdk build script (wip)
    Do not show useless warnings when using raw rbin
    Fix static build
    Remove the use of -ggdb
    Add: coredump refactoring + RDebugMap offset field (#6633)
    Fix build for capstone3 (thanks @xtraeme)
    Fix warnings and reindent ppc stuff
    Fix disassembly issue introduced in ebb75f3
    Use esil when compiled without native debugger
    Fix: #6616 crash in crash core generation
    Removing path in shell redirections
    Fix #4554 stackptr calculation on pdr and graph
  • blocks have their stackptr
  • inherit from parent when visited hierarchically (in pdr and graph)
  • add the global anal->stackptr as a starting value for disasm, defaults to 0
    Introducing WebAssembly (#6613)
    libr/core/cmd.c codestyle fix (#6615)

fixed according to https://github.com/radare/radare2/blob/master/CONTRIBUTING.md

Fixes:

Downloads

Codename: HopeBells

@radare radare released this Jan 30, 2017 · 645 commits to master since this release

Release 1.2.0

Project: radare2
Codename: HopeBells
Date: Sun Jan 29 2017 17:28:48 GMT+0100 (CET)
Website: http://radare.org
Tarball: https://github.com/radare/radare2/releases
Builds: http://cloud.rada.re/get/1.2.0

radare2 1.2.0 comes with 5513 new lines of new features, bug fixes and enhancements. Here some of the most important highlights:

Numbers:

  • commits: 356
  • add: 18725
  • del: 13212
  • diff: 5513

radare2-extras

  • r2snow - new decompiler!
  • Fix and update capstone, unicorn, duktape
  • Yara2 support is deprecated
  • Updated r2k linux/android module
  • Initial support for parsing/printing structures from dwarf info
  • Moved olly from r2 to here
  • Added rust disassembler plugin for 6502

r2core.js

  • pure JS emscripten generated radare2 api
  • available via npm install r2core
  • Use r2 in nodejs or the browser without external dependencies.

Visual mode and Graphs

  • Add shift information in visual bit editor Vd1
  • Add HUD to VB (class/method browser)
  • Hexdump in visual mode uses pxc to display comements.
  • Add experimental horizontal layout and diagonal lines via graph.linemode/layout
  • Show function+delta in visual title
  • Initial support for analyzing and graphing generic switch tables
  • Draw backward lines with up arrow instead of line
  • Enhance Vx visualization

Analysis

  • agf can now be stopped
  • Better ARM64 analysis
  • Stubs mach0 section considered as PLT
  • Support 64bit pointer dereference with ESIL in aae and /re
  • Implemented initial support for 24 bit esil memory operations.
  • add pattern to get winmain from MSVC compiler with SEH
  • Implement afvR and afvW to list var read/write accesses
  • Handle f->bits as anal hints and thumb/arm in aa/aae
  • Add afvj as an alias for afvsj;afvbj;afvrj
  • Add afcc and use afc to sum cycles in a function
  • Add support for Rust in rabin2 to demangle symbol names
  • Speedup aae by ~30%
  • Honor asm.dwarf.file

Disassembler

  • Implement asm.pseudo for PowerPC
  • Update capstone from git (fixes for 68k, arm and x86)
  • Retire x86_olly to r2e
  • Add support for the ARM Cortex CPU instructions (e asm.cpu=cortex)

Assembler

  • Add cmov* support to x86.nz
  • New instructions for the arm64 assembler (add, sub, hvc, smc, svc, mov, ..)
  • For group 1 instructions with AL for op1 and a constant for op2, nz will now generate the shorter opcodes

Debugger

  • Add: dbg.libs/dbg.unlibs for linux
  • Add: support for dbg.follow.child option
  • Improvement of the debugging experience on Linux, Windows x64 and OpenBSD

# File formats

  • Load GameBoy ROM sections
  • WinMain is now detected as main
  • Rust demangler support
  • Parse and load DEX debug source:line information
  • Enhanced DEX headers parser
  • Fixed some null derefs in ELF
  • Implement bin.verbose for ELF, PE and MACH0
  • FatMACH0s are now loaded faster and support bigger files

rahash2

  • Add DES support to rahash2

build system and refactoring

  • Add some hints to optimize asmjs build
  • Add support for SunOS.
  • Add anal.x86_cs for emscripten
  • Remove NDK dependency when BUILD=0 in android-shell
  • Make sys/build.sh accept custom configure flags
  • Implement support for external repositories via r2pm -a
  • Fix mingw32 build

r2k for linux

  • Read/Write kernel address space using multiple layouts:
    • Kernel linear address space
    • Userspace/Proccess linear address space
    • Physical address space
  • Print control registers status
  • Print process info
  • Added cmd alias \ for =! see \? for help
  • Workaround for HARDENED_USERCOPY on newer kernels
  • Add support to disable x86 WP on writes
  • Several minor bugfixes

misc

  • Fix regex overflow on 32bits systems with 720MB patterns
  • create sys/install.sh with su and correct quotes (#6600)
  • Fix somes NULL dereferences in graph.c
  • Use HTTPS for Microsoft symbol server URL
  • Colorize and enhance f= [glob] and kill f==
  • Add help for /r?
  • Properly document ?x ?x+ ?x- in ???
  • Add dmi. and dmi? commands
  • Fix #4528 - radiff2 -UDD to diff pdc
  • Add hex.comments variable to config
  • Add get_comments callback to the core api
  • Add comment printing functionality to px
  • Add pxc
  • Implement RCons.jsonpath.grep via ~{json-path}
  • Implement ~... RCons.hud grep style
  • various improvements in the embeded help (?)
  • Autocomplete afC and fix to a
  • Enable http.sandbox by default
  • Massive improvement on radiff2
  • Add wtf! command
  • Make /r run 3-4 times faster

Fortunes

  • Add cfg.fortunes.clippy option and expose r_core_clippy
  • Add fortunes.creepy
  • Add fortunes.tts
.---------------------------------------------------------------------------------------------------------------------.
|                                                    Release 1.2.0                                                    |
|---------------------------------------------------------------------------------------------------------------------|
|     name     | commits | fix | add | honor | leak | esil | endian |                     authors                     |
|--------------|---------|-----|-----|-------|------|------|--------|-------------------------------------------------|
|              |     356 | 177 |  72 |     4 |    7 |    7 |      1 |                                                 |
| binr/radare2 |       5 |   1 |   5 |     0 |    0 |    0 |      0 | pancake alvarofe                                |
| binr/rabin2  |       8 |   3 |   2 |     0 |    0 |    0 |      0 | alvarofe pancake mail                           |
| binr/radiff2 |       7 |   2 |   2 |     0 |    0 |    0 |      0 | pancake julien.voisin meep mail ...             |
| binr/rahash2 |       0 |   0 |   0 |     0 |    0 |    0 |      0 | pancake                                         |
| libr/debug   |      18 |  10 |   5 |     0 |    1 |    0 |      0 | osalvador.vilardaga pancake skuater xvilka ...  |
| libr/bin     |      36 |  21 |   7 |     3 |    1 |    0 |      0 | pancake alvarofe h4ng3r skuater ...             |
| libr/core    |     169 |  84 |  25 |     0 |    3 |    2 |      0 | pancake alvarofe osalvador.vilardaga maijin ... |
| libr/crypto  |       4 |   1 |   1 |     0 |    0 |    0 |      0 | wargio pancake alvarofe                         |
| libr/cons    |      14 |   8 |   2 |     0 |    0 |    0 |      0 | pancake alvarofe osalvador.vilardaga wargio ... |
| libr/anal    |      47 |  21 |   8 |     0 |    2 |    5 |      0 | pancake alvarofe killabytenow ahmedsoliman ...  |
| libr/asm     |      23 |  11 |   8 |     0 |    0 |    0 |      0 | pancake sven alvarofe                           |
| libr/util    |      39 |  23 |   5 |     1 |    0 |    1 |      0 | pancake alvarofe xvilka mo ...                  |
| libr/egg     |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                 |
| libr/io      |      17 |  11 |   3 |     0 |    0 |    0 |      0 | pancake p4n74 jpenalbae xvilka ...              |
| shlr/bochs   |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                 |
| man          |       5 |   2 |   4 |     0 |    0 |    0 |      0 | pancake mail sven                               |
'---------------------------------------------------------------------------------------------------------------------'

Contributors: 356 / 36 = ~10 commits per contributor

54% - 193 pancake
14% - 51 alvarofe
4% - 15 sven
2% - 8 osalvador.vilardaga
1% - 7 killabytenow
1% - 7 wargio
1% - 7 xvilka
1% - 7 h4ng3r
1% - 6 p4n74
1% - 6 mo
1% - 6 mail
1% - 5 skuater
1% - 4 maijin
0% - 3 meep
0% - 3 ahmedsoliman
0% - 3 laanwj
0% - 3 h
0% - 2 jpenalbae
0% - 2 ninjahackerw
0% - 2 jvoisin
0% - 2 electron.kiwi
0% - 1 securitykitten
0% - 1 kazarmy
0% - 1 fercerpav
0% - 1 guillaume
0% - 1 ditch
0% - 1 eroen
0% - 1 xiaoyinl
0% - 1 mrmacete
0% - 1 venture37
0% - 1 chairkov
0% - 1 polsha3
0% - 1 sre
0% - 1 manouchehri
0% - 1 trogu.davide
0% - 1 cosa.rara97

Downloads

codename: preccc

@radare radare released this Dec 20, 2016 · 1021 commits to master since this release

Project: radare2
Codename: PreCCC
Date: Sun Dec 20 2016 21:46:50 GMT+0100 (CET)
Website: http://radare.org
Tarball: https://github.com/radare/radare2/releases
Binaries: http://cloud.radare.org/get/1.1.0

radare2 1.1.0 comes with moret han 300 commits which are about 8583 new lines of features, bug fixes and enhancements. Most of this work has focused on bugfixing, the most commited modules are Core, Anal and Bin, but there have been lot of commits in other parts in Asm, Hash, Debug, .. Several bugs has been fixed fixed, so it is heavily recomended to update to the last release or use r2 from git directly.

One of the biggest addition for this release is a preprocessor for ragg2 and rasm2 (its replacement, spp, is slowly moving forward), and some cleanup of radare2 sources. A long requested feature, recursive help, has been implemented: you can now get help for every single command with the ?* command.

Nodes in the graphs can be individually folded in the graphs, and asm.cmtright=0 disasm has been greatly improved to make graphs more readable.

There are also news in other repositores. r2k-linux has finally been merged in radare2-extras and it's available via r2pm. Remember that this kernel interface is working on Linux, Android and Windows (32, 64), support for XNU (OSX/iOS) is welcome.

Checksums

9d797adc7bdc18138243333e1ede24cc4108936a  radare2-1.1.0-android-aarch64.tar.gz
0902b70eba0deb9eca67413c6a3013e43e1907a6  radare2-1.1.0-android-arm.tar.gz
1b9b57c4484cbae9183da66c3079bb6da8249ec1  radare2-1.1.0-android-mips.tar.gz
3794f5b8c9452ff39ffb59003462d80cd9b67f2f  radare2-1.1.0-android-x86.tar.gz
9321b9303b44cd4626952b4fbca826e12ca97765  radare2-1.1.0.pkg
2feeeb6cd876182333a814d54b16a4d573202d46  radare2-1.1.0.tar.gz
733525093027a06a753883854dc763bcd6d26ab5  radare2-bindings-1.0.1.tar.gz
717d0317c277127d99bd70cc8bb607053acdc332  radare2-extras-1.1.0.tar.gz
3cf766bbd88eadbe6cb29458b14be9cf60c8783a  radare2-ios-arm64-1.1.0.tar.gz
31d17e55a3e7e4257c8d4b0367bb5591d860f4e7  radare2-r2pipe-1.1.0.tar.gz
06a7fc7b8df1cfedc31289234e97896ff1a9161e  radare2-w32-1.1.0.zip
3d8eba8523171d5f5ff7960bf6156f97d5feefb7  radare2-webui-1.0.tar.gz
5daf952dd60709a4b8bbd46b771c760acc6d8868  radare2_1.1.0_iphoneos-arm.deb

Contributors:

Thanks again to everyone who contributed to the project to make this release possible. But special thanks to Alvaro who have been contributing a lot in this release, unlogic for his work on the assembler and preprocessor integration and maijin for maintaining the tetsuite. Skuater has been in charge of keeping the windows support working.

52% - 152 pancake
15% - 44 alvarofe
5% - 17 maijin
4% - 12 unlogic
2% - 7 killabytenow
1% - 5 p4n74
1% - 4 skuater
1% - 4 cutlassc91
1% - 4 ben.l.gardiner
1% - 4 h4ng3r
1% - 4 osalvador.vilardaga
1% - 3 xvilka
1% - 3 simon
1% - 3 gianluca.pacchiella
1% - 3 sre
1% - 3 defragger
0% - 2 jvoisin
0% - 2 mrmacete
0% - 2 ahmedsoliman
0% - 1 nil0x42
0% - 1 elia.f.geretto
0% - 1 bluec0re
0% - 1 brainstorm
0% - 1 anio
0% - 1 ehntoo
0% - 1 shein
0% - 1 asuarezbm
0% - 1 a.kornitzer
0% - 1 mr.exodia.tpodt
0% - 1 dx
0% - 1 asupalai

New commands

fla to automatically compute the size of all flags matching glob
pdC to show comments found in N instructions
pir is like 'pdr' but with 'pI' output
dmS for listing sections of mapped libraries
?* recursive help
~?. counts chars

New variables

$fl to get the flag length (size) at current address. It's equivalent to fla; pD $l @ entry0

radare2

  • Add autocompletion after @
  • Implement scr.breakword, to stops the console's output upon a particular word.
  • Add $fl in the ?$? help
  • The embeded documentation has been reviewed and improved
  • Implement bin.debase64 and RABIN2_DEBASE64 in RBin for r2 and rabin2

rarun2

  • Support backticks as an alias for !
  • Added pseudo tty for listen and connect

Android

  • Refactoring of the DEX handling code
  • Dalvik analysis and bin parsing enhancements
  • ESIL support for Dalvik

File format

  • Optimize the process of loading fat binaries
  • Add: Initial support for bFLT v4 (uclinux)
  • Add support for ARM64 PE binaries
  • handle more data sections in objc mach files

Build system

  • Several useless ./sys/*.sh scripts have been removed
  • Improve Mingw32 build script

Analysis

  • Honor hints in disasm, anal and emulation
  • fix djnz jump target miscalculation
  • Set ATmega8 MCU by default
  • Fix issue with noreturn analysis
  • Move relocs to the fake virtual address
  • Fixed fcnline issues
  • Various ESIL improvements for a lot of architectures
  • Adds a lot of different function signatures, for every major (and some minor) operating system
  • The DWARF parsing and display speed has been multiplied by 120.
  • Some misc fixes for libmagic
  • Add a syscalls flagspace for aae
  • Properly deinitialize the anal.trace after afta

Debugger and tracer

  • Add option to stop syscall tracing -before- the syscall is executed
  • Register handling refactored and add SN in all reg profiles
  • Autoset swstep in more targets

Architectures

  • Greatly improves AVR support
  • Fixes for z80, x86, arm, dalvik and others

Assemblers

  • values that can be expressed with 4 bits care outputted with shorter instructions.
  • Initial support of linux-arm-32 for ragg2-cc
  • Added spp as a preprocessor for rasm2

Downloads

1.0.2: another minor bugfix release

@radare radare released this Nov 10, 2016 · 1347 commits to master since this release

  • Fix warnings in r2 -AA
  • Fix aeim- deinitialization
  • Add H> HTML pipe
  • Fix some COVs
  • Fix r2k for Android
  • Fix another CORELIB issue
  • Add missing SN entry in the linux-arm64 regprofile

Downloads

1.0.1: minor bugfix after 1.0

@radare radare released this Nov 10, 2016 · 1358 commits to master since this release

This minor release fixes a build issue that some packagers have reported us and fixes the izzj command

Thanks @alvarofe and @stef !

For full changelog see: https://github.com/radare/radare2/releases/tag/1.0

Downloads

radare2-1.0 aka "Finally"

@radare radare released this Nov 9, 2016 · 1361 commits to master since this release

Date: Sun Nov 06 2016 14:34:18 GMT+0100 (CET)
Website: http://radare.org
Tarball: https://github.com/radare/radare2/archive/1.0.tar.gz

radare2 1.0 comes with 20122 new lines of new features, bug fixes and enhancements. Here some of the most important highlights:

The project have finally reached 1.0. What does it mean?

It means that 10 years have passed and the ecosystem changed enough since its inception that it requires a new rethink of the versioning numbers.

Pushing a new release every 6 weeks, increasing 0.1. And adding +1.0 after every r2con. The 3rd version number will be used in case of emergency because of a buggy release or a backported security fix. In this case a +0.0.1 will be released.

The community evolves in a pretty healthy way, and contributors come and leave over time. This release conforms the base for the future of radare, providing a more structured and predictible evolution of features and apis.

In addition. The r2pipe bindings proved to be more than enough for most needs of our users, more stable, available on more languages and faster than the native bindings. So this is the recommended way to script r2 or write tools that interact with it.

Language bindings will be still maintained, but it requires some focus, which is actually low, in the sense that I'm just fixing when the build breaks.

--pancake

Major contributors

  • pancake keeps owning > 50% of the commits
  • alvarofe major contributor, bugfixer
  • mrmacete implemented the long-standing need of recursive emulation support
  • killabytenow kept pushing nice AVR ESIL updates
  • Unlogic focused in RAsm
  • maijin for remembering all the issues and mangling the testsuite
  • h4ng3r worked on fixing bugs in the bin+anal of android apps
  • sre for coming back from debian land

Known Bugs

  • Slow on big files - after analyzing a big file (>1MB) the visual mode can become pretty slow, this can be "optimized" by disabling asm.slow, but it must be approached in a proper way to avoid O(n) requests to Flags, Functions, Basic blocks and other information that is requested many times.
  • Project structure has changed, they are upgraded when saved, but there must happen some data loss. Next releases should improve on that.
  • Collisions in hashtable - some very rare situtations may lead to a hash collision, this is fixed in another branch that updates Sdb, but it's not stable enough to be merged.
  • Debugger is working but could be much better, the main issue is actually the regression test. You may want to use r2frida or r2lldb from NowSecure to debug with r2 when r2 is not enough.
  • Binary headers are not easy to visualize or patch, there are tools for doing that, but next releases will make this situation better.
  • Signature matching is not working as good as it shuold, new signature definitions will appear in the next release, as well as some enhancements and speedups.

Highlights:

  • More commands are now autocompleted
  • Refined and new color themes (CGA!)
  • Added support for menuetOS/KolibriOS binaries
  • Fixed bugs and enhanced PE, MACH0 and ELF parsers
  • COFF symbols are now parsed properly
  • Support DOS4GW executables
  • Implemented sort (by nth column) in the internal grep ~$[n]
  • Projects are now contained into a single directory and support GIT and ZIP integration
  • Fixes in p[?] -X (negative offsets)
  • Add the ?O command to enumerate all mnemonics
  • pdr now supports asm.emu
  • Add CCf to list all comments in current function
  • Added asm.capitalize
  • Initial implementation of io.pava
  • Add ik* command to load bin headers info, and use Cf for that
  • ragg2-cc now supports linux-arm64 via the NDK
  • Support more instructions and various fixes in assemblers
  • Fixed all license issues reported by Debian
  • Allow r2pm to support tarballs, run commands and cd to repos
  • Function signature parameter matching
  • simple recursive emulation in graphs
  • asm.decoff to show offset in base 10 instead of hexa
  • utf8 graphs
  • Better Android support
  • r2k support for linux

r2pipe hightlights

  • NodeJS api broke backward compat but standarized callback consctructions
  • Support asyncawait, promisify and other modern JS stuff
  • Added JNI r2pipe for Java
  • Added DllImport for .NET
  • Add support for Groovy, Clojure, PHP, OCaml
  • Added JSON support for Nim
  • Updated Perl module
  • Support sideloading binaries via r2pipe (via .getBuffer and setBuffer)

Commits:

Autocompletion

  • Add autocompletion for et and ec
  • Add autocompletion for wxf and wtf
  • Autocomplete eco color themes

Themes

  • Complete xvilka theme
  • Enhance white theme
  • Fix dark theme
  • Add new theme CGA
  • Make the lima and pink themes look as lima and pink
  • Update the ogray theme
  • Ansify + update rasta theme

Projects

  • Fix error messages in project_save
  • Fix #6017 - Pn projects notes ported to the new projects
  • Implement project upgrading and remove old code
  • Implement prj.zip and fix prj.git
  • Fix #5141 - Initial support for prj.git
  • Implement prj.files and fix some bugs in project listing and saving
  • Projects are now completely contained inside a single directory
  • Saving/retrieving functions stack in project file (#5973)
  • Fix #5952 - Handle scr.null in projects

File Format

  • Add support for MENUET{00,01,02} binaries
  • Add bin.menuet plugin
  • Fix #6106 - better parsing for COFF
  • Replace mach headers from AAPL to LLVM
  • Fix ELF support for 32-64bit relro relocations
  • Fix Dalvik imports and symbol ordinals
  • Add various symbols in bin_nes

MZ

  • remove check against dos_file_size in mz parser
  • Enhancement of MZ
  • Fix #6045 - Check entrypoint to accept raw MZ bins

Macho

  • Support weak framework libraries in mach0 parsing
  • Add more ARM cpu subtypes for mach0
  • Add ios-cydia32.sh script to build radare2-arm32 cydia package
  • Fix #4556 - use jetsam limit to bypass launchd memory restrictions on iOS

Debugger

  • Send KILL to child on ^C in dc when dbg.consbreak is set
  • Fallback to oo when ood fails
  • Initial implementation of the RDebug.io plugin

Disassembler

  • Update capstone from git
  • Move z80 non-commercial to r2e
  • Remove m68k anal plugin - Gets moved to r2e to be installed with m68k, capstone by default
  • Fix ljmp with immediate segment:offset (#6125)
  • Fix pd -N issue, with correct offset for bw-disassembling (#6016)
  • Rework of X86_INS_XADD. It is now basically an X86_INS_XCHG + add. (#5996)
  • More memory AVR operations (LDS/LPM)
  • Fixed and added opcode descriptions (#5942)
  • Fix opcode for 64bit instr with 32bits regs
  • Accept sreg:[x] and [sreg:x] syntax

MIPS

  • Fix mips emu function resolution in disasm (#6100)

ARM

Commands and evals

  • Massive improvement of pdS
  • Add CCf to list all comments in current function
  • Add Cr command to run commands in meta for disasm
  • Add Sf as an alias for S 0 0 foo mrwx
  • Implement ?O and r_asm_mnemonics() new API
  • Implement ?Od to list all mnemonics + description
  • Implement Po& and 2 -tp to load projects in a thread
  • Add asm.decoff
  • Add asm.capitalize, for those who are nostalgic of softice
  • Initial support for io.pava
  • implement ahb-, ahS-, ...etc
  • Add @@c: as an alias for @@=
  • Add asm.midflags=3 (symalign)
  • Add r2pm ls|cd
  • Add S.-* to remove all sections in current address
  • Fix S-[id]
  • Implement rasm2 -s?
  • Initial implementation of pC (column disasm)
  • Implement @i: for temporary instruction seeks
  • Add ik* command to load bin headers info, and use Cf for that
  • Add asm.minicols config var for pCd
  • Implement column sorting in RCons.grep
  • Now ~: operator support ranges and negative values
    • ~:-1 show last line
    • ~:-2 show line before the last one
    • ~:..3 same as ~:0..3
    • ~:2..8 show lines from 2 to 8
    • ~:2.. show lines from 2 to the end
  • Implement scr.linesleep and scr.pagesize for fancier demo output
  • Honor varsub and relsub with asm.ucase for parse.arm
  • Refactor dmh
  • Implement wts to send data to socket
  • Add dr8 and more commands for the RDebug.io plugin
  • Show instructions in /A and add /A[jq]
  • Use RStack in r_cons_push/pop
  • Fix #5975 - Honor asm.varsub and asm.relsub with asm.ucase
  • Initial import of io.tcp + rsocket cleanup
  • Add bash autocompletion support
  • Fix debruijin arguments meaning and uses (#5914)
  • Fix wxs command
  • Enable graph.nodejmps by default (#5904)
  • Specify row to start sorting with ~$[n]

Fixes

  • Fixes NULL deref and oob
  • Fix coverities
  • Fix pdrj JSON
  • Fix #6126 - r2 -f work with -c
  • Fix wt usage
  • Fix another memleak in pdr (#6059)
  • Fix #5924 - r_flags -> r_flag
  • Update and fix LGPL Z80 disassembler (#6009)
  • Fix #3546 - Enhanced support for RCons line grep
  • Removed strcasestr() and bzero() moved to memset()
  • Fix #5909 - r2 -o is now -k
  • Changed r_list_length to use list->length
  • Changed the code to use C API instead of forking rabin2 or create a new core instance when searching strings.
  • Fix cannot find function at issue on some functions
  • Fix #5986 - use RStack in r_cons_push/pop
  • Fix call xrefs in arm+thumb
  • Fix div by zero with scr.pagesize and matrix theme
  • Fix #5974 - reflines not shown for last disasm line
  • Fix #5992 - Honor ^C in tcp://
  • Fix syscall resolution for linux-arm-64
  • Honor bin.strings
  • Implement http.log and http.logfile
  • Fix #5997 - Do not permit xrefs on invalid addresses
  • Fix #5968 - search string when malloc://X + wx
  • Initial implementation of flag zones
  • Updated various opcode descriptions (#5948)
  • Ease GIT/GPG integration
  • Fix esil manpage
  • Fix issue in aeso
  • Implement support for recursive help ?*
  • Use RIODesc.detach when serving from RCore
  • Implement RIODesc.detach()
  • Fix call rX hotkeys glitch in disasm
  • Add utf8 rune support for RCons.canvas
  • Correct offset for backwards disassembling with pd -N

Radare2 tools

  • Fixing help issues in rax2

rabin2

  • Implement LC_MAIN and PAGEZERO in rabin2 -C mach0
  • Fix filesize for mach0 in rabin2 -C
  • Make more visible the relation between r2's i and rabin2

ragg2

  • Add linux-arm64 sflib support for ragg2-cc
  • Initial support ndk-gcc in ragg2. Tested for arm64

rasm2

  • Add support for .endian rasm2 directive
  • Support /**/ in a single line
  • Fix /**/ comments in rasm2
  • Initial support for .align in rasm2
  • Support /**/ in rasm2 -f
  • Add support for short jumps in nz
  • Add arm shift ops
  • Update and fix LGPL Z80 disassembler
  • Add segment register handling in nz assembler
  • Assemble 64bit byte mov correctly FIX 6042

Analysis

  • Make anal hint printing more grep friendly
  • Fix #5935 - improvements on ah command
  • Actually use arg_size to advance the stack pointer
  • Nice error display: unk_size, unk_format or unk_size_format
  • Fix issues in emuwrite call args in disasm (#6087)
  • Fix #4497 - Recursive function emulation
  • Fix #5860 - axtj relsub (#5964)
  • Fix aei help text (#5949)
  • More AVR anal ops (#5888)
  • Fixed LCALL for x64 (#5930)
  • Fix dd IX instructions - although only seemed to happen on OSX, not on linux.
  • Fix ed op and fdcb ops
  • Fix fd ops with bad type flags
  • Remove invalid instruction "in f, [c]" which is not referenced in http://clrhome.org/table/
  • Fix bad offsets to ops following removed one
  • Set zf on arm (16 / 32 bits) compare (#6024)
  • Add more arm64 regs
  • Fix movk esil
  • Add long-to-double instruction for anal.dalvik
  • Fixing LCALL for x86 16/32 bit (#5910)
  • Fill the op.type field for STOS and LODS on x86.cs
  • Check that register is not memory i.e. [eax] to generate correct opcode
  • Improved ESIL for x86
  • Disable syscall emulation in esil by default
  • Add sync optype and refix the jmphint glitch
  • Added early returns (#6002)
  • Remove invalid anal str for const-class instruction.
  • Fix #5890 - Assume pushed executable addresses as CODE references
  • Fixed LJMP, added support to segments in JMP, fixed LCALL. (#5920)

Graphs

  • Recursive graph emu (wip)
  • Add recursive reg arena in graph
  • Force comments on graph pds
  • because pds works by parsing also the comments
  • especially for emu strings and symbols
  • Add edges in afll Fix #6092#
  • Add indegree and outdegree in afi and afij
  • Use tinyrange to improve times

r2pm

  • Do not recommend to update after r2pm update
  • Add R2PM_TGZ for r2pm
  • Add R2PM_OLDPWD var for r2pm
  • Add R2PM_SUDO and enhance r2pm -c
  • Fix prompt in r2pm cd

Types

  • Fixing some type error and remove old databases
  • Added windows function prototypes
  • Add some libc functions to types info (#6013)
  • Added more functions for linux/osx
  • Use anal types sdb in emuwrite disasm hints (#6086)
  • Resolve function calls and arguments type
  • Add size_t for 32 / 64 bits
  • Change char * to z instead of *z to work with both
  • register and stack calling conventions
  • Fix parsing error with const
  • Add WORD and PADDR in types-windows
  • Add kernel,processes,.. in types-windows
  • Update linux-arm-64 from android definitions

Numbers:

  • commits: 366
  • fix: 186
  • crash: 7
  • new: 8
  • add: 77
  • anal: 18
  • leak: 2
  • esil: 6
  • debug: 7
  • type: 16
  • oob: 7
  • honor: 11
  • update: 13
  • clean: 9
  • import: 2
  • endian: 3
  • indent: 4
  • command: 12
  • enhance: 5
    • diff:
    • add: 45928
    • del: 25806
    • diff: 20122
.---------------------------------------------------------------------------------------------------------------------.
|                                                    Release 1.0.0                                                    |
|---------------------------------------------------------------------------------------------------------------------|
|     name     | commits | fix | add | honor | leak | esil | endian |                     authors                     |
|--------------|---------|-----|-----|-------|------|------|--------|-------------------------------------------------|
|              |     366 | 186 |  77 |    11 |    2 |    6 |      3 |                                                 |
| binr/radare2 |       7 |   5 |   0 |     0 |    0 |    0 |      0 | pancake alvarofe SztfG                          |
| binr/rabin2  |       5 |   1 |   2 |     0 |    0 |    0 |      0 | pancake alvarofe Hi-Angel                       |
| binr/radiff2 |       1 |   1 |   0 |     0 |    0 |    0 |      0 | pancake                                         |
| binr/rahash2 |       1 |   1 |   0 |     0 |    0 |    0 |      0 | pancake                                         |
| libr/debug   |      24 |  10 |   5 |     1 |    0 |    1 |      0 | pancake alvarofe dromero.perez killabytenow ... |
| libr/bin     |      58 |  29 |  14 |     0 |    0 |    1 |      0 | pancake alvarofe h4ng3r maijin ...              |
| libr/core    |     164 |  88 |  31 |     7 |    2 |    1 |      0 | pancake alvarofe mrmacete maijin ...            |
| libr/crypto  |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                 |
| libr/cons    |      24 |  11 |   4 |     1 |    0 |    0 |      0 | pancake alvarofe                                |
| libr/anal    |      86 |  47 |  29 |     3 |    0 |    5 |      0 | pancake alvarofe killabytenow maijin ...        |
| libr/asm     |      42 |  28 |   7 |     0 |    0 |    0 |      2 | pancake sven alvarofe SztfG ...                 |
| libr/util    |      47 |  25 |   8 |     2 |    0 |    0 |      0 | pancake alvarofe ret2libc bluec0re ...          |
| libr/egg     |       2 |   1 |   1 |     0 |    0 |    0 |      0 | pancake alvarofe                                |
| libr/io      |      20 |  11 |   0 |     1 |    0 |    0 |      0 | pancake alvarofe                                |
| shlr/bochs   |       0 |   0 |   0 |     0 |    0 |    0 |      0 |                                                 |
| man          |       3 |   2 |   1 |     0 |    0 |    1 |      0 | pancake sre Hi-Angel                            |
'---------------------------------------------------------------------------------------------------------------------'

Contributors: 366 / 31 = ~ 11.806451612903226

54% - 198 pancake
18% - 66 alvarofe
5% - 21 maijin
4% - 15 killabytenow
2% - 10 mrmacete
2% - 9 unlogic
2% - 8 h4ng3r
1% - 5 ret2libc
1% - 4 SztfG
1% - 4 ahmedsoliman
0% - 3 lottmann86
0% - 2 mr.exodia.tpodt
0% - 2 cutlassc91
0% - 2 mo
0% - 2 sre
0% - 1 defragger
0% - 1 dx
0% - 1 dev+git
0% - 1 maykeye
0% - 1 marion-m
0% - 1 qwokka
0% - 1 noahshihabi
0% - 1 kalianon2816
0% - 1 bluec0re
0% - 1 avinash.mankoo
0% - 1 Krishath
0% - 1 philipp.B.610
0% - 1 Hi-Angel
0% - 1 dromero.perez
0% - 1 alex.darredevil
0% - 1 b1ack0wl

Downloads