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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
sleigh — Ghidra की SLEIGH प्रोसेसर स्पेसिफिकेशन लाइब्रेरी का CMake बिल्ड, जो रिवर्स इंजीनियरिंग टूल्स के लिए स्टैंडअलोन डिसअसेम्बली और p-code लिफ्टिंग इंजन प्रदान करता है। | Kitploit
उपकरण/GitHubGitHub/lifting-bits/sleigh
स्थैतिक विश्लेषणकोड विश्लेषणगतिशील कोड विश्लेषण (DAST)रिवर्स इंजीनियरिंगस्क्रिप्टिंग और स्वचालनउपयोगिताएँ और फ्रेमवर्कबाइनरी विश्लेषण
GitHublifting-bits/sleigh

sleigh

Ghidra की SLEIGH प्रोसेसर स्पेसिफिकेशन लाइब्रेरी का CMake बिल्ड, जो रिवर्स इंजीनियरिंग टूल्स के लिए स्टैंडअलोन डिसअसेम्बली और p-code लिफ्टिंग इंजन प्रदान करता है।

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

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
वेबसाइट
साझा करें

Sleigh लाइब्रेरी

Sleigh एक भाषा है जिसका उपयोग सामान्य-उद्देश्य वाले माइक्रोप्रोसेसरों के निर्देश सेटों की शब्दार्थ का वर्णन करने के लिए किया जाता है, जिसमें इन आर्किटेक्चरों के लिए संकलित सॉफ़्टवेयर के रिवर्स इंजीनियरिंग की सुविधा के लिए पर्याप्त विवरण होता है। यह Ghidra रिवर्स इंजीनियरिंग प्लेटफ़ॉर्म का हिस्सा है और इसके दो प्रमुख घटकों: इसके डिसअसेम्बली और डीकंपाइलेशन इंजनों का आधार है।

यह रिपॉज़िटरी Sleigh के लिए एक CMake-आधारित बिल्ड प्रोजेक्ट प्रदान करती है ताकि इसे एक स्टैंडअलोन लाइब्रेरी के रूप में बनाया और पैकेज किया जा सके और Ghidra के अलावा अन्य प्रोजेक्ट्स में पुनः उपयोग किया जा सके।

समर्थित प्लेटफ़ॉर्म

नामसमर्थन
Linuxहाँ
macOSहाँ
Windowsहाँ

निर्भरताएँ और पूर्वापेक्षाएँ

आवश्यक

नामसंस्करणइंस्टॉल करने के लिए Linux पैकेजइंस्टॉल करने के लिए macOS Homebrew पैकेज
(HEAD बिल्ड) zlibहाल काzlib1g-devzlib
GitनवीनतमgitN/A
CMake3.18+cmakecmake

नोट: यह CMake प्रोजेक्ट कॉन्फ़िगरेशन के दौरान इंटरनेट से Ghidra स्रोत कोड खींचता है। अधिक जानकारी के लिए Ghidra स्रोत कोड पर नोट अनुभाग देखें।

वैकल्पिक

दस्तावेज़ीकरण बनाने के लिए:

नामसंस्करणइंस्टॉल करने के लिए Linux पैकेजइंस्टॉल करने के लिए macOS Homebrew पैकेज
Doxygenनवीनतमdoxygendoxygen
GraphVizनवीनतमgraphvizgraphviz

Sleigh लाइब्रेरी को बिल्ड और इंस्टॉल करें

# Clone this repository (CMake project for sleigh)
git clone https://github.com/lifting-bits/sleigh.git
cd sleigh

# Configure CMake
cmake -B build -S .

# Build Sleigh
cmake --build build --parallel 8

# Install Sleigh
cmake --install build --prefix ./install

Ghidra स्रोत कोड पर नोट

Ghidra स्रोत कोड वास्तव में इस git रिपॉज़िटरी में शामिल नहीं है, और डिफ़ॉल्ट रूप से, CMake आपके लिए इंटरनेट से एक स्थिर संस्करण स्वचालित रूप से खींच लेगा।

कृपया यह कस्टमाइज़ करने के बारे में अधिक जानकारी के लिए src/README.md देखें कि कौन सा Ghidra स्रोत कोड कमिट उपयोग/संकलित किया जाएगा, जिसमें Ghidra स्रोत की अपनी स्थानीय प्रति निर्दिष्ट करना भी शामिल है।

पैकेजिंग

CMake कॉन्फ़िगरेशन Sleigh के लिए पैकेज बनाने का भी समर्थन करता है।

उदाहरण के लिए:

# Package Sleigh
cmake --build build --target package

API उपयोग

sleigh-lift नामक एक उदाहरण प्रोग्राम शामिल किया गया है ताकि Sleigh API का उपयोग कैसे करें यह प्रदर्शित किया जा सके। यह बाइट्स की एक हेक्साडेसिमल स्ट्रिंग लेता है और इसे डिसअसेम्बल कर सकता है या p-code में लिफ्ट कर सकता है। प्रोग्राम को निम्नानुसार आमंत्रित किया जा सकता है, जहाँ action तर्क या तो disassemble या pcode होना चाहिए:

