Bug 561856 (CVE-2010-0416)

Summary: CVE-2010-0416 HelixPlayer / RealPlayer: URL unescape buffer overflow
Product: [Other] Security Response Reporter: Tomas Hoger <thoger>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: urgent Docs Contact:
Priority: urgent    
Version: unspecifiedCC: yoyzhang
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2010-02-09 11:07:03 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 559995    

Description Tomas Hoger 2010-02-04 14:38:20 UTC
A possible buffer overflow flaw was found in the RealPlayer's / HelixPlayer's function performing URL unescaping (HTTP %-escapes unescaping, e.g. %20 -> space):

http://lists.helixcommunity.org/pipermail/common-cvs/2007-July/014956.html
https://helixcommunity.org/viewcvs/common/util/hxurl.cpp?view=log#rev1.24.4.1.4.1

Function always assumed % character was always followed by at least two extra hex characters.  If no or only one character followed, unescaping function failed to properly detect the end of the URL string (test is done by comparing character on the current position with '\0') and continued processing content of the memory after the end of URL buffer until first '\0' was found.  Depending on the content of that memory area, this could lead to buffer over-read or over-write.

Same function exists in player/hxclientkit/src/CHXClientSink.cpp too.

Comment 2 errata-xmlrpc 2010-02-09 10:16:02 UTC
This issue has been addressed in following products:

  Red Hat Enterprise Linux 4

Via RHSA-2010:0094 https://rhn.redhat.com/errata/RHSA-2010-0094.html