
radare2 v6.2.0
UNIX-जैसा रिवर्स इंजीनियरिंग फ्रेमवर्क और कमांड-लाइन टूलसेट
Radare2: यूनिक्स गीक्स के लिए लिब्रे रिवर्सिंग फ्रेमवर्क
वर्तमान git master ब्रांच 6.2.0 है, अगला रिलीज़ 6.2.1 होगा।
विवरण
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: फ्रिडा io प्लगइन। इसका उपयोग करने के लिए r2 को
r2 frida://0से शुरू करें - 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 का उपयोग करके स्थापना निर्देश
दस्तावेज़ीकरण
r2 के बारे में r2con से YouTube वार्ताएँ देखकर और जानें। कई ब्लॉगपोस्ट, स्लाइडडेक और आधिकारिक 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 ऐप्स, Apple Dyldcache, Kernelcache, MCLF trustlets, DEX, ART, Java class, Android बूट इमेज, Plan9 एक्ज़िक्यूटेबल, Amiga HUNK, ZIMG, MBN/SBL बूटलोडर, ELF कोरडंप, MDMP (Windows मिनिडंप), PDP11, XTAC, CGC, DotNet, WASM (WebAssembly बाइनरी), Commodore VICE इम्यूलेटर, 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

