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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Obfusk8 — Obfusk8: हल्का Obfuscation लाइब्रेरी, C++17 पर आधारित / Header Only, Windows बाइनरी के लिए | Kitploit
उपकरण/GitHubGitHub/x86byte/obfusk8
शोषण फ्रेमवर्करिवर्स इंजीनियरिंगशेलकोडक्रिप्टोग्राफीपेनिट्रेशन टेस्टिंगरेड टीमिंगपेलोड डेवलपमेंट
GitHubx86byte/obfusk8

Obfusk8

Obfusk8: हल्का Obfuscation लाइब्रेरी, C++17 पर आधारित / Header Only, Windows बाइनरी के लिए

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

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

सभी देखें →

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

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

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

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

Obfusk8: C++17-आधारित ऑब्फस्केशन लाइब्रेरी

Obfusk8 एक हल्की, हेडर-ओनली C++17 लाइब्रेरी है जिसे आपके अनुप्रयोगों के ऑब्फस्केशन को महत्वपूर्ण रूप से बढ़ाने के लिए डिज़ाइन किया गया है, जो रिवर्स इंजीनियरिंग को काफी अधिक चुनौतीपूर्ण प्रयास बनाता है। यह विभिन्न प्रकार की कंपाइल-टाइम और रनटाइम तकनीकों के माध्यम से ऐसा करता है जिनका उद्देश्य आपके कोड के तर्क और डेटा की रक्षा करना है।

banner


विषय सूची

  1. मुख्य ऑब्फस्केशन रणनीतियाँ
  2. निर्भरताएँ
  3. विज़ुअलाइज़ेशन
  4. इंजन विश्लेषण और डिटेक्शन प्रोफ़ाइल
  5. संरचनात्मक और फोरेंसिक विशेषताएँ
  6. उपयोग
  7. निर्माण
  8. डेमो
  9. योगदान और प्रतिक्रिया

मुख्य ऑब्फस्केशन रणनीतियाँ

1. main फ़ंक्शन रैपिंग (_main मैक्रो)

आपके अनुप्रयोग के प्रवेश बिंदु (main) को एक जटिल, बहु-स्तरीय ऑब्फस्केशन इंजन में रूपांतरित किया जाता है:

  • वर्चुअल मशीन (VM) निष्पादन (सैद्धांतिक): आपके वास्तविक main_body कोड के निष्पादित होने से पहले, एक मिनी-VM (सिम्युलेटेड CPU) "एन्क्रिप्टेड" निर्देशों का एक क्रम चलाता है। यह वास्तविक प्रवेश बिंदु और प्रारंभिक संचालन को छुपाता है। VM की स्थिति (रजिस्टर, प्रोग्राम काउंटर, डिस्पैच कुंजी) रनटाइम-यादृच्छिक मानों से आरंभ की जाती है।
  • अप्रत्यक्ष नियंत्रण प्रवाह समतलन (ICFF): _main मैक्रो (प्रोलॉग और एपिलॉग दोनों में) के भीतर महत्वपूर्ण लूप जटिल स्थिति मशीनों में रूपांतरित हो जाते हैं। नियंत्रण प्रवाह सीधा नहीं है बल्कि भारी "एन्क्रिप्टेड" स्थिति चर द्वारा निर्धारित होता है। इन स्थिति चरों के लिए एन्कोडिंग/डिकोडिंग कुंजियाँ गतिशील होती हैं, जो VM स्थिति, लूप काउंटर, कंपाइल-टाइम यादृच्छिकता (जैसे __COUNTER__, __LINE__, __TIME__), और एक वैश्विक अपारदर्शी बीज से प्राप्त होती हैं। यह नियंत्रण प्रवाह के स्थैतिक विश्लेषण को अत्यधिक कठिन बनाता है।
    • दो अलग-अलग ICFF इंजन (obf_icff_ns_dcff और obf_icff_ns_epd) विभिन्न स्थिति संक्रमण तर्क और कुंजी निर्माण के साथ उपयोग किए जाते हैं, जो विश्लेषण को और जटिल बनाते हैं।
  • नकली नियंत्रण प्रवाह (OBF_BOGUS_FLOW_* मैक्रोज़): _main में कई भ्रामक जंप पैटर्न और जटिल सशर्त संरचनाएँ इंजेक्ट की जाती हैं। ये अपारदर्शी विधेय (ऐसी शर्तें जो हमेशा सत्य या असत्य होती हैं लेकिन गणनात्मक रूप से महंगी या स्थैतिक रूप से निर्धारित करना कठिन होता हैं) के साथ संयुक्त goto स्टेटमेंट का उपयोग करते हैं। यह डिस्सेम्बलर और डीकंपाइलर के लिए झूठे पथों की एक भूलभुलैया बनाता है।
    • विविध और जटिल नकली प्रवाह उत्पन्न करने के लिए OBF_BOGUS_FLOW_LABYRINTH, OBF_BOGUS_FLOW_GRID, OBF_BOGUS_FLOW_SCRAMBLE, OBF_BOGUS_FLOW_WEAVER, OBF_BOGUS_FLOW_CASCADE, और OBF_BOGUS_FLOW_CYCLONE शामिल हैं।
  • विरोधी-विश्लेषण और विरोधी-डीबग चाल (Runtime मैक्रो, SEH):
    • बलपूर्वक अपवाद और SEH: मजबूर अपवादों से जुड़े पथ बनाने के लिए स्ट्रक्चर्ड एक्सेप्शन हैंडलिंग (SEH) का उपयोग किया जाता है। __except ब्लॉक प्रोग्राम की स्थिति को बदल सकते हैं, जिससे यदि डीबगर अपवादों को छोड़ देता है तो ट्रैक करना कठिन हो जाता है।
    • डीबगर जाँच (सैद्धांतिक): Runtime मैक्रो में ऐसी शर्तें होती हैं जो, यदि पूरी होती हैं (विशिष्ट VM अवस्थाओं या समय-निर्धारण के कारण), __debugbreak() को ट्रिगर कर सकती हैं या अपवाद फेंक सकती हैं, जो डीबगिंग सत्रों को बाधित करने के लिए डिज़ाइन की गई हैं।

