Ghidra + IDA कठबोली का पता लगा सकते हैं लेकिन Radare2 कर सकते हैं

Jan 15 2021

Im रिवर्स इंजीनियरिंग के लिए नया है, और एक साधारण CrackMe के साथ Ghidra, IDA (फ्रीवेयर) और Radare2 की कोशिश कर रहा है, समस्या यह है कि, Ghidra और IDA दोनों एक स्ट्रिंग का पता नहीं लगा सकते थे जबकि Radare2 (कटनी GUI का उपयोग करके) नाम पता लगा सकता था। मैंने सभी के लिए डिफ़ॉल्ट विश्लेषण का उपयोग किया 3. क्या कुछ im गायब है? क्योंकि यहां तक ​​कि 'स्ट्रिंग्स' कमांड वास्तव में स्ट्रिंग आईएम की तलाश कर सकता है।

घिद्रा:

आईडीए:

रेडारे 2 (कटर):

जवाब

6 R4444 Jan 15 2021 at 22:05

मैं स्ट्रिंग की सही लंबाई नहीं जानता। लेकिन, यहां ध्यान देने योग्य कुछ बातें इस प्रकार हैं:

  1. Ghidra और IDA सही प्रकार को पुनर्प्राप्त करने के लिए स्ट्रिंग के आकार पर एक न्यूनतम बाध्य है (ghidra की एक सीमा है - या निम्न 5 की सीमा)।
  2. किसी भी झूठी सकारात्मक या परस्पर विरोधी प्रकार से बचने के लिए यह आवश्यक है। और एक स्ट्रिंग के रूप में एक पॉइंटर को चिह्नित किए बिना सही प्रकार पुनर्प्राप्त करें। अपने संदर्भ के लिए यह आंकड़ा देखें। Ghidra स्वचालित विश्लेषण का उपयोग कर उत्पन्न।

Ghidra में आप विश्लेषण खंड में इस सीमा (न्यूनतम 4 है) को बदल सकते हैं।

  1. Stringsकमांड न्यूनतम आकार 4 के साथ प्रिंट करने योग्य वर्णों को आउटपुट करता है (प्लस यह परिष्कृत प्रकार रिकवरी एल्गोरिदम का उपयोग नहीं करता है जैसे कि गिद्र या इडा)। मेरा मानना ​​है कि आपके पास 5 से कम लंबाई के साथ एक स्ट्रिंग है और मेरा अनुमान है कि यह सटीक होना 4 होगा।
  2. तार आमतौर पर .rodataअनुभाग में परिभाषित किए गए हैं । यदि आप DAT_xxxx पर डबल क्लिक करते हैं, तो यह आपको उस स्थान पर ले जाएगा जहां उस स्ट्रिंग को परिभाषित किया गया है। वहां, आपको गिडरा या आईडीए (जैसे छवि -1 में दिखाया गया है) के साथ लगातार बाइट्स दिखाई देंगे। लेकिन, प्रकार को "स्ट्रिंग" के रूप में हल नहीं किया गया है।
  3. डेटा के प्रकार DAT_xxxx लेबल को बदलकर इसे ठीक करने का एक त्वरित तरीका Ghidra में: राइट क्लिक -> डेटा -> डेटा प्रकार चुनें -> स्ट्रिंग चुनें

संदर्भ:

  • मेरा प्रश्न यहाँ देखें - https://github.com/NationalSecurityAgency/ghidra/issues/2274
  • तार मैनुअल - https://linux.die.net/man/1/strings
  • आईडीए समर्थक - मैं आईडीए को एक स्ट्रिंग संदर्भ कैसे देख सकता हूं?