SkypeACLKeyGen.exe का हैकिंग टीम के लिए विश्लेषण
तो...
आज हम क्या विश्लेषण करते हैं? खैर, आज हम हैकिंग टीम के एक सॉफ़्टवेयर का विश्लेषण करते हैं। यह स्काइप के बारे में है? हम ऐसा क्यों करते हैं? पता नहीं, मुझे यह दिलचस्प लगता है।
तो वैसे भी, हम रनटाइम व्यवहार का निरीक्षण करके शुरू करते हैं। जैसा कि आप देख सकते हैं, इसे एक यूज़रनेम और एक प्लगइन पथ की आवश्यकता होती है और यह एक ACL आउटपुट करता है? तो यह सब किस बारे में है? खैर, इस https://airbus-seclab.github.io/skype/vskype-part2.pdf का निरीक्षण करने से पता चलता है कि - "Skype एक ACL-जैसी प्रणाली लागू करता है ताकि प्लगइन्स को चल रहे इंस्टेंस से जुड़ने की अनुमति या अस्वीकृति दी जा सके। चेतावनी संवाद के उपयोगकर्ता के उत्तर के आधार पर कॉन्फ़िगरेशन फ़ाइल में एक प्लगइन ”हस्ताक्षर” जोड़ा जाता है" -। तो ठीक है, उस सॉफ़्टवेयर के फ़ोल्डर में क्या है?
तो अच्छा ठीक है... फिर भी हमें कुछ नहीं बताता। ठीक है, हम उस फ़ोल्डर में Office के साथ समाप्त होने वाला एक stage 1 shellcode देखते हैं, जो किसी Office एक्सप्लॉइट का संकेत हो सकता है (अभी तक पुष्टि नहीं हुई), fakeport जो एक C# ऐप है, tracer.exe और अन्य सामान। बढ़िया, मेरा अनुमान है कि वास्तविक प्लगइन जो पंजीकृत होगा वह tracer.exe है। ऐसा क्यों? खैर उसी pdf से - "Skype वॉयस इंजन एन्क्रिप्टेड ट्रेस फ़ाइलें उत्पन्न कर सकता है यदि Logging और Logging2 सेट हैं। एन्क्रिप्शन बहुत सरल है, 31 बाइट कुंजी के साथ एक बुनियादी XOR" -। तो चलिए ACL के वास्तविक जनरेटर का विश्लेषण करते हैं, और फिर tracer पर जाएँगे, और शायद किसी अन्य पोस्ट में shellcode पर ;)
हम इससे शुरू करते हैं
फिर इस पर चलते हैं
और अंत में इनमें प्रवाहित होते हैं
वहाँ से इस पर प्रवाहित होते हैं




बढ़िया, एक और गतिशील ईस्टर-एग व्यवहार यह है कि जब आप चलाने के लिए उपयोगकर्ता और प्लगइन इनपुट करते हैं तो आपको
मिलता है।
वैसे भी, हम आगे बढ़ते हैं और विश्लेषण करते हैं



तो ऊपर से नीचे के दृष्टिकोण से, यह फ़ाइल की सामग्री का sha2 परिकलित करता है और इसकी सामग्री को मेमोरी में मैप भी करता है। दुर्भाग्य से मेरे लिए गतिशील रूप से यह विफल रहा और इसलिए इसने कुछ नहीं किया :/ हम क्या कर सकते हैं। हम आगे बढ़ते हैं। हम probably_do_hash_based_function_function_recovery में जाते हैं।


दुर्भाग्य से, यह पिछले मामले जैसा ही है जहाँ हम इसे मेमोरी में मैप करने में विफल रहते हैं और फ़ंक्शन से बाहर निकल जाते हैं। फिर भी, हम केवल md5 परिकलित करते हैं और संभवतः md5 तुलना के आधार पर कुछ फ़ंक्शन पुनर्प्राप्ति करते हैं।
फिर हम आगे बढ़ते हैं और कुछ malloc और memset करते हैं
.png)
फिर हम फ़ाइलनाम को अपरकेस में बदलते हैं

यूज़रनेम के लिए भी वही

बढ़िया, और फिर हम यह करते हैं:
मूल रूप से, अपना खुद का ACL बनाते हैं ताकि हम अपने प्लगइन को चला सकें। इस मामले में, अब मैं मानता हूँ कि यह Tracer.exe होगा जो सैद्धांतिक रूप से, मेरे अनुमान के अनुसार, Skype वॉयस इंजन द्वारा उत्पन्न ट्रेस फ़ाइलों को लॉग करेगा।



ऊपर बताई गई छवियों के फ़ंक्शन का आउटपुट परिणाम

ऊपर बताई गई छवियों के फ़ंक्शन का आउटपुट परिणाम
अभी के लिए बस इतना ही। आज बाद में मैं वापस आकर इसे अपडेट करूँगा। अभी के लिए केवल इस फ़ंक्शन के आधे हिस्से का विश्लेषण करना बाकी है
इसके अलावा, जब मैं वापस आऊँगा तो हम केवल मनोरंजन के लिए some_decode फ़ंक्शन में गोता लगाएँगे और वहाँ से tracer.exe बाइनरी में जाएँगे। हैप्पी हैकिंग और जल्द मिलते हैं।