
radare2 v6.2.2
UNIX-जैसा रिवर्स इंजीनियरिंग फ्रेमवर्क और कमांड-लाइन टूलसेट
Radare2: यूनिक्स गीक्स के लिए लिब्रे रिवर्सिंग फ्रेमवर्क
वर्तमान git master शाखा 6.2.2 है, अगला रिलीज़ 6.2.4 होगा।
विवरण
r2 radare का एक पूर्ण पुनर्लेखन है। यह रिवर्स इंजीनियरिंग कार्यों को आसान बनाने के लिए पुस्तकालयों, उपकरणों और प्लगइन्स का एक सेट प्रदान करता है। LGPLv3 के तहत वितरित, हालांकि प्रत्येक प्लगइन के अलग-अलग लाइसेंस हो सकते हैं (विवरण के लिए r2 -Lj देखें)
radare परियोजना फोरेंसिक पर केंद्रित एक सरल कमांड-लाइन हेक्साडेसिमल संपादक के रूप में शुरू हुई। आज, r2 एक पूर्ण-विशेषताओं वाला निम्न-स्तरीय कमांड-लाइन उपकरण है जो एम्बेडेड Javascript इंटरप्रेटर या r2pipe के माध्यम से स्क्रिप्टिंग का समर्थन करता है।
r2 स्थानीय हार्ड ड्राइव पर फ़ाइलों को संपादित कर सकता है, कर्नेल मेमोरी देख सकता है, और प्रोग्राम को स्थानीय रूप से या दूरस्थ gdb/windbg सर्वर के माध्यम से डीबग कर सकता है। r2 की व्यापक आर्किटेक्चर समर्थन आपको किसी भी बाइनरी का विश्लेषण, अनुकरण, डीबग, संशोधन और डिसअसेंबल करने की अनुमति देता है।
स्थापना
अंतिम रिलीज़ बाइनरी डाउनलोड करें।
radare2 स्थापित करने का अनुशंसित तरीका Git रिपॉजिटरी स्रोत से है:
git clone https://github.com/radareorg/radare2
radare2/sys/install.sh
- डिफ़ॉल्ट acr+make+symlink स्थापना के लिए
sys/install.shचलाएँ - meson/ninja (muon/samu भी काम करता है) और make बिल्ड समर्थित हैं।
Nix
radare2 dist/nix के अंतर्गत Nix पैकेजिंग प्रदान करता है।
स्रोत बिल्ड
- r2 को
gitसे याr2envका उपयोग करकेpipके माध्यम से स्थापित किया जा सकता है। - Windows बिल्ड के लिए कंपाइलर के रूप में meson और msvc या mingw की आवश्यकता होती है।
- r2 के वर्तमान बिल्ड को अनइंस्टॉल करने के लिए
make uninstallचलाएँ। - r2 की सभी सिस्टम स्थापनाओं को अनइंस्टॉल करने के लिए:
sudo make purgeकरें।
Windows पर .bat स्क्रिप्ट और msvc का उपयोग करें:
preconfigure.bat REM setup python, meson, ninja
configure.bat REM run meson b + vs project
make.bat REM run ninja -C b
prefix\bin\radare2.exe
लोकप्रिय प्लगइन्स:
r2pm उपकरण का उपयोग करके आप कई प्लगइन्स और उपकरणों को ब्राउज़ और स्थापित कर सकते हैं जो radare2 का उपयोग करते हैं।
- iaito: आधिकारिक Qt ग्राफिकल इंटरफ़ेस
- keystone Keystone लाइब्रेरी का उपयोग करके असेंबलर निर्देश
- decai AI पर आधारित डीकंपाइलर
- r2ai r2 के अंदर Llama के साथ localhost पर एक भाषा मॉडल चलाएँ!
- r2dec: r2 पर आधारित एक डीकंपाइलर जो JS में लिखा गया है,
pddकमांड के साथ एक्सेस किया जाता है - r2diaphora: Diaphora का बाइनरी डिफिंग इंजन radare2 के ऊपर
- r2flutter: Android और iOS ऐप्स के लिए Dart/Flutter AOT स्नैपशॉट विश्लेषण
- r2frida: frida io प्लगइन। इसका उपयोग करने के लिए
r2 frida://0के साथ r2 शुरू करें - r2ghidra: स्टैंडअलोन नेटिव ghidra डीकंपाइलर जो
pdgके साथ एक्सेस किया जाता है - r4ghidra: अपने Ghidra के अंदर radare का आनंद महसूस करें
- r2papi r2pipe के ऊपर उच्च-स्तरीय API
- r2pipe किसी भी प्रोग्रामिंग भाषा से radare2 स्क्रिप्ट करें
- r2poke विस्तारित बाइनरी पार्सिंग क्षमताओं के लिए GNU/Poke के साथ एकीकरण
- goresym: GoReSym प्रतीकों को फ्लैग के रूप में आयात करें
- r2yara r2 से Yara चलाएँ या Yara से r2 प्रिमिटिव का उपयोग करें
- radius2: boolector और esil पर आधारित एक तेज़ प्रतीकात्मक निष्पादन इंजन
- r2sarif SARIF दस्तावेज़ आयात/विस्तार/निर्यात करें
- r2hermes React Native Hermes बाइटकोड के लिए डिसअसेंबलर और विश्लेषक
- r2renef Radare2 के लिए Renef IO प्लगइन - डायनामिक Android इंस्ट्रूमेंटेशन
- r2unity: radare2 से Unity IL2CPP मेटाडेटा और नेटिव बाइनरी का निरीक्षण करें
- warrp binary ninja के WARP प्रारूप के लिए नेटिव radare2 प्लगइन
उपयोग
r2 का उपयोग करने के पहले चरण ये हैं, अधिक विवरण के लिए पुस्तक पढ़ें या ट्यूटोरियल खोजें
$ r2 /bin/ls # open file in read-only
> aaa # analyse the program (r2 -A)
> afl # list all functions (try aflt, aflm)
> px 32 # print 32 byte hexdump current block
> s sym.main # seek to main (using flag name)
> f~foo # filter flags matching 'foo' (internal |grep)
> iS;is # list sections and symbols (rabin2 -Ss)
> pdf; agf # disassembly and ascii-art function graph
> oo+;w hello # reopen in read-write and write a string
> ?*~... # interactive filter in all command help
> q # quit
कई प्लगइन्स डिफ़ॉल्ट रूप से r2 में शामिल हैं। लेकिन आप r2pm पैकेज मैनेजर का उपयोग करके इसकी क्षमताओं का विस्तार कर सकते हैं।
r2pm -s <word> # search packages matching a word
r2pm -Uci <pkg> # update database and clean install a package
r2pm -u <pkg> # uninstall the given package
r2pm -l <pkg> # list installed packages
संसाधन
- आधिकारिक पुस्तक: r2 उपयोग के बारे में पढ़ें
- COMMUNITY.md: सामुदायिक सहभागिता और ढीले दिशानिर्देश
- CONTRIBUTING.md: समस्याओं की रिपोर्टिंग और योगदान के बारे में जानकारी। योगदान भी देखें
- DEVELOPERS.md: r2 के लिए विकास दिशानिर्देश
- SECURITY.md: कमजोरियों की रिपोर्टिंग के निर्देश
- USAGE.md: कुछ उदाहरण कमांड
- INSTALL.md: make या meson का उपयोग करके स्थापना निर्देश
दस्तावेज़ीकरण
r2con से youtube वार्ता देखकर r2 के बारे में और जानें। कई ब्लॉगपोस्ट, स्लाइडडेक और आधिकारिक radare2 पुस्तक भी हैं, लेकिन किसी भी आधिकारिक चैट में शामिल होना और अपने प्रश्न या प्रतिक्रिया वहाँ छोड़ना हमेशा एक अच्छा विचार है।
समुदाय
- वेबसाइट: https://www.radare.org/
- Discord: सर्वर
- Mastodon: @radareorg
- Telegram: मुख्य और साइड चैनल
- irc.libera.chat:
#radare,#radare_side - Matrix:
#radare:matrix.org
समर्थित प्लेटफ़ॉर्म
ऑपरेटिंग सिस्टम
Windows (x86/x64/arm64 के लिए XP के बाद से), Linux, Darwin, GNU/Hurd, Apple का {Mac,i,iPad,watch}OS, Android, Wasmer, [Dragonfly, Net, Free, Open] BSD, Z/OS, QNX, SerenityOS, Solaris, AIX, Haiku, Vinix, FirefoxOS।
आर्किटेक्चर
i386, x86-64, Alpha, ARM, AVR, BPF, sBPF, MIPS, PowerPC, SPARC, RISC-V, SH, m68k, S390, XCore, CR16, HPPA, ARC, Blackfin, Z80, H8/300, V810, PDP11, m680x, V850, CRIS, XAP (CSR), PIC, LM32, 8051, 6502, i4004, i8080, Propeller, EVM, OR1K Tricore, CHIP-8, LH5801, T8200, GameBoy, SNES, SPC700, MSP430, Xtensa, xcore, NIOS II, Java, Dalvik, Pickle, WebAssembly, MSIL, EBC, TMS320 (c54x, c55x, c55+, c64x), Hexagon, Brainfuck, Malbolge, whitespace, DCPU16, LANAI, lm32, MSIL, InfernoDis, UXN, Cosmac, PythonBytecode, Sharp sm5xx MCPus, FreeScale QIQa, MCORE, mcs96, RSP, SuperH-4, VAX, KVX, Am29000, LOONGARCH, JDH8, s390x, STM8।
फ़ाइल प्रारूप
ELF, Mach-O, Fatmach-O, PE, PE+, MZ, COFF, XCOFF, OMF, TE, XBE, SEP64, BIOS/UEFI, BFLT, Pebble apps, Apple Dyldcache, Kernelcache, MCLF trustlets, DEX, ART, Java class, Android boot image, Plan9 executables, Amiga HUNK, ZIMG, MBN/SBL bootloader, ELF coredump, MDMP (Windows minidump), PDP11, XTAC, CGC, DotNet, WASM (WebAssembly binary), Commodore VICE emulator, DOL, QNX, WAD, OFF, TIC-80, GB/GBA, PSX, PRG (C64), Apple Classic PEF, NDS, z64, और N3DS ...
फ़ाइल सिस्टम
NTFS, FAT, HFS+, EXT, APFS, BeosFS, BFS, MINIX, ReiserFS, SFS, ubifs, ufs, jfs, ISO9660, UDF, xfs जैसे कई फ़ाइल सिस्टम को यूज़रलैंड में माउंट करें

