SecurityReason.com - Our Reason is

Security

Register | Forget Password | Login
SecurityReason
WLB
Services
RSS
Corporate
Note

If you have found a vulnerability, please send to our SecurityAlert Database :
secalert()securityreason()com

Also if you have new ( 0-day ) exploit, please send to our ExploitAlert Archive :
exploit()securityreason()com

Home arrow SecurityAlert Database

Arrow  Topic :

Multiple Vendor chmlib CHM File Handling Buffer Overflow Vulnerability


Arrow  SecurityAlert : 125
Arrow  CVE : CVE-2005-2930
Arrow  SecurityRisk : High  Security Risk High  (About)
Arrow  Remote Exploit : Yes
Arrow  Local Exploit : No
Arrow  Exploit Available : Yes
Arrow  Credit : iDEFENSE Labs
Arrow  Published : 28.10.2005

Arrow  Affected Software : chmlib x <= 0.35



Arrow  Advisory Content :  

Multiple Vendor chmlib CHM File Handling Buffer Overflow Vulnerability

iDefense Security Advisory 10.28.05
www.idefense.com/application/poi/display?id=332&type=vulnerabilities
October 28, 2005

I. BACKGROUND

chmlib is a library for dealing with Microsoft ITSS/CHM format files.

II. DESCRIPTION

Remote exploitation of a stack overflow vulnerability in chmlib as
included in various Linux distributions allows attackers to execute
arbitrary code.

The vulnerability specifically exists due to an unchecked memory copy
while processing a CHM file. The vulnerability exists in the following
code, which is found in chm_lib.c:

static UChar *_chm_find_in_PMGL(UChar *page_buf,
UInt32
block_len,
const
char *objPath)
{
[...]
char buffer[CHM_MAX_PATHLEN+1];
/* figure out where to start and end */
cur = page_buf;
hremain = _CHM_PMGL_LEN;
if (! _unmarshal_pmgl_header(&cur, &hremain, &header))
return NULL;
end = page_buf + block_len - (header.free_space);

/* now, scan progressively */
while (cur < end)
{
/* grab the name */
temp = cur;
strLen = _chm_parse_cword(&cur);
if (! _chm_parse_UTF8(&cur, strLen, buffer))
return NULL;
[..]

_chm_parse_cword can be forced to return a value larger than
CHM_MAX_PATHLEN. This value is then used while copying user controlled
data into a CHM_MAX_PATHLEN sized stack buffer. This allows the attacker

full control over execution flow by overwriting the saved return address

on the stack.

III. ANALYSIS

Exploitation could allow attackers to execute arbitrary code with the
privileges of the user processing the CHM file. Remote exploitation can
be achieved by sending a malicious file in an e-mail message to the
target user.

IV. DETECTION

iDefense has confirmed the existence of this vulnerability in chmlib
0.35. It is suspected that all versions of chmlib are vulnerable.

The following vendors distribute susceptible chmlib packages within
their respective operating system distributions:

FreeBSD Project:
FreeBSD 5.4 and prior
Gentoo Foundation Inc.:
Gentoo Linux 1.1a, 1.2, 1.4, 2004.0, 2004.1 and 2004.2

V. WORKAROUND

Do not open CHM files sent from an untrusted source.

VI. VENDOR RESPONSE

chmlib-0.36 addresses this vulnerability and is available for download
at:

http://freshmeat.net/projects/chmlib/

VII. CVE INFORMATION

The Common Vulnerabilities and Exposures (CVE) project has assigned the
name CAN-2005-2930 to this issue. This is a candidate for inclusion in
the CVE list (http://cve.mitre.org), which standardizes names for
security problems.

VIII. DISCLOSURE TIMELINE

09/08/2005 Initial vendor notification
09/09/2005 Initial vendor response
10/28/2005 Public disclosure

IX. CREDIT

The discoverer of this vulnerability wishes to remain anonymous.

Get paid for vulnerability research
http://www.iDefense.com/poi/teams/vcp.jsp

Free tools, research and upcoming events
http://labs.iDefense.com

X. LEGAL NOTICES

Copyright (c) 2005 iDefense, Inc.

Permission is granted for the redistribution of this alert
electronically. It may not be edited in any way without the express
written consent of iDefense. If you wish to reprint the whole or any
part of this alert in any other medium other than electronically, please
email customerservice (at) iDefense (dot) com [email concealed] for
permission.

Disclaimer: The information in the advisory is believed to be accurate
at the time of publishing based on currently available information. Use
of the information constitutes acceptance for use in an AS IS condition.
There are no warranties with regard to this information. Neither the
author nor the publisher accepts any liability for any direct, indirect,
or consequential loss or damage arising from use of, or reliance on,
this information.





Arrow  Feedback :

If you have additional information or notice any errors regarding this security advisory, please use contact form or email us at info()securityreason()com.
Alert

libc:fts_*() Multiple Denial of Service

Security Risk Medium- 2009-10-02

The fts functions are provided for traversing UNIX file hierarchies...

Apache RSS Apache Alert

» Apache 1.3.41 mod_proxy
   Integer overflow (code
   execution)

» Apache Tomcat 6.0.20 and
   5.5.28 unexpected file
   deletion in work
   directory

» Apache Tomcat 6.0.20 and
   5.5.28 insecure partial
   deploy after failed
   undeploy

» Apache Tomcat 6.0.20 and
   5.5.28 unexpected file
   deletion and/or
   alteration

PHP RSS PHP Alert

» PHP 5.2.12/5.3.1
   session.save_path
   safe_mode and
   open_basedir bypass

» PHP 5.2.12/5.3.1 Multiple
   Vulnerabilities

» PHP 5.2.11 libgd multiple
   vulnerabilities

» PHP 5.2.11 tempnam()
   safe_mode bypass

Copyright © SecurityReason.com. All Rights Reserved.