Ethical Hacking Learn to find vulnerabilities before the bad guys do! Gain real world hands on hacking experience in our state of the art hacking lab. Course designed and taught by expert instructors with years of penetration testing experience. 12 student maximum in every class. Certification attempt included in every package. | Computer Forensics Training at InfoSec Institute Gain the in-demand skills of a certified computer examiner, learn to recover trace data left behind by fraud, theft, and cybercrime perpetrators. Discover the source of computer crime and abuse at your organization so that it never happens again. All of our class sizes are guaranteed to be 12 students or less to facilitate one-on-one interaction with one of our expert instructors. |

| Subject: | [Full-disclosure] iDefense Security Advisory 09.19.07: Multiple Vendor ImageMagick Sign Extension Vulnerability |
|---|---|
| Date: | Fri, 21 Sep 2007 15:33:20 -0400 |
Multiple Vendor ImageMagick Sign Extension Vulnerability iDefense Security Advisory 09.19.07 http://labs.idefense.com/intelligence/vulnerabilities/ Sep 19, 2007 I. BACKGROUND ImageMagick is a suite of image manipulation tools (animate, composite, conjure, convert, display, identify, import, mogrify and montage) that are sometimes used by other applications for processing image files. For more information about ImageMagick, visit the vendor's site at the following URL. http://www.imagemagick.org/ II. DESCRIPTION Remote exploitation of a sign extension vulnerability in ImageMagick, as included in various vendors' operating system distributions, allows attackers to execute arbitrary code. This vulnerability specifically exists in the ReadDIBImage() as shown below. 558 image->columns=(unsigned long) dib_info.width ... 620 bytes_per_line=4*((image->columns*dib_info.bits_per_pixel+31)/32); 621 length=bytes_per_line*image->rows; 622 pixels=(unsigned char *) AcquireMagickMemory((size_t) MagickMax( 623 bytes_per_line,image->columns+256)*image->rows*sizeof(*pixels)); ... 629 count=ReadBlob(image,length,pixels); ... 638 status=DecodeImage(image,dib_info.compression ? MagickTrue : MagickFalse,pixels); At line 558, "dib_info.width" is a signed short, which is extended to an unsigned long and assigned to "image->columns". For example, a value of 0x8000 will be extended to 0xffff8000. Later, it is used as a multiplier when calculating the allocation size. An integer overflow occurs, leading to a heap block of insufficient size being allocated. Consequently, a heap buffer overflow occurs. III. ANALYSIS Exploitation of this vulnerability allows an attacker to execute arbitrary code in the context of the user. One way of exploiting this vulnerability is to persuade a targeted user to open a malicious image file with a program that utilizes the ImageMagick library. As the tools that are part of ImageMagick are sometimes used as helper tools by other applications, this user may be the same as the web server user. This scenario is somewhat more severe than the previously described attack vector since the image processing can occur automatically. IV. DETECTION iDefense Labs confirmed that ImageMagick version 6.3.4 is vulnerable. It is suspected that other versions of ImageMagick are also vulnerable. V. WORKAROUND Exposure to this vulnerability can be mitigated by moving or deleting the related module files. The file locations may vary between distributions. The globbing expression listed below corresponds to a Red Hat Linux system. /usr/lib/ImageMagick-*/modules*/coders/dib.* VI. VENDOR RESPONSE The ImageMagick maintainers have addressed this vulnerability with the release of version 6.3.5-9. More information is available from the following URL. http://studio.imagemagick.org/pipermail/magick-announce/2007-September/000037.html VII. CVE INFORMATION The Common Vulnerabilities and Exposures (CVE) project has assigned the name CVE-2007-4988 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/04/2007 Initial vendor notification 09/05/2007 Initial vendor response 09/19/2007 Public disclosure IX. CREDIT This vulnerability was reported to iDefense by regenrecht. Get paid for vulnerability research http://labs.idefense.com/methodology/vulnerability/vcp.php Free tools, research and upcoming events http://labs.idefense.com/ X. LEGAL NOTICES Copyright © 2007 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 e-mail customerservice@idefense.com 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. _______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [Full-disclosure] iDefense Security Advisory 09.19.07: Multiple Vendor ImageMagick Multiple Denial of Service Vulnerabilities, iDefense Labs |
|---|---|
| Next by Date: | Re: [Full-disclosure] CAL-20070912-1 Multiple vendor produce handling AVI file vulnerabilities, Florian Weimer |
| Previous by Thread: | [Full-disclosure] iDefense Security Advisory 09.19.07: Multiple Vendor ImageMagick Multiple Denial of Service Vulnerabilities, iDefense Labs |
| Next by Thread: | [Full-disclosure] iDefense Security Advisory 09.20.07: CA ARCserve Backup for Laptops and Desktops Authentication Bypass Vulnerability, iDefense Labs |
| Indexes: | [Date] [Thread] [Top] [All Lists] |