2. वर्चुअल ISA इंजन (obf_vm_engine)

_main मैक्रो के ऑब्फस्केशन का एक मुख्य घटक:

  • कस्टम मिनी-CPU सिमुलेशन: एक CPU का अनुकरण करता है जिसमें अस्थिर रजिस्टर (r0, r1, r2), एक प्रोग्राम काउंटर (pc), और एक dispatch_key होता है। यह कस्टम "निर्देश" (हैंडलर) निष्पादित करता है।
  • ऑब्फस्केटेड निर्देश: VM निर्देश हैंडलर ऐसे संचालन करते हैं जो मिक्स्ड बूलियन-अरिथमेटिक (MBA) और बिटवाइज़ संचालन का उपयोग करके भारी छिपे होते हैं। हैंडलर में अंकगणित, बिटवाइज़ तर्क, कुंजी विरूपण, जंक अनुक्रम, सशर्त अद्यतन, मेमोरी सिमुलेशन, और PC विरूपण शामिल हैं।
  • डायनामिक डिस्पैच: अगले VM निर्देश हैंडलर का चयन कई डिस्पैच तंत्रों के माध्यम से यादृच्छिक किया जाता है:
    • रजिस्टर-आधारित डिस्पैच (reg_dispatch_idx)।
    • मेमोरी-तालिका आधारित डिस्पैच (स्क्रैम्बल्ड फ़ंक्शन पॉइंटर तालिका get_mem_dispatch_table)।
    • मिश्रित डिस्पैच (mixed_dispatch_idx)। dispatch_key लगातार परिवर्तित होता रहता है, जिससे निष्पादित हैंडलर का क्रम अत्यधिक अप्रत्याशित हो जाता है।
  • हैंडलर तालिका उत्परिवर्तन: VM निर्देश हैंडलर (vm_handler_table) की तालिका _main प्रोलॉग और एपिलॉग के भीतर रनटाइम पर स्वयं परिवर्तित होती है, जो VM के व्यवहार को और अस्पष्ट करती है।

3. कंपाइल-टाइम स्ट्रिंग एन्क्रिप्शन (OBFUSCATE_STRING AES8.hpp से)

  • छिपी स्ट्रिंग्स: सभी स्ट्रिंग लिटरल को संशोधित AES सिफर का उपयोग करके कंपाइल-टाइम पर एन्क्रिप्ट करता है।
  • डायनामिक कुंजियाँ: एन्क्रिप्शन कुंजियाँ प्रति स्ट्रिंग इंस्टेंस अद्वितीय होती हैं, जो स्ट्रिंग सामग्री, फ़ाइल स्थान (__FILE__, __LINE__), और बिल्ड समय (__DATE__, __TIME__) से प्राप्त होती हैं।
  • जस्ट-इन-टाइम डिक्रिप्शन: स्ट्रिंग्स को रनटाइम पर केवल एक्सेस किए जाने पर स्टैक पर डिक्रिप्ट किया जाता है, जिससे मेमोरी में उनका सादा पाठ जीवनकाल न्यूनतम हो जाता है।
  • (वैकल्पिक) डिकॉय PE अनुभाग: सामान्य पैकर हस्ताक्षरों की नकल करने के लिए डिज़ाइन किए गए कस्टम PE अनुभागों में एन्क्रिप्टेड स्ट्रिंग्स संग्रहीत कर सकता है, संभावित रूप से विश्लेषकों को गुमराह करता है (AES8.hpp से MSVC-विशिष्ट सुविधा)।

