Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Alcatraz — x64 बाइनरी ओब्फसकेटर PE फ़ाइलों के लिए नियंत्रण प्रवाह समतलन, एंटी-डिसअसेंबली, आयात अस्पष्टीकरण, और निर्देश उत्परिवर्तन के साथ रिवर्स इंजीनियरिंग में बाधा डालने के लिए। | Kitploit
उपकरण/GitHubGitHub/weak1337/alcatraz
रिवर्स इंजीनियरिंगबाइनरी विश्लेषण
GitHubweak1337/alcatraz

Alcatraz

x64 बाइनरी ओब्फसकेटर PE फ़ाइलों के लिए नियंत्रण प्रवाह समतलन, एंटी-डिसअसेंबली, आयात अस्पष्टीकरण, और निर्देश उत्परिवर्तन के साथ रिवर्स इंजीनियरिंग में बाधा डालने के लिए।

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

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

सभी देखें →

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

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

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

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

Alcatraz

Alcatraz एक x64 बाइनरी ऑबफसकेटर है जो विभिन्न PE फ़ाइलों को ऑबफसकेट कर सकता है, जिनमें शामिल हैं:

  • .exe
  • .dll
  • .sys

Overview

  • Alcatraz
  • Requirements
  • Usage
  • Features
    • Obfuscation of immediate moves
    • Control flow flattening
    • ADD mutation
    • Entry-point obfuscation
    • Lea obfuscation
    • Anti disassembly
    • Import obfuscation
    • Final result

Requirements

इंस्टॉल करें: https://vcpkg.io/en/getting-started.html

asmjit: vcpkg.exe install asmjit:x64-windows
Zydis: vcpkg.exe install zydis:x64-windows

Usage

imgbefore 1.) file पर क्लिक करके बाइनरी लोड करें (ऊपरी बाएँ कोने में)।
2.) Functions ट्री को विस्तारित करके फ़ंक्शन जोड़ें। (आप शीर्ष पर सर्चबार में नाम डालकर खोज सकते हैं)
3.) compile दबाएँ (नोट: बहुत सारे फ़ंक्शन को ऑबफसकेट करने में कुछ सेकंड लग सकते हैं)

Features

निम्नलिखित प्रदर्शन में सभी सुविधाओं (जो दिखाई जा रही है उसके अलावा) को अक्षम कर दिया गया है।

Obfuscation of immediate moves

यदि किसी रजिस्टर में कोई इमीडिएट वैल्यू मूव की जाती है, तो हम इसे कई बिटवाइज़ ऑपरेशन लागू करके ऑबफसकेट करते हैं। आइए लोकप्रिय फ़ंक्शन _security_init_cookie पर नज़र डालें।
पहले: imgbefore बाद में: imgafter

Control flow flattening

कंपाइलर द्वारा उत्पन्न सुव्यवस्थित प्रोग्राम संरचना को हटाकर और हमारे कोड को नए जनरेट किए गए ब्लॉकों में रखकर, हम प्रोग्राम की जटिलता बढ़ाते हैं। आइए इस सरल फ़ंक्शन main को उदाहरण के रूप में लें (इस प्रोग्राम के लिए ऑप्टिमाइज़ेशन अक्षम है):
imgmain
यदि हम इसे IDA 7.6 में डालते हैं, तो डीकंपाइलर इसे ऑप्टिमाइज़ करेगा:
imgmainnoobf
अब इसके कंट्रोल फ्लो को फ्लैट करें और IDA से इसे फिर से विश्लेषित करवाएँ:
imgmainobf
जैसा कि आप देख सकते हैं, जटिलता बहुत बढ़ गई है, भले ही मैं उत्पन्न कोड का केवल एक छोटा सा हिस्सा दिखा रहा हूँ। यदि आप जानना चाहते हैं कि CFG कैसा दिखता है: imgmaincfg

ADD mutation

यदि कोई रजिस्टर (जैसे RAX) किसी अन्य रजिस्टर (जैसे RCX) में जोड़ा जाता है, तो हम निर्देश में म्यूटेशन करेंगे। इसका मतलब है कि सिंटैक्स बदल जाता है लेकिन सिमैंटिक नहीं बदलता। निर्देश ADD RCX, RAX को निम्नलिखित में म्यूटेट किया जा सकता है:

root@kitploit:~
push rax
not rax
sub rcx, rax
pop rax
sub rcx, 1

यदि आप म्यूटेशन के बारे में अधिक जानना चाहते हैं, तो perses देखें।

Entry point obfuscation

यदि PE फ़ाइल .exe है (.dll सपोर्ट बाद में जोड़ा जाएगा), तो हम एक कस्टम एंट्री पॉइंट बनाएंगे जो स्टार्टअप पर वास्तविक एंट्री पॉइंट को डिक्रिप्ट करता है (!!! मैनुअल मैप किए जाने पर काम नहीं करता)।
imgmaincfg

Lea obfuscation

Lea ऑबफस्केशन काफी सरल लेकिन प्रभावी है। हम रजिस्टर में एक अलग लोकेशन ले जाते हैं और उसे बाद में डिक्रिप्ट करते हैं। इस तरह, रिवर्स इंजीनियर कुछ डेटा/फ़ंक्शन को क्रॉस रेफरेंस नहीं कर सकते।
मान लीजिए हमें निम्नलिखित निर्देश मिलता है: lea rcx, [0xDEAD]
हम इसे म्यूटेट करेंगे:

root@kitploit:~
pushf
lea rcx, [1CE54]
sub rcx, EFA7
popf

rcx -> 0xDEAD

Anti disassembly

यदि हमें कोई ऐसा निर्देश मिलता है जो बाइट 0xFF से शुरू होता है, तो हम उसके आगे 0xEB लगा देंगे।
हम ऐसा इसलिए करते हैं क्योंकि 0xEB 0xFF एनकोड होकर jmp rip + 1 बनता है, जो अंततः हमारे वास्तविक पहले 0xFF पर कूद जाता है। इससे वे टूल गड़बड़ा जाएंगे जो निर्देशों को रैखिक तरीके से डिकोड करते हैं।
पहले:
imgffbefore
बाद में:
imgffafter

समय-समय पर हम यह डाल सकते हैं:

root@kitploit:~
jz 3
jne 1
0xE8

IDA 0xE8 (call) को डिकोड करने का प्रयास करेगा लेकिन सफल नहीं होगा:
imgjz

Import obfuscation

अभी कोई "उचित" IAT ऑबफस्केशन नहीं है। 0xFF एंटी डिसअसेंबली ट्रिक फिलहाल इसका ध्यान रखती है। यहाँ उचित कार्यान्वयन की योजना है:
iat.cpp

Final result

यह हमारे main फ़ंक्शन का एक स्निपेट है जिसमें एंटी डिसअसेंबली को छोड़कर सब कुछ सक्षम है (ताकि IDA एक फ़ंक्शन बना सके):
imgfinal

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