GIMP 2.8.0 – ‘.FIT’ File Format Denial of Service

  • 作者: Joseph Sheridan
    日期: 2012-06-30
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/19482/
  • Summary
    =======
    
    There is a file handling DoS in GIMP (the GNU Image Manipulation Program) for
    the 'fit' file format affecting all versions (Windows and Linux) up to and 
    including 2.8.0. A file in the fit format with a malformed 'XTENSION' header 
    will cause a crash in the GIMP program.
    
    CVE number: CVE-2012-3236
    Vendor Homepage: http://www.gimp.org/
    Date reported to vendor: 25/05/2012
    Found by Joseph Sheridan:
    href="http://www.reactionpenetrationtesting.co.uk/joseph-sheridan.html
    
    This advisory is posted at:
    http://www.reactionpenetrationtesting.co.uk/FIT-file-handling-DoS.html
    
    PoC file is available here:
    http://www.reactionpenetrationtesting.co.uk/vuln.fit
    https://gitlab.com/exploit-database/exploitdb-bin-sploits/-/raw/main/bin-sploits/19482.fit
    
    
    Affected Products
    =================
    
    Vulnerable Products
    +------------------
    
    The following products are known to be affected by this vulnerability:
    
    * GIMP <= 2.8.0 (Windows or Linux builds)
    
    Products Not Vulnerable
    +--------------------------------
    * GIMP 2.8.1
    
    Details
    =======
    
    There is a file handling DoS in GIMP (the GNU Image Manipulation Program) for
    the 'fit' file format affecting all versions (Windows and Linux) up to 2.8.0. 
    A file in the fit format with a malformed 'XTENSION' header will cause a crash 
    in the GIMP program. The flaw is triggered by opening a crafted 'fit' file or 
    allowing the file explorer dialog to preview the file.
    
    A file in the fit format starting as follows will trigger the crash:
    XTENSIONaaaaaaaaaaaaaaaaaaaaaa...aaaaaaaaaaaaaaaaaaaaaaaaHEADER2...
    
    The vulnerable code is in the fits-io.c lines where the program attempts to 
    copy from a null pointer:
    
    {
    fdat = fits_decode_card (fits_search_card (hdr, "XTENSION"), typ_fstring);
    strcpy (hdulist->xtension, fdat->fstring);
    }
    
    This code can be patched by changing it to the following (as GIMP 2.8.1):
    
    fdat = fits_decode_card (fits_search_card (hdr, "XTENSION"), typ_fstring);
    if(fdat != NULL) {
    strcpy (hdulist->xtension, fdat->fstring);
    } else {
    strcpy (errmsg, "No valid XTENSION header found.");
    goto err_return;
    }
    
    Impact
    ======
    
    Successful exploitation of the vulnerability may result in an application 
    crash and denial of service.
    
    Solution
    ===========
    The GIMP team have provided an update for this issue (release 2.8.1).
    
    Workarounds
    ===========
    
    The fits-io.c file can be patched as above.
    
    Distribution
    ============
    
    In addition to posting on the website, a text version of this notice
    is posted to the following e-mail and Usenet news recipients.
    
    * bugtraq () securityfocus com
    * full-disclosure () lists grok org uk
    * oss [dash] security [dash] subscribe [at] lists [dot] openwall [dot] com
    
    Future updates of this advisory, if any, will be placed on the ReactionIS
    corporate website, but may or may not be actively announced on
    mailing lists or newsgroups. Users concerned about this problem are
    encouraged to check the URL below for any updates:
    
    http://www.reactionpenetrationtesting.co.uk/FIT-file-handling-DoS.html
    
    ========================================================================
    ====
    
    Reaction Information Security 
    Lombard House Business Centre,
    Suite 117,
    12-17 Upper Bridge Street,
    Canterbury, Kent, CT1 2NF
    
    Phone: +44 (0)1227 785050
    Email: research () reactionis {dot} co {dot} uk
    Web: http://www.reactionpenetrationtesting.co.uk
    
    Joseph Sheridan
    Technical Director
    Principal Consultant
    CHECK Team Leader, CREST Infrastructure, CREST Application, CISSP
    Tel: 07812052515
    Web: www.reactionis.com
    Email: joe (at) reactionis.co (dot) uk [email concealed]
    
    Reaction Information Security Limited.
    Registered in England No: 6929383
    Registered Office: 1, The Mews, 69 New Dover Road, Canterbury, CT1 3DZ
    
    This email and any files transmitted with it are confidential and are intended solely for the use of the individual to whom they are addressed. If you are not the intended recipient please notify the sender. Any unauthorised dissemination or copying of this email or its attachments and any use or disclosure of any information contained in them, is strictly prohibited.
    
     Please consider the environment before printing this email