sleigh-lift [action] [sla_file] [bytes] [-a address] [-p root_sla_dir] [-s pspec_file]

उदाहरण के लिए, निम्नलिखित बाइट स्ट्रिंग को डिसअसेम्बल करने के लिए:

$ sleigh-lift disassemble x86-64.sla 4881ecc00f0000
0x00000000: SUB RSP,0xfc0

और इसे p-code में लिफ्ट करने के लिए:

$ sleigh-lift pcode x86-64.sla 4881ecc00f0000
(register,0x200,1) = INT_LESS (register,0x20,8) (const,0xfc0,8)
(register,0x20b,1) = INT_SBORROW (register,0x20,8) (const,0xfc0,8)
(register,0x20,8) = INT_SUB (register,0x20,8) (const,0xfc0,8)
(register,0x207,1) = INT_SLESS (register,0x20,8) (const,0x0,8)
(register,0x206,1) = INT_EQUAL (register,0x20,8) (const,0x0,8)
(unique,0x12c00,8) = INT_AND (register,0x20,8) (const,0xff,8)
(unique,0x12c80,1) = POPCOUNT (unique,0x12c00,8)
(unique,0x12d00,1) = INT_AND (unique,0x12c80,1) (const,0x1,1)
(register,0x202,1) = INT_EQUAL (unique,0x12d00,1) (const,0x0,1)

यदि आप sleigh-lift को बिल्ड नहीं करना चाहते हैं, तो आपको CMake कॉन्फ़िगरेशन के दौरान CMake वेरिएबल sleigh_BUILD_EXTRATOOLS विकल्प को OFF पर सेट करना होगा।

हेल्पर्स

इस रिपॉज़िटरी में एक हेल्पर है जो Sleigh/Ghidra का हिस्सा नहीं है, जिसे आप support डायरेक्टरी में पा सकते हैं। इसका निम्नलिखित सिग्नेचर है और यह उपयोगकर्ता को सिस्टम पर किसी दिए गए स्पेक फ़ाइल का स्थान खोजने में मदद कर सकता है:

std::optional<std::filesystem::path>
FindSpecFile(std::string_view file_name,
             const std::vector<std::filesystem::path> &search_paths =
                 gDefaultSearchPaths);

sleigh::FindSpecFile फ़ंक्शन उपयोगकर्ता द्वारा search_paths तर्क के माध्यम से प्रदान किए गए पथों में file_name नाम की स्पेक फ़ाइल खोजेगा। search_paths के लिए डिफ़ॉल्ट तर्क sleigh::gDefaultSearchPaths है जिसमें CMake कॉन्फ़िगरेशन के दौरान उत्पन्न इंस्टॉल/बिल्ड डायरेक्टरियाँ और सामान्य इंस्टॉलेशन स्थानों का एक सेट शामिल है।

यदि आप हेल्पर्स को बिल्ड नहीं करना चाहते हैं, तो आपको CMake कॉन्फ़िगरेशन के दौरान CMake वेरिएबल sleigh_BUILD_SUPPORT विकल्प को OFF पर सेट करना होगा।

निर्भरता के रूप में एकीकरण

Sleigh की एक इंस्टॉलेशन एक CMake इंटरफ़ेस प्रदान करती है जिसका उपयोग आप अपने प्रोजेक्ट को बिल्ड करते समय कर सकते हैं।

CMake पैकेज कॉन्फ़िग फ़ाइल का उपयोग कैसे करें इसका एक उदाहरण आप find_package उदाहरण में पा सकते हैं।

हम एक CMake हेल्पर फ़ंक्शन sleigh_compile भी प्रदान करते हैं ताकि आप एक sleigh कंपाइलर का उपयोग करके अपनी .slaspec फ़ाइलों को संकलित कर सकें।

आप Sleigh स्पेसिफिकेशन्स को संकलित करने के साथ एक अधिक जटिल CMake उदाहरण example डायरेक्टरी में पा सकते हैं, जो अपस्ट्रीम-प्रदत्त sleigh उदाहरण स्रोत कोड का उपयोग करता है।

अंत में, आप CMake वेरिएबल sleigh_INSTALL_SPECDIR के माध्यम से इंस्टॉल की गई संकलित sleigh फ़ाइलों का पता लगा सकते हैं, जो संकलित sleigh फ़ाइलों के लिए रूट डायरेक्टरी का एक एब्सोल्यूट पाथ है---आपको यह जानने के लिए कि क्या अपेक्षा करनी है, इसे मैन्युअल रूप से निरीक्षण करना चाहिए।

उजागर किए गए CMake वेरिएबल्स और मॉड्यूल्स के बारे में अधिक जानने के लिए CMake कॉन्फ़िग फ़ाइल और specfiles CMake फ़ाइल को संदर्भित करना भी सुझाया जाता है।

लाइसेंस

LICENSE फ़ाइल देखें।

टूल डाउनलोड करें