<<< Date Index >>>     <<< Thread Index >>>

SECOBJADV-2008-03.2: PartyGaming PartyPoker Malicious Update Vulnerability



======================================================================
=         Security Objectives Advisory (SECOBJADV-2008-03.2)         =
======================================================================

PartyGaming PartyPoker Malicious Update Vulnerability

http://www.security-objectives.com/advisories/SECOBJADV-2008-03.txt

AFFECTED: Client software versions are irrelevant because of server changes.
          See ANALYSIS section below for details.

PLATFORM: Intel / Windows

CLASSIFICATION: Origin Validation Error (CWE-346)

RESEARCHER: Derek Callaway

IMPACT: Client-side code execution

SEVERITY: Medium

DIFFICULTY: Moderate

REFERENCES: CVE-2008-3324


BACKGROUND

PartyPoker.com (www.PartyPoker.com) is the world's largest online poker brand
in terms of number of players and revenues. You'll find a great variety of poker games and tournaments, plus blackjack.

SUMMARY

The PartyGaming PartyPoker client program can be forced into downloading a
malicious update. This is a result of the PartyPoker client not properly confirming the authenticity of the network update server or the executable update files themselves. When downloading an update, first the client program resolves the DNS address of the update host. Next, it establishes a TCP connection on port 80 of the previously resolved IP address. Then, it sends an HTTP request for an EXE file under the web server's Downloads directory. Upon receiving the HTTP response, the requested portable executable is written to disk and executed.

ANALYSIS

To successfully exploit this vulnerability an attacker must be able to somehow position themself such that they can impersonate the update server.
This can be accomplished through DNS cache poisoning, ARP redirection,
TCP hijacking, impersonation of a Wi-Fi Access Point, etc. The attacker also would have configured a rogue web server to push out update code of their choosing.

Before PartyPoker downloads the update it communicates with another PartyGaming server in the 88.81.154.0/24 subnetwork via SSL to determine if a new client update is available; if so, a HTTP GET request is sent to www1.partypoker.com for an EXE file in the /Downloads/en/vcc directory and is stored on the local filesystem under C:\Programs\PartyGaming\tmpUpgrade and executed. Afterwards, the user may login and operate the PartyPoker client as usual.

Since the update itself is downloaded from a seperate server, the client can contact the legitimate PartyGaming server during exploitation to determine if an update is available as normal. The attacker only needs to masquerade as www1.partypoker.com.

The server-side modification that has been implemented by PartyGaming causes
the first SSL connection to communicate an HTTPS URL for www1.partypoker.com
so that the update itself is downloaded over SSL as well.

WORKAROUND

None

VENDOR RESPONSE

The vendor was contacted initially and fully aware of the vulnerability. However, after unsuccessfully attempting to reestablish dialogue multiple times with limited responsiveness over a period of several months, Security Objectives proceeded with the advisory.

After the initial advisory was released, PartyGaming contacted Security Objectives and added support for HTTPS/SSL to the second update server.

DISCLOSURE TIMELINE

20-Feb-2008 Discovery of Vulnerability
22-Feb-2008 Developed Proof-of-Concept
25-Feb-2008 Reported to Vendor
14-Aug-2008 Published Advisory
14-Aug-2008 Vendor Modified Server to Utilize HTTPS/SSL
18-Aug-2008 Coordinated Second Version of Advisory with Vendor
25-Aug-2008 Released New Advisory

ABOUT SECURITY OBJECTIVES

Security Objectives is a security centric consultancy and software development
corporation which operates in the area of application assurance software. Security Objectives employs methods that are centered on software comprehension, therefore a more in-depth contextual understanding of the application is developed.

http://security-objectives.com/

LEGAL

Permission is granted for electronic distribution of this advisory.
It may not be edited without the written consent of Security Objectives.

The information contained in this advisory is believed to be accurate based on currently available information and is provided "as is" without warranty of any kind, either expressed or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. The entire risk as to the quality and performance of the information is with you.