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.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · chipsec/chipsec · Revision c117563
  2. chipsec/WARNING.txt GitHub · chipsec/chipsec · Revision c117563
  3. docs/sphinx/installation/InstallLinux.rst GitHub · chipsec/chipsec · Revision c117563
  4. docs/sphinx/installation/InstallWindows.rst GitHub · chipsec/chipsec · Revision c117563
  5. docs/sphinx/installation/USBwithUEFIShell.rst GitHub · chipsec/chipsec · Revision c117563
  6. docs/sphinx/usage/Running-Chipsec.rst GitHub · chipsec/chipsec · Revision c117563
  7. docs/sphinx/usage/Interpreting-Results.rst GitHub · chipsec/chipsec · Revision c117563
  8. chipsec/utilcmd/decode_cmd.py GitHub · chipsec/chipsec · Revision c117563
  9. chipsec/utilcmd/uefi_cmd.py GitHub · chipsec/chipsec · Revision c117563
  10. chipsec/modules/common/bios_wp.py GitHub · chipsec/chipsec · Revision c117563
  11. live_image/README.md GitHub · chipsec/chipsec · Revision c117563
  12. .github/workflows/tests.yml GitHub · chipsec/chipsec · Revision c117563
  13. LICENSE GitHub · chipsec/chipsec · Revision c117563
  14. https://github.com/chipsec/chipsec/releases/tag/2.0.9

More in Firmware and hardware

All 29 entries in Firmware and hardware