Tool
CHIPSEC
Platform security assessment framework, with Intel Corporation copyright notices, for analyzing PC hardware configuration, BIOS/UEFI system firmware and platform components from Windows, Linux or the UEFI shell. chipsec_main runs check modules that report whether expected protections are in place, such as BIOS and SPI flash write protection and locks, SMM and SMRR protection, memory-map locks and Secure Boot variables, as PASSED, FAILED, WARNING or informational results with JSON, XML and Markdown output. chipsec_util gives command-line and Python access to low-level interfaces and firmware data, including dumping the SPI flash to an image, decoding flash images into firmware volumes, files and NVRAM variables, and listing UEFI variables and tables.
Requirements & limits
- Release at review: 2.0.9, published 2026-09-24 with a source zip; the reviewed chipsec2 commit is five configuration and bug-fix commits ahead. The installation guide says the PyPI package is outdated. The README sends older Intel platforms (clients before 12th-generation Core, servers before 3rd-generation Xeon Scalable) to the chipsec1 branch, and almost all bundled platform configurations are Intel ones.
- Runs as Administrator/root and loads a kernel driver that is distributed as source and built locally. Linux needs Python 3.8+, kernel headers, gcc and nasm; Windows 8 to 11 and Server 2012 to 2025 need Visual Studio with the WDK, and loading the self-built driver requires disabling driver signature enforcement or enabling test signing. The UEFI shell route boots a USB drive with the repository's prebuilt UEFI Python 3.6.8 package and requires Secure Boot to be off; a mkosi recipe builds a live Linux image. The --no-driver option works only for some commands and modules.
- chipsec/WARNING.txt says to use it only on test systems, never production machines: the driver gives user mode access to physical memory and other hardware resources, and incorrect hardware access can hang or crash the OS. Some utility commands write or erase SPI flash or change UEFI variables and can leave a system unbootable; the separate tools modules, which include fuzzers, are outside this entry. A WARNING result requires manual analysis, and the results guide is marked as a draft.
- Flash images and platform data come from the machine under test or the user's own dumps; the repository bundles no vendor firmware images. CI builds the Linux driver across distributions and runs unit tests on recorded platform data plus a QEMU UEFI-shell test. GPL-2.0. Nothing was run on hardware.
About this entry
- Type
- Tool
- Category
- Firmware tools
- Relationship
- Foundation tool
- Targets
- Firmware
Sources reviewed
The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.
Primary sources
- README.md GitHub · chipsec/chipsec · Revision c117563
- chipsec/WARNING.txt GitHub · chipsec/chipsec · Revision c117563
- docs/sphinx/installation/InstallLinux.rst GitHub · chipsec/chipsec · Revision c117563
- docs/sphinx/installation/InstallWindows.rst GitHub · chipsec/chipsec · Revision c117563
- docs/sphinx/installation/USBwithUEFIShell.rst GitHub · chipsec/chipsec · Revision c117563
- docs/sphinx/usage/Running-Chipsec.rst GitHub · chipsec/chipsec · Revision c117563
- docs/sphinx/usage/Interpreting-Results.rst GitHub · chipsec/chipsec · Revision c117563
- chipsec/utilcmd/decode_cmd.py GitHub · chipsec/chipsec · Revision c117563
- chipsec/utilcmd/uefi_cmd.py GitHub · chipsec/chipsec · Revision c117563
- chipsec/modules/common/bios_wp.py GitHub · chipsec/chipsec · Revision c117563
- live_image/README.md GitHub · chipsec/chipsec · Revision c117563
- .github/workflows/tests.yml GitHub · chipsec/chipsec · Revision c117563
- LICENSE GitHub · chipsec/chipsec · Revision c117563
- https://github.com/chipsec/chipsec/releases/tag/2.0.9
More in Firmware and hardware
- binbloom · Tool
- m1n1 · Tool
- SVD-Loader for Ghidra · Tool
- ThinkPad IMX471: recovering camera tuning for Linux · Case study
- flipper-telink: replacement firmware for Tuya Zigbee remotes · Case study
- Supermodel: initial Real3D Pro-1000 image-generator emulation · Case study