7-zip can uncompress a truckload of formats, but what if you need formats it doesn’t support or you want to integrate decompression in your own software?
Then some libraries can be really useful provided you regularly update them (otherwise you – like Symantec – can run in substantial security risks).
libmspack (license: GNU LGPL, version 2)
Formats supported:
File format | Year | Algorithm | Supported? |
---|---|---|---|
COMPRESS.EXE (SZDD) | 1990 | LZSS | Decompression |
Microsoft Help (.HLP) | 1990 | LZSS | To-do |
COMPRESS.EXE (KWAJ) | 1993 | LZSS, Huffman, DEFLATE | Decompression |
Microsoft Cabinet (.CAB) | 1995 | DEFLATE, Quantum, LZX | Decompression |
HTML Help (.CHM) | 1997 | LZX | Decompression |
Microsoft eBook (.LIT) | 2000 | LZX, SHA, DES | To-do |
Windows Imaging Format (.WIM) | 2007 | LZX, XPRESS | To-do |
Exchange Offline Address Book (.LZX) | 2008 | LZX DELTA | Decompression |
cabextract (license: GNU GPL)
Pre-compiled console wrappers around libmspack for many platforms.
WinRAR archiver, a powerful tool to process RAR and ZIP files
Libraries and pre-compiled console applications for many platforms.
HTML Help (CHM) Index
Background on CHM files.
–jeroen
Via:
Symantec dropped the ball here. A quick look at the decomposer library shipped by Symantec showed that they were using code derived from open source libraries like libmspack and unrarsrc, but hadn’t updated them in at least 7 years.
Source: Project Zero: How to Compromise the Enterprise Endpoint