cabextract
Cabextract is a program which unpacks Microsoft Cabinet (.cab) files used to distribute software and Windows Font Packs. It extracts files from cabinet or executable cabinet archives.
Description
Cabextract is a specialized tool for extracting files from Microsoft Cabinet (.cab) archives, a common format used by Microsoft for software distribution including Windows updates and font packs. These archives may be single files or multi-part sets, and cabextract handles both by requiring only the first file of multi-part cabinets to be specified.
The tool is particularly useful in forensic analysis, reverse engineering, and system administration tasks where access to contents of .cab files is needed without relying on Windows-specific tools. It supports testing archive integrity, listing contents, and salvaging data from corrupted cabinets, making it robust for analyzing potentially damaged files from disk images or network captures.
Cabextract operates independently of Microsoft software, providing a cross-platform solution for Linux environments like Kali, where it can be used to inspect suspicious executables or data bundles often encountered in malware analysis or penetration testing.
How It Works
Cabextract uses libmspack to parse and decompress Microsoft Cabinet (.cab) file format, which employs LZX compression and supports multi-part spanning archives. It reads cabinet headers to locate file entries, extracts them to a specified directory while handling filename cases, integrity checks via CRC validation, and corruption recovery through partial data salvage. For executable cabinets (self-extracting), it identifies and skips the executable stub to access the embedded cabinet data.
Installation
sudo apt install cabextractFlags
Examples
cabextract <cabinet file(s)>cabextract -hcabextract -l <cabinet file>cabextract -t <cabinet file>cabextract -v <cabinet file>cabextract -d /output/dir <cabinet file>cabextract -f <corrupted.cab>