Skip to content
KitploitKITPLOIT
उपकरणएक्सप्लॉइटब्लॉग
Log in
जमा करें
उपकरणएक्सप्लॉइटब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

फ़ीडसंपर्कगोपनीयता© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
BinDiffHelper — Ghidra एक्सटेंशन फ़ंक्शन मिलान के लिए BinDiff को एकीकृत करने के लिए | Kitploit
उपकरण/GitHubGitHub/ubfx/bindiffhelper
स्थैतिक विश्लेषणकोड विश्लेषणरिवर्स इंजीनियरिंगमालवेयर विश्लेषणउपयोगिताएँ और फ्रेमवर्कबाइनरी विश्लेषणबाइनरी शोषण
GitHububfx/bindiffhelper

BinDiffHelper

Ghidra एक्सटेंशन फ़ंक्शन मिलान के लिए BinDiff को एकीकृत करने के लिए

रिपॉजिटरी देखें
29623622 दिन पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

BinDiffHelper

Ghidra एक्सटेंशन जो आपके Ghidra प्रोजेक्ट पर BinDiff का उपयोग करके मेल खाते फ़ंक्शन ढूंढता है और उन्हें स्वचालित रूप से नाम बदल देता है (BinDiff 6, 7, 8 समर्थित)। यह कैसे काम करता है और यह फ़ंक्शन / बेसिक ब्लॉक्स को कैसे मैच करता है, यह देखने के लिए BinDiff मैनुअल देखें। हालाँकि, इस एक्सटेंशन के साथ, BinDiff Ghidra के भीतर से स्वचालित हो जाता है, इसलिए आपको अपने बाइनरीज़ को स्वयं डिफ़ करने की आवश्यकता नहीं है।

कृपया बग की रिपोर्ट github पर issue फ़ीचर के माध्यम से करें

Changelog

v0.7.1

  • Ghidra 12 के लिए अपडेट

v0.7.0 (Ghidra संस्करण >= 11.4)

  • Ghidra संस्करण संगतता के अलावा कोई बदलाव नहीं

v0.6.4 (Ghidra संस्करण < 11.4)

  • Export namespace समर्थन
  • डिफ़िंग पर अनिश्चितकालीन हैंग को ठीक किया

v0.6.3

  • टेबल सॉर्टिंग की अनुमति दें

v0.6.2

  • एक बग को ठीक किया जहाँ BinDiff 8 पर डिफ़िंग हमेशा के लिए हैंग हो जाती थी
  • किसी सिंबल पर डबल क्लिक करने पर, इसे प्राइमरी और सेकेंडरी दोनों कोड लिस्टिंग में फॉलो करें

