
मालिकाना फ़ाइलें उत्पन्न करें जो हाल ही में प्रकाशित होमोग्लिफ़िक-अटैक (CVE-2021-42694) का उपयोग करती हैं
हाल ही में प्रकाशित होमोग्लिफ़-हमला भेद्यता का उपयोग करके दुर्भावनापूर्ण फ़ाइलें बनाएँ, जो कम से कम C, C++, C#, Go, Python, Rust, JS, ... में खोजी गई थी।
से उद्धृत करें cve.mitre.org
यूनिकोड विनिर्देश 14.0 तक के वर्ण परिभाषाओं में एक समस्या खोजी गई। यह विनिर्देश किसी हमलावर को होमोग्लिफ़्स का उपयोग करके फ़ंक्शन नामों जैसे स्रोत कोड पहचानकर्ता बनाने की अनुमति देता है जो लक्षित पहचानकर्ता के दृश्य रूप से समान दिखते हैं। हमलावर इसका उपयोग डाउनस्ट्रीम सॉफ़्टवेयर में धोखे से लागू अपस्ट्रीम सॉफ़्टवेयर निर्भरताओं में प्रतिकूल पहचानकर्ता परिभाषाओं के माध्यम से कोड इंजेक्ट करने के लिए कर सकते हैं।
होमोग्लिफ़्स के लिए कच्चा डेटा (homoglyphs.txt) यहाँ से लिया गया है और इटैलिक तथा असमान वर्णों को अलग करने के लिए डेटा साफ़ किया गया है।
कैम्ब्रिज विश्वविद्यालय से मूल स्रोत देखें:
https://www.trojansource.codes/trojan-source.pdf
python3 codegen.py [-h] [-i INFILE] [-o OUTFILE] [-r] [-a]
| arg | long arg | param | descrption |
|---|
| -h | --help | none | यह सहायता संदेश दिखाएँ और बाहर निकलें |
| -i | --infile | INFILE | इनपुट फ़ाइल जिसमें होमोग्लिफ़ प्लेसहोल्डर हैं |
| -o | --outfile | OUTFILE | आउटपुट फ़ाइल जहाँ अंतिम कोड संग्रहीत करना है |
| -r | --random | none | SET फ़्लैग यादृच्छिक होमोग्लिफ़ चुनने के लिए; सेट न होने पर पहला लें |
| -a | --about | none | बारे में पाठ प्रिंट करें |
उदाहरण मेरे द्वारा बनाए गए हैं या संदर्भित PDF से लिए गए हैं। इन उदाहरणों को चलाने के लिए, आवश्यक तर्कों के साथ codegen.py निष्पादित करें:
python3 codegen.py -i infile.xyz -o outfile.xyz और outfile.xyz चलाएँ/संकलित करें।
वर्तमान में केवल अंक [0-9] तथा छोटे और बड़े अक्षर [a-zA-Z] समर्थित हैं। अपने टेम्पलेट में किसी समर्थित वर्ण को (यादृच्छिक) होमोग्लिफ़ से बदलने के लिए, बस वर्ण को डॉलर चिह्न $ के बीच रखें। टेम्पलेट कैसा दिख सकता है, इसका पहला अंदाज़ा पाने के लिए उदाहरण देखें।