
सरल dotnet Native AOT ऐप जो shellcode को ELF में बदलने के लिए LibObjectFile का उपयोग करता है
एक सरल dotnet Native AOT ऐप जो shellcode को ELF में बदलने के लिए [LibObjectFile] का उपयोग करता है।
32-bit और 64-bit (x86, x64) दोनों shellcode समर्थित हैं -> परिणामस्वरूप 32-bit या 64-bit ELF प्राप्त होता है।
[रिलीज़] linux-x64 और win-x64 दोनों के लिए संकलित की गई हैं।
यह Native AOT प्रारूप में संकलित किया गया है ताकि यह दिखाया जा सके कि यह कितना शानदार है (फिर भी, यह कष्टदायक था क्योंकि कुछ निर्भरता reflection का उपयोग करती है जो ट्रिम हो जाती है यदि हम इसे चकमा न दें :D)। डाउनलोड के लिए उपलब्ध [रिलीज़] बाइनरीज़ बिना किसी dotnet निर्भरता के मूल (native) बाइनरीज़ हैं! (तो बस चलाएँ और आनंद लें)
Native AOT संकलित, dotnet SDK 8.0.100-preview.3.23178.7 का उपयोग करके
Dotnet SDK 8+ को इसलिए चुना गया क्योंकि यह बहुत छोटी बाइनरीज़ बनाता है।
Native AOT संकलन dotnet 7 संस्करण से समर्थित है।
यदि आप निर्माण के लिए dotnet 7 का उपयोग करना चाहते हैं, तो net7.0 को लक्षित करने के लिए प्रोजेक्ट फ़ाइल को संशोधित करें -> dotnet 7 के लिए निर्माण करना बहुत आसान है।
बहुत आसान:
-p, --path [आवश्यक। shellcode फ़ाइल का पथ]
-a, --architecture [आवश्यक। आर्किटेक्चर: 32 या 64 (shellcode पर निर्भर)]
-o, --offset [वैकल्पिक। shellcode का प्रारंभिक ऑफ़सेट (डिफ़ॉल्ट 0)]
--help [यह सहायता स्क्रीन दिखाएँ]
--version [संस्करण जानकारी दिखाएँ]
shellcode को 32-bit ELF में बदलें (shellcode प्रारंभ ऑफ़सेट 66वें बाइट पर सेट):
sc2elf -a 32 -o 66 -p C:\shellcode.bin