v0.6

  • sqlite ड्राइवर लाइब्रेरी अपडेट करें, अब Apple silicon पर चलना चाहिए
  • डीकंपाइल किए गए फ़ंक्शन्स के बीच बाहरी टेक्स्टुअल डिफ़्स का समर्थन करें (देखें https://github.com/ubfx/BinDiffHelper/pull/24)
  • UI अपडेट

v0.5

  • BinDiff 8 का समर्थन करें
  • Ghidra 11.1 के लिए रिलीज़
पुराने बदलाव ### v0.4.3 * Ghidra 11.0 के लिए रिलीज़

v0.4.2

  • सभी फ़ंक्शन्स को इम्पोर्ट करने के लिए फ़ंक्शन जोड़ें (केवल टेबल में चेक किए गए वाले ही नहीं)
  • टेबल में कई एलिमेंट्स के लिए चेकबॉक्स टॉगल करने के लिए फ़ंक्शन जोड़ें
  • Ghidra 10.3 का समर्थन करने के लिए अपडेट करें

v0.4.1

  • Gradle 7.5 और Ghidra 10.1 का समर्थन करने के लिए अपडेट करें

v0.4.0

  • BinDiff 7 और Ghidra 10 का समर्थन करें

v0.3.2

  • एक बग को ठीक किया जहाँ एक ही प्रोजेक्ट से भिन्न फ़ाइल के साथ डिफ़िंग काम नहीं करती थी
  • एक बग को ठीक किया जहाँ छोटे नामों (< 3 अक्षर>) वाली फ़ाइलों को डिफ़ नहीं किया जा सकता था

v0.3.1

  • "from project" विकल्प के माध्यम से फ़ाइल खोलते समय होने वाले क्रैश को ठीक किया

v0.3

  • लिस्टिंग में मेल खाते फ़ंक्शन्स को रंगना
  • लिस्टिंग में मेल खाते फ़ंक्शन्स में दूसरे बाइनरी से लिंक करने वाली टिप्पणियाँ जोड़ें
  • एक बग को ठीक किया जहाँ कुछ बिल्ड्स में protobuf लाइब्रेरी गायब थी
  • नया फ़ाइल लोड मेनू

v0.2

  • एक बग को ठीक किया जहाँ जिस फ़ाइल में इम्पोर्ट करना था उसे चेकआउट करना आवश्यक था।
  • प्रोजेक्ट फ़ाइल चयन डायलॉग का आकार बढ़ाएँ

v0.1

  • Ghidra में खोले गए बाइनरी को उसी Ghidra प्रोजेक्ट से किसी अन्य बाइनरी के साथ BinDiff करें, परिणाम दिखाएँ और फ़ंक्शन नाम इम्पोर्ट करें
  • दो .BinExport फ़ाइलों से BinDiff 6 के साथ बनाई गई एक BinDiff फ़ाइल खोलें और Ghidra में मेल खाते फ़ंक्शन नाम इम्पोर्ट करें

कैसे इंस्टॉल करें

या तो release से .zip-फ़ाइल डाउनलोड करें, यदि यह आपके Ghidra संस्करण के अनुकूल है, अन्यथा नीचे How to build देखें।

  1. Ghidra खोलें
  2. Main Window में: File->Install Extensions... पर जाएँ
  3. ऊपर दाईं ओर +-बटन पर क्लिक करें और BinDiffHelper zip फ़ाइल चुनें
  4. प्लगइन मैनेजर बंद करें। नया प्लगइन लोड करने के लिए Ghidra को पुनः आरंभ करें
  5. नीचे Usage देखें

अनुशंसित अन्य टूल्स

  • BinExport प्लगइन binaries या आपके विशिष्ट Ghidra संस्करण के लिए source से कंपाइल करें
  • BinDiff (https://zynamics.com/software.html)

इनके बिना, आप केवल .BinDiff फ़ाइलें इम्पोर्ट कर पाएंगे और अपने Ghidra प्रोजेक्ट से स्वचालित रूप से एक्सपोर्ट और डिफ़ नहीं कर पाएंगे

उपयोग

सुनिश्चित करें कि प्लगइन Code Explorer में लोड है, Ghidra में एक फ़ाइल खोलकर और Code Explorer में File->Configure पर जाकर

ऊपर दाईं ओर छोटे plug-आइकन पर क्लिक करें:

Configure tool

और सुनिश्चित करें कि BinDiffHelperPlugin के बगल में चेकबॉक्स चेक है।

Configure plugins

बाहरी .BinDiff इम्पोर्ट करें

संबंधित .BinExport-फ़ाइलें उसी फ़ोल्डर में होनी चाहिए।

जिस फ़ाइल में नाम इम्पोर्ट करना है उसे code Browser में खोलें, फिर Window->BinDiffHelper पर जाएँ Open BinDiffHelper

Open from BinDiff बटन या मेनू आइटम का उपयोग करें और अपनी .BinDiff फ़ाइल चुनें।

Example import

आप जो भी फ़ंक्शन नाम इम्पोर्ट करना चाहते हैं उन सभी को चुनें और ऊपर दाईं ओर Import function names बटन या मेनू आइटम पर क्लिक करें।

Ghidra प्रोजेक्ट में फ़ाइलों के बीच तुलना करें

Window->BinDiffHelper पर जाएँ, सुनिश्चित करें कि BinExport या BinDiff से संबंधित कोई चेतावनी नहीं है, फिर Open from project बटन पर क्लिक करें।

ट्री से दूसरी फ़ाइल चुनें और OK पर क्लिक करें।

Example project import

कैसे बनाएँ

आवश्यकताएँ:

  • Ghidra इंस्टॉलेशन (https://ghidra-sre.org) या सोर्स से कंपाइल करें
  • कोई jdk। आपका Ghidra कैसे बनाया गया था और आप कौन से अन्य प्लगइन्स उपयोग कर रहे हैं, इसके आधार पर कुछ प्रतिबंध हो सकते हैं। मैं Temurin 21 LTS का उपयोग करने की सलाह देता हूँ, क्योंकि यह वर्तमान में BinExport और BinDiffHelper दोनों के साथ काम करता प्रतीत होता है।
  • gradle (7.5, 8.10 के साथ परीक्षण किया गया)

रिपॉजिटरी क्लोन करें

रिपॉजिटरी को रिकर्सिवली क्लोन करें, क्योंकि यह संबंधित प्रोटोकॉल बफ़र परिभाषा के लिए BinExport पर निर्भर करती है।

git clone --recurse-submodules https://github.com/ubfx/BinDiffHelper.git

इसे बनाएँ

आपको GHIDRA_INSTALL_DIR एनवायरनमेंट वेरिएबल को Ghidra इंस्टॉलेशन डिर में सेट करना होगा। यदि आपके पास अलग-अलग JDKs इंस्टॉल हैं, तो सुनिश्चित करें कि एनवायरनमेंट वेरिएबल JAVA_HOME उसी की ओर इंगित करता है जिसका उपयोग आपका Ghidra इंस्टॉलेशन करता है।

एक्सटेंशन विशेष रूप से उस Ghidra संस्करण के लिए बनाया जाएगा।

और फिर अपने शेल में BinDiffHelper फ़ोल्डर में जाएँ और करें

gradle

यह संबंधित सबमॉड्यूल में BinExport और पैरेंट डायरेक्टरी में BinDiffHelper दोनों को बनाएगा। dist डायरेक्टरी में एक .zip-फ़ाइल बनाई गई होनी चाहिए। उस .zip फ़ाइल का उपयोग ऊपर दिए गए निर्देशों के अनुसार इंस्टॉल करने के लिए करें।

डेवलपमेंट / डीबगिंग सेटअप

कभी-कभी एक्सटेंशन को Ghidra के साथ डीबग करने में सक्षम होना उपयोगी होता है, इस पर कुछ नोट्स यहाँ हैं:

  1. Ghidra को क्लोन और बिल्ड करें और DevGuide के अनुसार gradle को eclipse प्रोजेक्ट्स बनाने दें
  2. प्रोजेक्ट्स को eclipse में इम्पोर्ट करें (सुनिश्चित करें कि इसमें एक्सटेंशन डेवलपमेंट के लिए प्रासंगिक प्लगइन्स हैं)
  3. PyDev इंस्टॉल करें (http://www.pydev.org/updates eclipse रिपॉजिटरी के रूप में)
  4. GhidraDev इंस्टॉल करें
  5. Ghidra बिल्ड को अनपैक करें और GhidraDev को उससे लिंक करें। शायद GHIDRA_INSTALL_DIR एनवायरनमेंट वेरिएबल सेट करना पड़ सकता है
  6. eclipse से Ghidra चलाएँ और BinExport एक्सटेंशन इंस्टॉल करें
  7. gradle build eclipse के साथ BinDiffHelper eclipse प्रोजेक्ट बनाएँ
  8. इसे eclipse में इम्पोर्ट करें और GhidraDev का उपयोग करके इसे Ghidra बिल्ड से लिंक करें।
  9. Debug As->Ghidra
टूल डाउनलोड करें