
Ghidra के लिए MCP Server

ghidraMCP एक Model Context Protocol सर्वर है जो LLMs को स्वायत्त रूप से एप्लिकेशनों का रिवर्स इंजीनियरिंग करने की अनुमति देता है। यह कोर Ghidra कार्यक्षमता से MCP क्लाइंट तक कई उपकरणों को उजागर करता है।
https://github.com/user-attachments/assets/36080514-f227-44bd-af84-78e29ee1d7f9
MCP सर्वर + Ghidra प्लगइन
सबसे पहले, इस रिपॉजिटरी से नवीनतम रिलीज़ डाउनलोड करें। इसमें Ghidra प्लगइन और Python MCP क्लाइंट शामिल है। फिर, आप सीधे प्लगइन को Ghidra में आयात कर सकते हैं।
File -> Install Extensions चुनें+ बटन पर क्लिक करेंGhidraMCP-1-2.zip (या आपके चुने हुए संस्करण) चुनेंFile -> Configure -> Developer में सक्षम हैEdit -> Tool Options -> GhidraMCP HTTP Server से Ghidra में पोर्ट कॉन्फ़िगर करेंवीडियो स्थापना मार्गदर्शिका:
https://github.com/user-attachments/assets/75f0c176-6da1-48dc-ad96-c182eb4648c3
सैद्धांतिक रूप से, कोई भी MCP क्लाइंट ghidraMCP के साथ काम करना चाहिए। नीचे तीन उदाहरण दिए गए हैं।
Claude Desktop को Ghidra MCP क्लाइंट के रूप में सेट करने के लिए, Claude -> Settings -> Developer -> Edit Config -> claude_desktop_config.json पर जाएँ और निम्नलिखित जोड़ें:
{
"mcpServers": {
"ghidra": {
"command": "python",
"args": [
"/ABSOLUTE_PATH_TO/bridge_mcp_ghidra.py",
"--ghidra-server",
"http://127.0.0.1:8080/"
]
}
}
}
वैकल्पिक रूप से, इस फ़ाइल को सीधे संपादित करें:
/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json
सर्वर IP और पोर्ट कॉन्फ़िगर करने योग्य हैं और लक्ष्य Ghidra इंस्टेंस को इंगित करने के लिए सेट होने चाहिए। यदि सेट नहीं किए गए हैं, तो दोनों डिफ़ॉल्ट रूप से localhost:8080 पर जाएँगे।
GhidraMCP को Cline के साथ उपयोग करने के लिए, MCP सर्वर को मैन्युअल रूप से चलाना आवश्यक है। पहले निम्नलिखित कमांड चलाएँ:
python bridge_mcp_ghidra.py --transport sse --mcp-host 127.0.0.1 --mcp-port 8081 --ghidra-server http://127.0.0.1:8080/
एकमात्र आवश्यक तर्क ट्रांसपोर्ट है। यदि अन्य सभी तर्क निर्दिष्ट नहीं हैं, तो वे उपरोक्त पर डिफ़ॉल्ट होंगे। एक बार MCP सर्वर चलने के बाद, Cline खोलें और शीर्ष पर MCP Servers चुनें।

फिर Remote Servers चुनें और निम्नलिखित जोड़ें, यह सुनिश्चित करते हुए कि url MCP होस्ट और पोर्ट से मेल खाता है:
http://127.0.0.1:8081/sseबैकएंड पर कई मॉडलों का समर्थन करने वाला एक अन्य MCP क्लाइंट 5ire है। GhidraMCP सेट करने के लिए, 5ire खोलें और Tools -> New पर जाएँ और निम्नलिखित कॉन्फ़िगरेशन सेट करें:
python /ABSOLUTE_PATH_TO/bridge_mcp_ghidra.pylib/ निर्देशिका में कॉपी करें:Ghidra/Features/Base/lib/Base.jarGhidra/Features/Decompiler/lib/Decompiler.jarGhidra/Framework/Docking/lib/Docking.jarGhidra/Framework/Generic/lib/Generic.jarGhidra/Framework/Project/lib/Project.jarGhidra/Framework/SoftwareModeling/lib/SoftwareModeling.jarGhidra/Framework/Utility/lib/Utility.jarGhidra/Framework/Gui/lib/Gui.jarmvn clean package assembly:single
उत्पन्न ज़िप फ़ाइल में निर्मित Ghidra प्लगइन और इसके संसाधन शामिल हैं। ये फ़ाइलें Ghidra के लिए नए एक्सटेंशन को पहचानने के लिए आवश्यक हैं।