├── CONTRIBUTING.md ├── r2.svg ├── LICENSE └── README.md /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | # Contribution Guidelines 2 | 3 | Please ensure your pull request follow to the below guidelines: 4 | 5 | - Please make sure your suggestion is not duplicate. 6 | - Do a pull request for suggestion by providing a Link and Description. 7 | - Feel free to suggest new categories and/or improvements to the existing one. 8 | 9 | Appreciate your contributions and thank you for the suggestions! 10 | -------------------------------------------------------------------------------- /r2.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | image/svg+xml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | CC0 1.0 Universal 2 | 3 | Statement of Purpose 4 | 5 | The laws of most jurisdictions throughout the world automatically confer 6 | exclusive Copyright and Related Rights (defined below) upon the creator and 7 | subsequent owner(s) (each and all, an "owner") of an original work of 8 | authorship and/or a database (each, a "Work"). 9 | 10 | Certain owners wish to permanently relinquish those rights to a Work for the 11 | purpose of contributing to a commons of creative, cultural and scientific 12 | works ("Commons") that the public can reliably and without fear of later 13 | claims of infringement build upon, modify, incorporate in other works, reuse 14 | and redistribute as freely as possible in any form whatsoever and for any 15 | purposes, including without limitation commercial purposes. These owners may 16 | contribute to the Commons to promote the ideal of a free culture and the 17 | further production of creative, cultural and scientific works, or to gain 18 | reputation or greater distribution for their Work in part through the use and 19 | efforts of others. 20 | 21 | For these and/or other purposes and motivations, and without any expectation 22 | of additional consideration or compensation, the person associating CC0 with a 23 | Work (the "Affirmer"), to the extent that he or she is an owner of Copyright 24 | and Related Rights in the Work, voluntarily elects to apply CC0 to the Work 25 | and publicly distribute the Work under its terms, with knowledge of his or her 26 | Copyright and Related Rights in the Work and the meaning and intended legal 27 | effect of CC0 on those rights. 28 | 29 | 1. Copyright and Related Rights. A Work made available under CC0 may be 30 | protected by copyright and related or neighboring rights ("Copyright and 31 | Related Rights"). Copyright and Related Rights include, but are not limited 32 | to, the following: 33 | 34 | i. the right to reproduce, adapt, distribute, perform, display, communicate, 35 | and translate a Work; 36 | 37 | ii. moral rights retained by the original author(s) and/or performer(s); 38 | 39 | iii. publicity and privacy rights pertaining to a person's image or likeness 40 | depicted in a Work; 41 | 42 | iv. rights protecting against unfair competition in regards to a Work, 43 | subject to the limitations in paragraph 4(a), below; 44 | 45 | v. rights protecting the extraction, dissemination, use and reuse of data in 46 | a Work; 47 | 48 | vi. database rights (such as those arising under Directive 96/9/EC of the 49 | European Parliament and of the Council of 11 March 1996 on the legal 50 | protection of databases, and under any national implementation thereof, 51 | including any amended or successor version of such directive); and 52 | 53 | vii. other similar, equivalent or corresponding rights throughout the world 54 | based on applicable law or treaty, and any national implementations thereof. 55 | 56 | 2. Waiver. To the greatest extent permitted by, but not in contravention of, 57 | applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and 58 | unconditionally waives, abandons, and surrenders all of Affirmer's Copyright 59 | and Related Rights and associated claims and causes of action, whether now 60 | known or unknown (including existing as well as future claims and causes of 61 | action), in the Work (i) in all territories worldwide, (ii) for the maximum 62 | duration provided by applicable law or treaty (including future time 63 | extensions), (iii) in any current or future medium and for any number of 64 | copies, and (iv) for any purpose whatsoever, including without limitation 65 | commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes 66 | the Waiver for the benefit of each member of the public at large and to the 67 | detriment of Affirmer's heirs and successors, fully intending that such Waiver 68 | shall not be subject to revocation, rescission, cancellation, termination, or 69 | any other legal or equitable action to disrupt the quiet enjoyment of the Work 70 | by the public as contemplated by Affirmer's express Statement of Purpose. 71 | 72 | 3. Public License Fallback. Should any part of the Waiver for any reason be 73 | judged legally invalid or ineffective under applicable law, then the Waiver 74 | shall be preserved to the maximum extent permitted taking into account 75 | Affirmer's express Statement of Purpose. In addition, to the extent the Waiver 76 | is so judged Affirmer hereby grants to each affected person a royalty-free, 77 | non transferable, non sublicensable, non exclusive, irrevocable and 78 | unconditional license to exercise Affirmer's Copyright and Related Rights in 79 | the Work (i) in all territories worldwide, (ii) for the maximum duration 80 | provided by applicable law or treaty (including future time extensions), (iii) 81 | in any current or future medium and for any number of copies, and (iv) for any 82 | purpose whatsoever, including without limitation commercial, advertising or 83 | promotional purposes (the "License"). The License shall be deemed effective as 84 | of the date CC0 was applied by Affirmer to the Work. Should any part of the 85 | License for any reason be judged legally invalid or ineffective under 86 | applicable law, such partial invalidity or ineffectiveness shall not 87 | invalidate the remainder of the License, and in such case Affirmer hereby 88 | affirms that he or she will not (i) exercise any of his or her remaining 89 | Copyright and Related Rights in the Work or (ii) assert any associated claims 90 | and causes of action with respect to the Work, in either case contrary to 91 | Affirmer's express Statement of Purpose. 92 | 93 | 4. Limitations and Disclaimers. 94 | 95 | a. No trademark or patent rights held by Affirmer are waived, abandoned, 96 | surrendered, licensed or otherwise affected by this document. 97 | 98 | b. Affirmer offers the Work as-is and makes no representations or warranties 99 | of any kind concerning the Work, express, implied, statutory or otherwise, 100 | including without limitation warranties of title, merchantability, fitness 101 | for a particular purpose, non infringement, or the absence of latent or 102 | other defects, accuracy, or the present or absence of errors, whether or not 103 | discoverable, all to the greatest extent permissible under applicable law. 104 | 105 | c. Affirmer disclaims responsibility for clearing rights of other persons 106 | that may apply to the Work or any use thereof, including without limitation 107 | any person's Copyright and Related Rights in the Work. Further, Affirmer 108 | disclaims responsibility for obtaining any necessary consents, permissions 109 | or other rights required for any use of the Work. 110 | 111 | d. Affirmer understands and acknowledges that Creative Commons is not a 112 | party to this document and has no duty or obligation with respect to this 113 | CC0 or use of the Work. 114 | 115 | For more information, please see 116 | 117 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Awesome Radare2 [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) 2 | 3 | [](http://rada.re/) 4 | 5 | A curated list of awesome projects, articles and the other materials powered by Radare2. 6 | 7 | ## What is Radare2? 8 | 9 | Radare is a portable reversing framework that can... 10 | 11 | - Disassemble (and assemble for) many different architectures 12 | - Debug with local native and remote debuggers (gdb, rap, r2pipe, winedbg, windbg, ...) 13 | - Run on Linux, *BSD, Windows, OSX, Android, iOS, Solaris and Haiku 14 | - Perform forensics on filesystems and data carving 15 | - Be scripted in Python, Javascript, Go and more 16 | - Visualize data structures of several file types 17 | - Patch programs to uncover new features or fix vulnerabilities 18 | - Use powerful analysis capabilities to speed up reversing 19 | - Aid in software exploitation 20 | 21 | More info [here](http://rada.re/). 22 | 23 | ### Table of Contents 24 | 25 | - [Books](#books) 26 | - [Videos](#videos) 27 | + [Recordings](#recordings) 28 | + [Asciinemas](#asciinemas) 29 | + [Conferences](#conferences) 30 | - [Slides](#slides-and-workshops) 31 | - [Tutorials and Blogs](#tutorials-and-blogs) 32 | - [Tools](#tools) 33 | - [Scripts](#scripts) 34 | - [Contributing](#contributing) 35 | 36 | 37 | # Awesome Radare2 Materials 38 | 39 | ## Books 40 | 41 | - [R2 "Book"](https://legacy.gitbook.com/book/radare/radare2book/details) 42 | - [Radare2 Explorations](https://legacy.gitbook.com/book/monosource/radare2-explorations/details) 43 | - [Radare2 wiki](http://r2wiki.readthedocs.io/en/latest/) 44 | - [Binary Analysis Course](https://maxkersten.nl/binary-analysis-course/) 45 | 46 | ## Videos 47 | 48 | ### Recordings 49 | 50 | - [r2pipe - connector to r2](https://www.youtube.com/watch?v=xGn_xbb28mE) 51 | - [Solving a Self-modifying Crackme with r2pipe EMU vs DBG vs XOR](https://www.youtube.com/watch?v=ODCNbM9_U4M) 52 | - [Creating a keygen for FrogSek KGM#1](https://www.youtube.com/watch?v=4xGAwI10VNM) - by @binaryheadache 53 | - [Radare2 - An Introduction with a simple CrackMe - Part 1](https://www.youtube.com/watch?v=8dXhrOEGHTY) - by @antojosep007 54 | - [Introduction To Reverse Engineering With Radare2](https://www.youtube.com/watch?v=LAkYW5ixvhg) 55 | - [Scripting radare2 with python for dynamic analysis - TUMCTF 2016 Zwiebel part 2](https://www.youtube.com/watch?v=y69uIxU0eI8) 56 | - [Solving a Crackme with Cutter and Z3](https://www.youtube.com/watch?v=oNGLIkSUgQo) 57 | - [Handling self modifying code (SMC) with radare2](https://www.youtube.com/watch?v=BBWtpBZVJvQ) 58 | - [Introduction to r2dec](https://www.youtube.com/watch?v=zc8AC5LWvOU) 59 | - [radare2 explained - write over](https://www.youtube.com/watch?v=8GsiQWVlyLg) 60 | - [radare2 explained - Text transformations](https://www.youtube.com/watch?v=pkUw4oX96Fw) 61 | - [Solving "Dialtone" from Google CTF 2019 Quals using Cutter](https://www.youtube.com/watch?v=B3kz_yzNjEw) 62 | 63 | ### Asciinemas 64 | 65 | - [metasploit x86/shikata_ga_nai decoder using r2pipe and ESIL](https://asciinema.org/a/26594) 66 | - [ESIL for Windows programm (IOLI-crackme 0x02)](https://asciinema.org/a/42850) 67 | - [Filter for string's searching (urls, emails)](https://asciinema.org/a/b429iwj4cx5ixpba4l01qxzmk) 68 | - [Manual unpacking UPX on linux 64-bit](https://asciinema.org/a/bei8od5pxnihypp0j91o4ukj0) 69 | - [radare2 classes recovery from rtti itanium](https://asciinema.org/a/201053) 70 | - [example of finding ROP gadgets in dyld library cache](https://asciinema.org/a/IVqUALBLZOxkZu3agxkRydlSn) 71 | 72 | ### Conferences 73 | 74 | - [HITB2019AMS - Overcoming Fear: Reversing with radare2](https://www.youtube.com/watch?v=317dNavABKo) - by @arnaugamez 75 | - [r2con 2019 - videos](https://www.youtube.com/watch?v=yTXNTRV3KbQ&list=PLjIhlLNy_Y9OVAEI5KYs_4jSStmTy-24l), [r2con 2019 - materials](https://github.com/radareorg/r2con2019) 76 | - [r2con 2018](https://www.youtube.com/watch?v=hzz0qTIynPI&list=PLjIhlLNy_Y9Po69BDCTEnrKvwLneSkG26) 77 | - [r2con 2017](https://www.youtube.com/watch?v=URyd4bcV-Ik&list=PLjIhlLNy_Y9Oe-nfcPEpaki0_En5dhQ5S) 78 | - [LinuxDays 2017 - Disassembling with radare2](https://www.youtube.com/watch?v=zhQ1GhlgCMY) 79 | - [SUE 2017 - Reverse Engineering Embedded ARM Devices](https://www.youtube.com/watch?v=oXSx0Qo2Upk) 80 | - [radare demystified (33c3)](https://www.youtube.com/watch?v=fnpBy3wWabA) 81 | - [r2con 2016](https://www.youtube.com/watch?v=QVjrqlo5A9g&list=PLjIhlLNy_Y9O62rjwYD48pVER0EVh1-aU) 82 | - [Reversing with Radare2 - OverDrive Conference](https://www.youtube.com/watch?v=GTreWP1lPzU) 83 | - [Radare2 & frida hack-a-ton 2015](https://vimeo.com/151753106) 84 | - [Radare from A to Z 2015](https://vimeo.com/151753230) 85 | - [Reverse engineering embedded software using Radare2 - Linux.conf.au 2015](https://www.youtube.com/watch?v=R3sGlzXfEkU) 86 | - [OggCamp - Shellcode - vext01](http://blip.tv/file/get/Oggcamp-ReversingShell888.mp4) 87 | - [radare2 In Conversation - Richard Seymour](https://www.youtube.com/watch?v=Fqr19rpcY1w) 88 | - [recon2017 - Bubble Struggle Call Graph Visualization with Radare2 - by mari0n](https://www.youtube.com/watch?v=ofRP2PorryU) 89 | 90 | ## Slides and Workshops 91 | 92 | - [Radare2 cheat-sheet](https://github.com/zxgio/r2-cheatsheet) 93 | - [r2m2 - radare2 + miasm2 = ♥](https://guedou.github.io/r2m2_talks/2016_r2con/slides.pdf) 94 | - [Radare2 Workshop 2015 (Defcon)](https://github.com/maijin/workshop2015) 95 | - [Emulating Code In Radare2](http://radare.org/get/lacon2k15-esil.pdf) 96 | - [Radare from A to Z 2015](http://radare.org/get/RadareAZ-NN2015.pdf) 97 | - [Radare2 Workshop 2015 (Hack.lu)](http://2015.hack.lu/archive/2015/radare2-workshop/) 98 | - [Radare2 & frida hack-a-ton 2015](http://lolcathost.org/b/radare2-ncn2015-hack-a-ton.pdf) 99 | - [radare2: evolution](http://rada.re/get/lacon2k11.pdf) 100 | - [radare2: from forensics to bindiffing ](http://radare.org/get/rooted2011.pdf) 101 | - [ESIL, the Universal IL for radare2 (ZeroNights)](https://www.slideshare.net/AntonKochkov/slidesen) 102 | - [Brief intro to RE using @radareorg](https://github.com/arnaugamez/talks/tree/master/2018/02_noconname-lab) 103 | 104 | ## Tutorials and Blogs 105 | 106 | - [Configuring and running radare2 on mobile Android phones](http://www.blackstormsecurity.com/docs/radare2_arm.pdf) 107 | - [Arbitrary Code Guard vs. Kernel Code Injections](https://www.countercraft.eu/blog/post/arbitrary-vs-kernel/) 108 | - [Radare2 Practical Guide](https://koffiedrinker.be/notes/radare2_practical_guide/) - by @koffiezuiper 109 | - [Radare2 Supporting a new architecture](https://koffiedrinker.be/notes/radare2_cpu_architecture/) - by @koffiezuiper 110 | - [Reversing a Self-Modifying Binary with radare2](https://www.megabeets.net/reversing-a-self-modifying-binary-with-radare2/) - by @megabeets_ 111 | - [Linux Malware by @MalwareMustDie](https://www.reddit.com/r/LinuxMalware/) 112 | - [Radare2 - Using Emulation To Unpack Metasploit Encoders](https://blog.xpnsec.com/radare2-using-emulation-to-unpack-metasploit-encoders/) - by @_xpn_ 113 | - [Reverse engineering a Gameboy ROM with radare2](https://www.megabeets.net/reverse-engineering-a-gameboy-rom-with-radare2/) - by @megabeets_ 114 | - [radare2 as an alternative to gdb-peda](https://monosource.github.io/2016/10/26/radare2-peda/) 115 | - [How to find offsets for v0rtex (by Siguza)](https://gist.github.com/uroboro/5b2b2b2aa1793132c4e91826ce844957) 116 | - [Debugging a Forking Server with r2](https://blankhat.blogspot.ru/2018/01/debugging-forking-server-with-r2_1.html) 117 | - [Defeating IOLI with radare2 in 2017](https://dustri.org/b/defeating-ioli-with-radare2-in-2017.html) 118 | - [Using r2 to analyse Minidumps](http://radare.today/posts/minidump/) 119 | - [Android malware analysis with Radare: Dissecting the Triada Trojan](https://www.nowsecure.com/blog/2016/11/21/android-malware-analysis-radare-triada-trojan/) 120 | - [Reversing EVM bytecode with radare2](https://blog.positive.com/reversing-evm-bytecode-with-radare2-ab77247e5e53) 121 | - [Radare2’s Visual Mode](https://moveax.me/radare2-visual-mode/) 122 | - [Crackme0x03 Dissected with Radare2](https://moveax.me/crackme0x03/) 123 | - [Crackme0x02 Dissected with Radare2](https://moveax.me/crackme0x02/) 124 | - [Crackme0x01 Dissected with Radare2](https://moveax.me/crackme0x01/) 125 | - [Debugging Using Radare2… and Windows!](https://goggleheadedhacker.com/blog/post/5) - by @jacob16682 126 | - [Decrypting APT33’s Dropshot Malware with Radare2 and Cutter – Part 1](https://www.megabeets.net/decrypting-dropshot-with-radare2-and-cutter-part-1/) - by @megabeets_ 127 | - [Decrypting APT33’s Dropshot Malware with Radare2 and Cutter – Part 2](https://www.megabeets.net/decrypting-dropshot-with-radare2-and-cutter-part-2/) - by @megabeets_ 128 | - [A journey into Radare 2 – Part 2: Exploitation](https://www.megabeets.net/a-journey-into-radare-2-part-2/) - by @megabeets_ 129 | - [A journey into Radare 2 – Part 1: Simple crackme](https://www.megabeets.net/a-journey-into-radare-2-part-1/) - by @megabeets_ 130 | - [Reverse Engineering With Radare2](https://insinuator.net/tag/radare2/) - by @insinuator 131 | - [radare2 redux: Single-Step Debug a 64-bit Executable and Shared Object](http://davidjwalling.blogspot.ru/2016/10/radare2-redux-single-step-debug-64-bit.html) 132 | - [Reversing and Exploiting Embedded Devices: The Software Stack (Part 1)](https://p16.praetorian.com/blog/reversing-and-exploiting-embedded-devices-part-1-the-software-stack) 133 | - [Binary Bomb with Radare2](https://www.unlogic.co.uk/2016/04/12/binary-bomb-with-radare2-prelude/) - by @binaryheadache 134 | - [crackserial_linux with radare2](https://www.unlogic.co.uk/2016/06/13/crackserial_linux-with-radare2/#crackserial_linux-with-radare2) - by @binaryheadache 135 | - [Examining malware with r2](https://www.unlogic.co.uk/2017/06/28/examining-malware-with-r2/) - by @binaryheadache 136 | - [Breaking Cerber strings obfuscation with Python and radare2](http://aassfxxx.infos.st/article26/breaking-cerber-strings-obfuscation-with-python-and-radare2) - by @aaSSfxxx 137 | - [Radare2 of the Lost Magic Gadget](https://0xabe.io/howto/exploit/2016/03/30/Radare2-of-the-Lost-Magic-Gadget.html) - by @0xabe_io 138 | - [Radare 2 in 0x1E minutes](https://blog.techorganic.com/2016/03/08/radare-2-in-0x1e-minutes/) - by @superkojiman 139 | - [Pwning With Radare2](https://crowell.github.io/blog/2014/11/23/pwning-with-radare2/) - by @crowell 140 | - [How to radare2 a fake openssh exploit](https://dustri.org/b/how-to-radare2-a-fake-openssh-exploit.html) - by jvoisin 141 | - [Disassembling 6502 code with Radare – Part I](https://retro.moe/2015/11/18/disassembling-6502-code-with-radare-part-i/) - by @ricardoquesada 142 | - [Disassembling 6502 code with Radare – Part II](https://retro.moe/2015/12/09/disassembling-6502-core-with-radare-part-ii/) - by @ricardoquesada 143 | - [Unpacking shikata-ga-nai by scripting radare2](http://radare.today/posts/unpacking-shikata-ga-nai-by-scripting-radare2/) 144 | - [This repository contains a collection of documents, scripts and utilities that will allow you to use IDA and R2](https://github.com/radare/radare2ida) 145 | - [Raspberry PI hang instruction](https://www.nowsecure.com/blog/2015/08/16/raspberry-pi-hang-instruction/) - by @pancake 146 | - [Reverse Engineering With Radare2, Part 1](https://samsymons.com/blog/reverse-engineering-with-radare2-part-1/) - by @sam_symons 147 | - [Simple crackme with Radare2](http://remchp.com/blog/?p=126) - by @futex90 148 | - [Pwning With Radare2](http://crowell.github.io/blog/2014/11/23/pwning-with-radare2/) - by @crowell 149 | - [Reversing the FBI malware's payload (shellcode) with radare2](https://www.reddit.com/r/ReverseEngineering/comments/2de2ud/reversing_the_fbi_malwares_payload_shellcode_with/) - by @MalwareMustDie 150 | - [ROPping to Victory](https://jmpesp.me/rop-emporium-ret2win-with-radare-and-pwntools/) 151 | - [ROPping to Victory - Part 2, split](https://jmpesp.me/ropping-to-victory-part-2-split/) 152 | - [Radare2 IO plugin tutorial](https://wenzel.github.io/2018/04/15/radare2-io-plugin-tutorial.html) 153 | - [Unpacking Executables - The ESP Trick](https://goggleheadedhacker.com/blog/post/6) 154 | - [Linux Malware Analysis — Why Homebrew Encryption is Bad](https://goggleheadedhacker.com/blog/post/4) 155 | - [Writing A Malware Config Parser Using Radare2 And Ruby](https://boozallenmts.com/resources/news/writing-malware-config-parser-using-radare2-and-ruby) 156 | - [Hackaday Superconference Badge Hacking](https://citizengadget.com/post/167530351112/hackaday-superconference-badge-hacking) 157 | - [OnePlus Device Root Exploit: Backdoor in EngineerMode App for Diagnostics Mode](https://www.nowsecure.com/blog/2017/11/14/oneplus-device-root-exploit-backdoor-engineermode-app-diagnostics-mode/) 158 | - [GSoC 2018 Final: Debugging and Emulation Support for Cutter](http://radare.today/posts/cutter_debug/) 159 | - [GSoC 2018 Final: Console Interface Improvementes](http://radare.today/posts/cli_improvements/) 160 | - [GSoC 2018 Radeco Pseudo C Code Generation](http://radare.today/posts/gsoc_2018_radeco_pseudo_c_code_generation/) 161 | - [GSoC'18 Final: Type inference](http://radare.today/posts/type_inference/) 162 | - [Easy way for analyzing the GootKit banking malware with radare2](http://reversingminds-blog.logdown.com/posts/7369479where) - by @D00RT 163 | - [Decrypting Mirai Configuration With Radare2 (Part 1)](https://www.taintedbits.com/2018/09/03/decrypting-mirai-configuration-with-radare2-part-1/) 164 | - [Decrypting Mirai Configuration With Radare2 (Part 2)](https://www.taintedbits.com/2018/09/15/decrypting-mirai-configuration-with-radare2-part-2/) 165 | - [Reversing Bushido IOT Botnet by ZullSec](https://www.taintedbits.com/2018/09/02/reversing-bushido-iot-botnet-by-zullsec/) 166 | - [Emulating Decryption Function With Radare2](https://www.taintedbits.com/2018/08/15/emulating-decryption-function-with-radare2/) 167 | - [Automating RE Using r2pipe](https://goggleheadedhacker.com/blog/post/8) 168 | - [Unstacking Strings with Cutter and Radare2](https://securitykitten.github.io/2018/07/06/unstacking-strings-with-cutter-and-radare2.html) 169 | - [English Report of "FHAPPI Campaign" : FreeHosting APT PowerSploit Poison Ivy](http://blog.0day.jp/p/english-report-of-fhappi-freehosting.html) 170 | - [Binary patching and intro to assembly with r2](https://www.leungs.xyz/reversing/2018/06/18/radare2-binary-patching-introduction.html) 171 | - [Ground Zero: Part 3-2 – Reverse Engineering – Patching Binaries with Radare2 – ARM64](https://scriptdotsh.com/index.php/2018/08/13/reverse-engineering-patching-binaries-with-radare2-arm-aarch64/) 172 | - [Intro to radare2 for malware analysi](https://malwology.com/2018/11/30/intro-to-radare2-for-malware-analysis/) - by @asoni 173 | - [Intro to cutter for malware analysis](https://malwology.com/2019/03/14/intro-to-cutter-for-malware-analysis/) - by @asoni 174 | - [Binary Analysis with Jupyter and Radare2](https://isc.sans.edu/forums/diary/Binary+Analysis+with+Jupyter+and+Radare2/24748/) 175 | - [Down the Rabbit Hole - Part II: Analyzing an EFI Application with Radare2](https://erfur.github.io/down_the_rabbit_hole_pt2/) - by @ihavelotsofspac 176 | - [Down the Rabbit Hole - Part III: Patching the Whitelist](https://erfur.github.io/down_the_rabbit_hole_pt3/) - by @ihavelotsofspac 177 | - [Reversing C code in x64 systems with Radare2 part I](http://ly0n.me/2019/01/10/reversing-c-code-in-x64-systems-with-radare2-part-i/) 178 | - [Reversing x64 linux code with Radare2 part II](http://ly0n.me/2019/01/14/reversing-x64-linux-code-with-radare2-part-ii/) 179 | - [Deobfuscating APT32 Flow Graphs with Cutter and Radare2](https://research.checkpoint.com/deobfuscating-apt32-flow-graphs-with-cutter-and-radare2/) 180 | - [Intro to Reversing iOS Swift Apps with radare2](https://grepharder.github.io/blog/0x01_intro_to_reversing_ios_swift_apps_with_radare2.html) 181 | - [MMD-0064-2019 - Linux/AirDropBot](https://blog.malwaremustdie.org/2019/09/mmd-0064-2019-linuxairdropbot.html) 182 | - [Dynamic Instrumentation: Frida And r2frida For Noobs](https://bananamafia.dev/post/r2frida-1/) 183 | 184 | ## CTF Writeups 185 | - [Reversing MalwareTech challenge with Radare2 and inline assembly](https://prsecurity.org/reversing-malwaretech-challange-with-radare2-and-inline-assembly/) 186 | - [Solving avatao's "R3v3rs3 4"](https://github.com/sghctoma/writeups/blob/master/hacktivity2015-avatao/01-reverse4/01-reverse4.md) - by @sghctoma 187 | - [Solving ‘heap’ from defcon 2014 qualifier with r2](https://www.securityartwork.es/2015/12/16/head-defcon-2/) - by @alvaro_fe 188 | - [Exploiting ezhp (pwn200) from PlaidCTF 2014 with radare2](https://dustri.org/b/exploiting-ezhp-pwn200-from-plaidctf-2014-with-radare2.html) 189 | - [Write-ups from RHME3 pre-qualifications at RADARE2 conference](https://www.riscure.com/blog/write-ups-rhme3-pre-qualifications-radare2-conference/) 190 | - [Hackover CTF 2016 - tiny_backdoor writeup](http://karabut.com/hackover-ctf-2016-tiny_backdoor-writeup.html) 191 | - [Baleful was a challenge relased in picoctf](http://lolcathost.org/b/BalefulRadare_EN_part_1of2.pdf) 192 | - [At Gunpoint Hacklu 2014 With Radare2](https://crowell.github.io/blog/2014/11/23/at-gunpoint-hacklu-2014-with-radare2/) - by @crowell 193 | - [Solving game2 from the badge of Black Alps 2017 with radare2](https://dustri.org/b/solving-game2-from-the-badge-of-black-alps-2017-with-radare2.html) 194 | - [ROPEmporium: Pivot 64-bit CTF Walkthrough With Radare2](http://radiofreerobotron.net/blog/2017/12/04/ropemporium-pivot-ctf-walkthrough2/) 195 | - [ROPEmporium: Pivot 32-bit CTF Walkthrough With Radare2](http://radiofreerobotron.net/blog/2017/11/23/ropemporium-pivot-ctf-walkthrough/) 196 | - [Gynvael - Mission 22 - Solution](https://ctfs.ghost.io/gynvael-mission-22-solution/) 197 | - [Xiomara CTF 2018 - Slammer](https://jbzteam.github.io/xiomaractf2018/Slammer) 198 | - [mrmcd ctf 2017 - once_upon_a_time](https://github.com/chrysh/ctf_writeups/tree/master/mrmcd_ctf_2017/once_upon_a_time) 199 | - [Pinky's Palace siege](https://capsop.com/itsec/english/ctf/vulnhub/2018/09/17/Pinkys-Palace-siege.html) 200 | - [Introduction to Reverse Engineering with radare2 Cutter - Part I](https://www.jamieweb.net/blog/radare2-cutter-part-1-key-terminology-and-overview/) 201 | - [Introduction to Reverse Engineering with radare2 Cutter - Part II](https://www.jamieweb.net/blog/radare2-cutter-part-2-analysing-a-basic-program/) 202 | - [Introduction to Reverse Engineering with radare2 Cutter - Part III](https://www.jamieweb.net/blog/radare2-cutter-part-3-solving-a-crackme-challenge/) 203 | - [Android OWASP crackmes: Write-up UnCrackable Level 2](https://enovella.github.io/android/reverse/2017/05/20/android-owasp-crackmes-level-2.html) 204 | 205 | ## Tools 206 | 207 | - [Docker image encapsulates the reverse-engineering framework](https://hub.docker.com/r/remnux/radare2/) 208 | - [Malfunction - Malware Analysis Tool using Function Level Fuzzy Hashing](https://github.com/Dynetics/Malfunction) 209 | - [rarop - graphical ROP chain builder using radare2 and r2pipe](https://github.com/jpenalbae/rarop) 210 | - [Radare2 and Frida better together](https://github.com/nowsecure/r2frida) 211 | - [r2frida wiki](https://github.com/enovella/r2frida-wiki) 212 | - [Android APK analyzer based on radare2](https://github.com/mhelwig/apk-anal) 213 | - [Cutter - A Qt and C++ GUI for radare2](https://github.com/radareorg/cutter) 214 | - [Fuzzing tool (TFuzz): a fuzzing tool based on program transformation](https://github.com/HexHive/T-Fuzz) 215 | - [Radare2 VMI IO and debugger plugins](https://github.com/Wenzel/r2vmi) 216 | - [Radare2 module for Yara](https://r2yara.readthedocs.io/en/latest/) 217 | - [predator - genetic Algorithm in C++ to evolve assembly opcodes to harm the linux system in order to identify red flags or vulnerabilities](https://github.com/sha0coder/predator) 218 | - [radare2 + miasm2](https://github.com/guedou/r2m2) 219 | - [Use angr inside the radare2 debugger. Create an angr state from the current debugger state.](https://github.com/andreafioraldi/r2angrdbg) 220 | - [Bootloader research tools (very much a work in progress)](https://github.com/bx/bootloader_instrumentation_suite) 221 | - [ICSREF: ICS Reverse Engineering Framework](https://github.com/momalab/ICSREF) 222 | - [Extract labels from IDA .lst or Ghidra .csv file and export x64dbg database. Supporting radare2](https://github.com/utkonos/lst2x64dbg) 223 | - [Deep ghidra decompiler integration for radare2](https://github.com/radareorg/r2ghidra-dec) 224 | 225 | ## Scripts 226 | 227 | - [r2kit - a set of scripts for a radare-based malware code analysis workflow](https://github.com/cmatthewbrooks/r2kit) - by @cmatthewbrooks 228 | - [Malware analysis toolbox](https://github.com/redmed666/malware_analysis_tools) 229 | - [helper radare2 script to analyze UEFI firmware modules](https://github.com/mytbk/radare-uefi) 230 | - [ThinkPwn Scanner](https://github.com/Cr4sh/ThinkPwn/blob/master/scan_thinkpwn.py) - by @d_olex and @trufae 231 | - [radare2-lldb integration](https://github.com/nowsecure/r2lldb) 232 | - [create a YARA signature for the bytes of the current function](https://gist.github.com/cmatthewbrooks/ea38729ec5f69c8c7c966d3e37016020) 233 | - [A radare2 Plugin to perform symbolic execution with a simple macro call (r2 + angr)](https://github.com/gast04/r4ge) 234 | - [Just a simple radare2 Jupyter kernel](https://github.com/guedou/jupyter-radare2) 235 | - [r2scapy - a radare2 plugin that decodes packets with Scapy](https://github.com/guedou/r2scapy) 236 | - [A plugin for Hex-Ray's IDA Pro and radare2 to export the symbols recognized to the ELF symbol table](https://github.com/danigargu/syms2elf) 237 | - [radare2 plugin - converts asm to pseudo-C code (experimental)](https://github.com/wargio/r2dec-js) 238 | - [A python script using radare2 for decrypt and patch the strings of GootKit malware](https://github.com/d00rt/gootkit_string_patcher) 239 | - [Collection of scripts for radare2 for MIPS arch](https://github.com/mrmacete/r2scripts/) 240 | - [Extract functions and opcodes with radare2](https://github.com/andrewaeva/strange-functions) - by @andrewaeva 241 | - [r2-ropstats - a set of tools based on radare2 for analysis of ROP gadgets and payloads](https://github.com/shaded-enmity/r2-ropstats) 242 | - [Patch kextd using radare2](https://github.com/Tyilo/kextd_patcher) 243 | - [Python-r2pipe script that draws ascii and graphviz graphs of library dependencies](https://github.com/radare/radare2-r2pipe/blob/master/python/examples/libgraph.py) 244 | - [Simple XOR DDOS strings deobfuscator](https://github.com/jpenalbae/r2-scripts/tree/master/ddos-xor-deobfuscator) - by @NighterMan 245 | - [Decode multiple shellcodes encoded with msfencode](https://github.com/jpenalbae/r2-scripts/tree/master/msfdecoder) - by @NighterMan 246 | - [Baleful CTF task plugins](https://github.com/radare/radare2-extras/tree/master/baleful) 247 | - [Integration of pwntools and radare2](https://bannsecurity.com/index.php/tutorials/48-integration-of-pwntools-and-radare2) 248 | - [r2scapy - a radare2 plugin that decodes packets with Scapy](https://github.com/guedou/r2scapy) - by @guedou 249 | - [Deobfuscation of API calls in Bitpaymer (v2)](https://github.com/mauronz/malware_analysis/blob/master/deobf_bitpaymer_cutter.py) 250 | - [Prints agx (cross reference graph) with 2 caller levels](https://github.com/apasamar/radare_stuff/blob/master/agx_depth.py) 251 | - [radare2 script to autoname functions by taking it from the assert calls](https://gist.github.com/radare/04612d3804fa72c0cc832d06208cadaf) 252 | - [r2 plugin to read/write memory using the checkm8 exploit](https://github.com/radareorg/radare2-extras/tree/master/checkm8) 253 | 254 | ## Contributing 255 | 256 | [Please refer the guidelines at contributing.md for details](CONTRIBUTING.md). 257 | --------------------------------------------------------------------------------