PHP Input Validation Flaw in Transparent Session ID Support Permits Cross-Site Scripting Attacks
|
|
SecurityTracker Alert ID: 1008653
|
|
SecurityTracker URL: http://securitytracker.com/id?1008653
|
|
CVE Reference: CVE-2003-0442
(Links to External Site)
|
Updated: Jul 6 2008
|
Original Entry Date: Jan 8 2004
|
Impact: Disclosure of authentication information, Disclosure of user information, Execution of arbitrary code via network, Modification of user information
|
Fix Available: Yes
Vendor Confirmed: Yes
|
Version(s): prior to 4.3.2
|
Description: An input validation vulnerability was reported in PHP in the transparent session ID (SID) support. A remote user can conduct cross-site scripting attacks.
In May 2003, Sverre H. Huseby reported that the software does not validate user-supplied PHPSESSID values. If a web site supports
PHP SIDs, then a remote user can create a specially crafted URL that, when loaded by a target user, will cause arbitrary scripting
code to be executed by the target user's browser. The code will originate from the site running the PHP software and will run in
the security context of that site. As a result, the code will be able to access the target user's cookies (including authentication
cookies), if any, associated with the site, access data recently submitted by the target user via web form to the site, or take
actions on the site acting as the target user.
A demonstration exploit URL is provided:
http://[target]/index.php?PHPSESSID="><script>...</script>
The
report indicates that some scripts may or may not be accepted as a valid SID.
The vendor was reportedly notified on February
19, 2003.
|
Impact: A remote user can access the target user's cookies (including authentication cookies), if any, associated with the site running the
PHP software, access data recently submitted by the target user via web form to the site, or take actions on the site acting as
the target user.
|
Solution: The vendor added a fix to CVS on February 20, 2003 and subsequently released a fixed version (4.3.2RC1) in March 2003, available
at:
http://www.php.net/downloads.php
The author of the report also notes that as a workaround, you can disable transparent
SID support by including the following line in php.ini:
session.use_trans_sid=0
|
Vendor URL: www.php.net/ (Links to External Site)
|
Cause: Input validation error
|
Underlying OS: Linux (Any), UNIX (Any), Windows (Any)
|
|
Message History:
None.
|
Source Message Contents
|
Date: Thu, 08 Jan 2004 08:47:02 -0500
Subject: PHP Trans SID XSS (Was: New php release with security fixes)
|
From: "Sverre H. Huseby" <shh () thathost ! com>
Date: 2003-05-30 12:41:53
It also fixes the following, which wasn't mentioned in the summary (or
elsewhere, as far as I can see):
"Cross-site Scripting in PHP's Transparent Session ID Support"
http://shh.thathost.com/secadv/2003-05-11-php.txt
Sverre.
--
shh@thathost.com
http://shh.thathost.com/
|
|