4. छिपकर विंडोज API कॉलिंग (STEALTH_API_OBFSTR / STEALTH_API_OBF Resolve8.hpp से)

  • IAT अस्पष्टता: इम्पोर्ट एड्रेस टेबल (IAT) में विंडोज API के लिए प्रत्यक्ष, आसानी से पहचाने जाने योग्य प्रविष्टियाँ छोड़ने से बचता है।
  • PEB-आधारित रिज़ॉल्यूशन: रनटाइम पर प्रोसेस एनवायरनमेंट ब्लॉक (PEB) डेटा संरचनाओं को सीधे पार्स करके लोडेड DLL के बेस एड्रेस और API फ़ंक्शन के पतों को गतिशील रूप से ढूँढता है। यदि वे स्वयं इस तंत्र द्वारा अभी तक हल नहीं किए गए हैं तो यह प्रारंभिक रिज़ॉल्यूशन के लिए मानक GetModuleHandle और GetProcAddress को दरकिनार करता है।
  • हैश किए गए नाम: लुकअप के लिए DLL और API नामों के कंपाइल-टाइम हैशिंग (कस्टम एल्गोरिदम CT_HASH) का उपयोग करता है। यह इन मैक्रोज़ का उपयोग करते समय बाइनरी के आयात-संबंधित डेटा या स्ट्रिंग तालिकाओं में सादा पाठ DLL और API नामों को दिखने से रोकता है।

5. अप्रत्यक्ष सिस्कॉल इंजन (K8_SYSCALL)

Obfusk8 अब यूज़र-मोड हुक (EDRs/AVs) और स्थैतिक विश्लेषण जाँचों को बायपास करने के लिए एक अत्याधुनिक अप्रत्यक्ष सिस्कॉल तंत्र को एकीकृत करता है।

  • "द सॉर्टिंग हैट" रिज़ॉल्यूशन: ntdll.dll के .text अनुभाग को पढ़ने के बजाय (जो अक्सर हुक या निगरानी में होता है), इंजन निर्यात निर्देशिका को पार्स करता है। यह Zw से शुरू होने वाले फ़ंक्शन को फ़िल्टर करता है, उन्हें मेमोरी एड्रेस द्वारा सॉर्ट करता है, और उनके इंडेक्स के आधार पर सिस्टम कॉल नंबर (SSN) का अनुमान लगाता है। यह कभी भी निष्पादन योग्य कोड को छुए बिना SSN रिज़ॉल्यूशन की अनुमति देता है।
  • पार्श्व गैजेट निष्पादन: इंजन अपने बाइनरी में सिस्कॉल (0F 05) निर्देश नहीं रखता है। इसके बजाय, यह रनटाइम पर ntdll.dll मेमोरी के अंदर एक मान्य सिस्कॉल; रेट गैजेट ढूँढता है। स्वच्छ कॉल स्टैक: एक कस्टम थंक आवंटित किया जाता है जो ntdll गैजेट पर कूदता है। OS कर्नेल और सुरक्षा सेंसर के लिए, सिस्टम कॉल ntdll.dll से वैध रूप से उत्पन्न होता प्रतीत होता है, एक स्वच्छ कॉल स्टैक बनाए रखता है।
  • उपयोग: बस NtOpenProcess के बजाय K8_SYSCALL("ZwOpenProcess", ...) का उपयोग करें।

6. विधि-आधारित ऑब्फस्केशन (OBF_METHOD) के साथ

Obfusk8 अब विधि-आधारित ऑब्फस्केशन के माध्यम से आपके बाइनरी की सुरक्षा पर दानेदार नियंत्रण प्रदान करता है। अपने पूरे प्रोजेक्ट को ऑब्फस्केट करने के बजाय (जो प्रदर्शन को प्रभावित कर सकता है), अब आप चुनिंदा रूप से विशिष्ट, उच्च-मूल्य वाले फ़ंक्शन या क्लास विधियों की रक्षा कर सकते हैं।


उपयोग कैसे करें

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