PAGES
← all tools
◆ Reverse Engineering

CHIPSEC

2.0.9 open-source

CHIPSEC is a framework for analyzing the security of PC platforms including hardware, system firmware (BIOS/UEFIUEFIA firmware specification maintained by the UEFI Forum that replaces legacy BIOS, defining how an OS and hardware initialize at boot. Cyber tools target or hook it to inspect pre-OS execution environments.), and platform components.

Summary

CHIPSEC is an open-source, free reverse-engineering framework for analyzing the security of PC platform hardware, system firmware (BIOS/UEFI), and low-level configuration, run as a command-line tool launched with administrator or root privileges, typically loading a kernel-mode driver to reach hardware directly. It works on Windows, Linux, and the UEFI shell, and it is meant for firmware and platform security researchers testing hardware on dedicated test systems rather than production machines, since its driver access can crash or compromise a running OS. Its modules span hardware protection checks, firmware vulnerability tests, fuzzing tools, and artifact acquisition, with coverage extending to current Intel platforms like Meteor Lake, Arrow Lake, and Lunar Lake. Distributions such as BlackArch and ArchStrike bundle it. First released in 2014, it remains active, with 127 contributors and a release cadence of roughly one every two weeks.

CHIPSEC is a framework for analyzing the security of PC platforms including hardware, system firmware (BIOS/UEFI), and platform components.

How CHIPSEC helps

Is this system's hardware configuration locked down the way the platform vendor intended?

runs its configuration checks against the live chipset registers and BIOS settings and reports pass/fail per protection mechanism, with coverage keyed to the specific platform generation detected

What does the firmware on this machine actually contain right now?

acquires firmware images, EFI modules, and related artifacts from the live system or a saved image for offline inspection, decompressing formats like Tiano, LZMA, Brotli, ZLIB, and GZIP as needed

Is this CPU a debug/sample part that shouldn't be trusted as production silicon?

checks control and debug-enable registers for sample-part indicators and reports the finding as informational rather than a pass/fail verdict

Has memory remapping or SGX been configured correctly on this chip?

reads the relevant model-specific and configuration registers and compares them against the expected values for that platform, flagging mismatches by register name

all 66 features, with the evidence for each →

Languages

Not documented

Features

66 capabilities · 2 backed by code, an API document or a real run

Built from CHIPSEC's releases, docs, README and our own runs. “Seen” marks the month we first spotted a release the vendor didn't date. Group names and tags are our labels.

Compare with peers →

What CHIPSEC offers you

  • Command-line interface16
  • JSON data export1
  • Python scripting support1
All capabilities 66 capabilities
Hardware platform coverage shipped Provides configuration and device ID definitions for a range of Intel platforms, enabling CHIPSEC analysis on supported hardware generations. 46 releases · 1 other source · first seen May 2014

release 46 total

  • Adds an ACPI NVS fallback for SBREG_BAR discovery, broadening platform coverage when the primary P2SB unhide path is unavailable.⁠︀︄︇︀︅︉︀︅︀︀︃︀︀︅︅︀︅︊︀︄︆︀︃︄⁠ 2.0.9 · Sep 2026 · source · release history
  • Expands platform Device ID (DID) matching to cover ADL, ARL, MTL, RPL, and TGLU Host Controller DIDs. 2.0.6 · Jul 2026 · source · release history
  • Expands platform DID matching to HostCtrl DIDs for ADL, ARL, MTL, RPL, and TGLU platforms. 2.0.6 · Jul 2026 · source · release history
  • Adds Meteor Lake (MTL) Device IDs from the datasheet, expanding hardware coverage for MTL platforms. 2.0.5 · Jun 2026 · source · release history
  • Adds Meteor Lake (MTL) Device IDs from the datasheet, extending hardware coverage for 14th Gen Intel Core platforms. 2.0.5 · Jun 2026 · source · release history
  • Adds Arrow Lake-H (ARL-H) platform support to CHIPSEC's hardware configuration. 2.0.3 · May 2026 · source · release history

docs

  • Framework for analyzing PC platform security including hardware, BIOS/UEFI firmware, and platform components via a test suite and low-level access tools.
Platform configuration management shipped Organises per-platform configuration into dedicated files and structures, including BAR register and subcomponent validity checks. 16 releases · 1 other source · first seen Oct 2017

release 16 total

  • Add ACPI NVS fallback for SBREG_BAR discovery 2.0.9 · Sep 2026 · source · release history
  • Configuration helper now supports exclusive fixed addresses for platform register definitions. 2.0.8 · Aug 2026 · source · release history
  • Splits tcobar and smbus_base into their own configuration files, improving modularity of platform configs. 2.0.5 · Jun 2026 · source · release history
  • Splits tcobar and smbus_base into their own dedicated configuration files for cleaner platform config organization. 2.0.5 · Jun 2026 · source · release history
  • Adds BAR register/field validity and subcomponent type checks to cfg_checker, strengthening configuration validation. 2.0.5 · Jun 2026 · source · release history
  • Adds BAR register/field validity and subcomponent type checks to cfg_checker, improving configuration correctness validation. 2.0.5 · Jun 2026 · source · release history

example

  • Configure CHIPSEC to load a specific PCH configuration by setting the attribute in your XML setup file. <chipsec setup="true" req_pch="True"> ... </chipsec> 1.4.4 · Nov 2019 · source
UEFI firmware HOB inspection verified Lists and dumps Hand-Off Blocks (HOBs) from UEFI firmware for inspection. 7 releases · 7 other sources · first seen May 2014

Also counts toward: Command-line interface

release 7 total

  • Adds HOB (Hand-Off Block) parsing and inspection features. 2.0.8 · Aug 2026 · source · release history
  • Adds HOB (Hardware Init Block) features 2.0.8 · Aug 2026 · source · release history
  • Adds uefi subcommands to list and dump Hand-Off Blocks (HOBs) from UEFI firmware. 2.0.7 · Jul 2026 · source · release history
  • Adds uefi subcommands to list and dump HOBs 2.0.7 · Jul 2026 · source · release history
  • Adds firmware data retrieval capability for extracting firmware information during platform analysis. 2.0.2 · Mar 2026 · source · release history
  • Adds NVRAM firmware volume padding check for deeper UEFI NVRAM validation. 1.13.4 · Jul 2024 · source · release history

docs

  • chipsec.cfg.parsers.hob_parser chipsec.cfg.parsers.ip.hob chipsec.cfg.parsers.registers.hob chipsec.hal.common.hob chipsec.modules.tools.uefi.scan_image chipsec.utilcmd.hob_cmd docs update · Aug 2026 · source
  • chipsec.cfg.parsers.hob_parser chipsec.cfg.parsers.ip.hob chipsec.cfg.parsers.registers.hob chipsec.hal.common.hob chipsec.modules.tools.uefi.scan_image chipsec.utilcmd.hob_cmd chipsec.cfg.parsers.hob_parser chipsec.cfg.parsers.ip.hob chipsec.cfg.parsers.registers.hob chipsec.hal.common.hob… docs update · Aug 2026 · source
  • chipsec.cfg.parsers.hob_parser module HOB definition parser - describes the payload of GUID extension HOBs in XML A platform configuration file pulls in HOB definitions the same way it pulls in other definitions, naming the IP node that will hold them: <hob> <definition name=”HOB” config=”HOB.hob0.xml” /> </hob> The… docs update · Aug 2026 · source
  • chipsec.cfg.parsers.ip.hob module HOB (Hand-Off Block) configuration parser. This module provides the HOBConfig class describing a <definition> entry of the top-level <hob> section. The definition names the IP node that holds the HOB structure declarations pulled in from its config file(s). seen Aug 2026 · source

command line

System Management Interrupt (SMI) monitoring shipped Monitors SMI activity and counts to detect potential SMI-based attacks or anomalies. 8 releases · 3 other sources · first seen Mar 2017

Also counts toward: Command-line interface

release 8 total

  • Introduces statistical SMI enumeration using standard deviation for more reliable SMI discovery. 1.13.8 · Dec 2024 · source · release history
  • Improves SMI detection accuracy for more reliable System Management Interrupt analysis. 1.13.7 · Oct 2024 · source · release history
  • Adds SMI contention check to the smm_ptr module's scan mode. 1.13.4 · Jul 2024 · source · release history
  • smm_ptr module now supports SMI enumeration mode for broader SMI coverage 1.13.2 · May 2024 · source · release history
  • Adds the lock_check_cmd utilcmd for checking platform hardware locks 1.7.2 · Sep 2021 · source · release history
  • Adds common.bios_smi module with updated is_supported logic for SMI checks 1.5.2 · Jun 2020 · source · release history

example

  • Check all available hardware lock statuses on a supported platform chipsec_util check all 1.7.2 · Sep 2021 · source
  • Check the status of specific locks, such as BIOS write protect chipsec_util check lock <lockname1, lockname2> 1.7.2 · Sep 2021 · source
  • Monitor System Management Interrupt activity to detect potential SMI-based attacks or anomalies. chipsec_util smi count v1.3.0 · Mar 2017 · source
Runtime platform detection shipped Automatically detects the current platform at runtime, including PCH information displayed in the CHIPSEC banner, reducing manual identification steps. 8 releases · 2 other sources · first seen Nov 2018

release 8 total

  • Displays detected PCH (Platform Controller Hub) information in the CHIPSEC banner at runtime. 2.0.7 · Jul 2026 · source · release history
  • Adds a decode dictionary to ExitCode in cfg_checker.py, making exit code interpretation programmatic. 2.0.6 · Jul 2026 · source · release history
  • Adds platform autodetection to chipsec_util uefi tables, removing the need to manually specify the platform. 2.0.6 · Jul 2026 · source · release history
  • Improves detection of certain EFI modules previously missed during firmware analysis. 1.13.7 · Oct 2024 · source · release history
  • Computes MMCFG size dynamically from MmioCfgBaseAddr in hal.mmio instead of hardcoding values 1.8.0 · Dec 2021 · source · release history
  • Detects PCH based on platform vendor ID using logic in the chipset module 1.8.0 · Dec 2021 · source · release history

example

  • Dump UEFI tables without specifying a platform — autodetection handles ADL, ARL, MTL, RPL, and TGLU targets automatically. chipsec_util uefi tables 2.0.6 · Jul 2026 · source
  • Enumerate UEFI types on the current system — useful when mapping UEFI variable or protocol namespaces. chipsec_util uefi types 2.0.6 · Jul 2026 · source
CPU state and topology inspection shipped Inspects CPU characteristics including IA untrusted bits, core topology, and related configuration registers. 7 releases · 2 other sources · first seen Oct 2019

release 7 total

  • Adds SamplePart control check to the debugenabled module to detect engineering/sample silicon. 1.13.8 · Dec 2024 · source · release history
  • Adds common.cpu.spectre_v2 module check for the presence of the Retpoline mitigation on Windows platforms 1.5.5 · Sep 2020 · source · release history
  • Adds retpoline_supported() function to helper modules (helper.basehelper, helper.linux.linuxhelper, helper.oshelper, helper.osx.osxhelper, helper.rwe.rwehelper, helper.win.win32helper) to support the new Spectre V2 detection 1.5.5 · Sep 2020 · source · release history
  • Adds chipsec_util cpu topology command under the utilcmd.cpu_cmd module to expose CPU topology details. 1.5.4 · Aug 2020 · source · release history
  • Adds the cpu.ia_untrusted module to identify if the IA untrusted bit is set on all cores 1.5.1 · May 2020 · source · release history
  • Updates remap, smm_dma, and memconfig modules to handle CPUs with the IA untrusted register defined 1.5.1 · May 2020 · source · release history

example

  • Inspect the current system's CPU topology using the new utility command. chipsec_util cpu topology 1.5.4 · Aug 2020 · source
  • Check all cores for the IA untrusted bit on supported platforms. chipsec_util main cpu ia_untrusted 1.5.1 · May 2020 · source
Return code support for tools shipped Adds return codes to specific analysis and fuzzing modules to indicate execution status via standard exit codes. 8 releases · first seen Sep 2023

release 8 total

  • Adds a decode dictionary to ExitCode in cfg_checker.py, enriching configuration check result interpretation. 2.0.6 · Jul 2026 · source · release history
  • Add return codes support to bios_kbrd_buffer, bios_smi, bios_ts modules extending the new error reporting capability 1.12.4 · Oct 2023 · source · release history
  • Adds return_codes support to the vbox and xen VMM folders in tools 1.12.3 · Sep 2023 · source · release history
  • Adds return_codes support to the wsmt tool 1.12.3 · Sep 2023 · source · release history
  • Adds return_codes support to the sinkhole, te, rogue_mmio_bar, and smm_ptr tools 1.12.3 · Sep 2023 · source · release history
  • Adds return_codes support to the iofuzz, msr_fuzz, and pcie_fuzz tools 1.12.3 · Sep 2023 · source · release history
Native OS API support shipped Enables analysis using the native operating system API as an alternative to loading a kernel module. 6 releases · first seen Nov 2016

Also counts toward: Command-line interface

release

  • chipsec_cmd.py manual installs to a path relative to the install prefix 2.0.8 · Aug 2026 · source · release history
  • Manual is now installed to a path relative to the install prefix rather than a hardcoded location. 2.0.8 · Aug 2026 · source · release history
  • Updates ASM support for the return thunk introduced in Linux kernel 6.19, maintaining compatibility with modern kernels. 2.0.2 · Mar 2026 · source · release history
  • Adds Arch Linux Docker image generation for CHIPSEC, with reduced image size. 1.13.11 · Mar 2025 · source · release history
  • Adds informative error messages when required data is missing during replay helper sessions. 1.13.9 · Jan 2025 · source · release history
  • Adds --mode native_os_api to enable the new Native OS API mode as an alternative to the CHIPSEC kernel module v1.2.5 · Nov 2016 · source · release history
QEMU emulated environment support shipped Supports running CHIPSEC analysis against QEMU-emulated platforms, including Intel 440FX and Q35 chipsets. 6 releases · first seen Aug 2016

release

  • Adds Q35 platform support for QEMU-based testing environments. 2.0.7 · Jul 2026 · source · release history
  • Adds Q35 platform for QEMU support 2.0.7 · Jul 2026 · source · release history
  • Adds platform configuration for Intel 440FX (QEMU), enabling CHIPSEC analysis in QEMU-based virtual environments. 2.0.5 · Jun 2026 · source · release history
  • Adds platform configuration for Intel 440FX (QEMU), enabling CHIPSEC analysis against QEMU-emulated environments. 2.0.5 · Jun 2026 · source · release history
  • Adds support for VIRTIO virtual devices for hardware probing on virtualized platforms v1.2.5 · Nov 2016 · source · release history
  • Adds tools.vmm.hypercallfuzz generic hypercall fuzzer, tools.vmm.xen.hypercallfuzz, tools.vmm.xen.hypercallinfo, tools.vmm.hv.hypercallfuzz, tools.vmm.hv.vmbusfuzz, tools.vmm.hv.synth_dev, and tools.vmm.hv.synth_kbd for testing VMM low-level interfaces v1.2.4 · Aug 2016 · source · release history
CLI logging control shipped Disables automatic log file generation via a specific CLI switch to keep the working directory clean. 5 releases · 1 other source · first seen Jan 2023

Also counts toward: Command-line interface

release

  • Adds ability to change line termination of the logger output. 1.13.6 · Sep 2024 · source · release history
  • Adds GIL (Global Interpreter Lock) status reporting to surface Python GIL state during runs. 1.13.6 · Sep 2024 · source · release history
  • Enables ANSI color logging on Windows via the logger color command. 1.13.4 · Jul 2024 · source · release history
  • Adds -nl switch to disable automatic logging output 1.11.1 · Jun 2023 · source · release history
  • Decouples chipsec_main from the logger to allow independent control of main module behavior 1.10.1 · Jan 2023 · source · release history

example

  • Run chipsec without generating log files to keep the working directory clean chipsec_util run <module> -nl 1.11.1 · Jun 2023 · source
Machine-readable scan output shipped Exports scan results to a file for downstream processing or integration with other cyber tooling. 4 releases · 2 other sources · first seen Mar 2017

release

  • Add csv log option and fix value returned after running only one test 1.13.0 · Mar 2024 · source · release history
  • chipsec_main gains a new command-line option to export results in markdown format 1.5.0 · May 2020 · source · release history
  • Added new INFORMATION module result types (NOT IMPLEMENTED, NOT APPLICABLE) to replace SKIPPED v1.3.6rc1 · Feb 2018 · source · release history
  • Tests previously marked as SKIPPED are now recorded as NOT IMPLEMENTED in results v1.3.6rc1 · Feb 2018 · source · release history

example

  • Export test results to a CSV file for offline analysis. chipsec_util.py <subcommand> -csv <filename> 1.13.0 · Mar 2024 · source
  • Export scan results to a machine-readable file for downstream processing or integration with other cyber tooling. chipsec_main -m tools.uefi.whitelist -a check /path/to/firmware.bin --json output.json v1.3.0 · Mar 2017 · source
JSON result export shipped Exports analysis results in JSON format for structured data consumption. 5 releases · first seen Mar 2017

Also counts toward: Command-line interface, JSON data export

release

  • Adds missing UEFI section-type decoders per the PI and UEFI specifications, including correct handling of EFI_SECTION_DISPOSABLE (type 0x03) and fixed DEPEX opcode decoding to PI 1.9. 2.0.9 · Sep 2026 · source · release history
  • Extends reg.is_defined to check BAR when evaluating MMIO/IOBAR registers. 1.13.15 · Aug 2025 · source · release history
  • Adds archiving status tracking to the framework for test modules. 1.13.10 · Feb 2025 · source · release history
  • Added result delta functionality to highlight differences in results v1.3.6 · Nov 2018 · source · release history
  • Adds --json command-line argument to export CHIPSEC results in JSON format v1.3.0 · Mar 2017 · source · release history
Enhanced logging and debugging output shipped Provides ISO 8601 timestamps, execution time capture, detailed logger messaging, and improved file naming for log management. 5 releases · first seen Jan 2021

release

  • Enhanced logger messaging provides additional detail to aid debugging efforts. 2.0.8 · Aug 2026 · source · release history
  • Uses ISO 8601 format for datetime in auto-generated log filenames. 2.0.4 · May 2026 · source · release history
  • Captures time of execution in CHIPSEC logging output. 2.0.4 · May 2026 · source · release history
  • Enables logging to paths outside the default LOGPATH directory via updated config parsing 1.12.0 · Jul 2023 · source · release history
  • Adds -vv command-line option to chipsec_main and chipsec_util for extremely verbose output 1.5.9 · Jan 2021 · source · release history
Disk image boot environment verified Builds, reuses, or force-rebuilds a disk image for booting CHIPSEC in a controlled test environment, with configurable working directory. 2 releases · 3 other sources · first seen Jul 2024

release

  • Adds live USB automatic build support via mkosi. 1.13.8 · Dec 2024 · source · release history
  • Adds error message when UEFI compression modules are missing, improving diagnosis of incomplete setups. 1.13.4 · Jul 2024 · source · release history

command line

  • --work-dir — directory for the disk image (default: auto-created temp dir) 2.0.7 · Jul 2026 · command-line history
  • --reuse-disk — path to an existing disk image to boot (skip build) 2.0.7 · Jul 2026 · command-line history
  • --rebuild — force-rebuild the disk image even if one already exists 2.0.7 · Jul 2026 · command-line history
UEFI variable enumeration shipped Lists and enumerates UEFI variable types on the running system, with automatic platform detection removing the need for manual specification. 3 releases · 2 other sources · first seen Mar 2020

Also counts toward: Command-line interface

release

  • Adds platform autodetection to chipsec_util uefi tables, removing the need to specify the platform manually. 2.0.6 · Jul 2026 · source · release history
  • Supports both hexadecimal and base-10 formatted attribute input in the access_uefispec module, removing the need to pre-convert values before passing them. 1.13.16 · Sep 2025 · source · release history
  • Adds tools.secureboot.shell module including Shell.efi 1.4.8 · Mar 2020 · source · release history

example

  • List supported UEFI types on the current platform without manually identifying it first. chipsec_util uefi types 2.0.6 · Jul 2026 · source
  • Enumerate UEFI variable types on the running system — platform is now detected automatically, no manual specification needed. chipsec_util uefi tables 2.0.6 · Jul 2026 · source
SGX configuration validation shipped Validates Software Guard Extensions (SGX) settings by providing a dedicated check module and associated register definitions. 5 releases · first seen Nov 2018

release

  • Adds an additional warning condition to the sgx_check module for broader SGX misconfiguration coverage. 1.13.18 · Nov 2025 · source · release history
  • Changes sgx_check module result to information when CPU is a sample part, rather than a pass/fail verdict. 1.13.10 · Feb 2025 · source · release history
  • Adds MC1 register check to the remap module for broader memory remapping validation. 1.13.10 · Feb 2025 · source · release history
  • Adds CPU sample-part detection to the sgx_check module. 1.13.8 · Dec 2024 · source · release history
  • Added sgx_check module and register definitions for SGX configuration validation v1.3.6 · Nov 2018 · source · release history
Windows driver physical memory allocation support shipped Provides a Windows driver interface (IOCTL_ALLOC_PHYSMEM) to allocate physical memory buffers for analysis. 5 releases · first seen May 2014

Also counts toward: Command-line interface

release

  • Automatically detects the running kernel version to locate the correct script for signing the CHIPSEC driver, simplifying secure-boot-enabled deployments. 1.13.12 · May 2025 · source · release history
  • Increases Linux maximum physical memory write size from 0xFFFF to 0xFFFFFFFF, enabling larger memory operations. 1.13.4 · Jul 2024 · source · release history
  • Adds VS2022 support for the Windows driver via updates in drivers/win7/driver.c 1.8.8 · Aug 2022 · source · release history
  • Added vmem subcommand to chipsec_util for accessing virtual memory addresses v1.3.6rc1 · Feb 2018 · source · release history
  • Adds IOCTL_ALLOC_PHYSMEM IOCTL in the Windows driver to allocate physical memory buffers v1.1.0 · May 2014 · source · release history
Configuration validation and error detection shipped Validates configuration data structures, cross-references registers, checks MSR scope correctness, and handles fixed addresses. 4 releases · first seen Jul 2023

release

  • Adds MSR scope correctness checks to catch misconfigured MSR definitions. 2.0.8 · Aug 2026 · source · release history
  • Configuration helper supports exclusive fixed addresses 2.0.8 · Aug 2026 · source · release history
  • Adds a function to cross-reference registers and surface configuration errors. 2.0.3 · May 2026 · source · release history
  • Configuration files must now include an <info></info> block or loading will fail due to modified config loading behavior 1.12.0 · Jul 2023 · source · release history
UEFI variable interface fuzzing shipped Fuzzes the UEFI Variable interface via SPI flash NVRAM writes to test robustness. 4 releases · first seen Mar 2017

Also counts toward: Python scripting support

release

  • Makes the UEFI variable modification test more configurable. 1.13.15 · Aug 2025 · source · release history
  • Full Python 3 compliance added to tools.secureboot.te, modules.common.spd_wd, modules.tools.uefi.uefivar_fuzz, hal.acpi, and fuzzing.primitives 1.4.1 · Sep 2019 · source · release history
  • Added Fuzzing primitives file from Sulley fuzz testing framework 1.3.8 · Jul 2019 · source · release history
  • Introduces tools.uefi.uefivar_fuzz module for fuzzing the UEFI Variable interface via SPI flash NVRAM writes v1.3.0 · Mar 2017 · source · release history
CLI banner suppression shipped Suppresses the extended startup banner output via a dedicated CLI argument. 4 releases · first seen Sep 2020

release

  • Changes default logger file name to include the entry name and timestamp (entry-yearMonDay-Time.log). 1.13.10 · Feb 2025 · source · release history
  • The default logger file name format has changed to entry-yearMonDay-Time.log; any automation that relies on the previous default log file name pattern will need to be updated. 1.13.10 · Feb 2025 · source · release history
  • Adds the --skip_config CLI argument to suppress the extended startup banner. 1.10.3 · Mar 2023 · source · release history
  • Adds skip_config and no_banner command-line options to chipsec_main and chipsec_util to control configuration loading and console output 1.5.5 · Sep 2020 · source · release history
CLI unified module execution shipped Executes analysis modules via a unified interface through the new `.run()` subcommand in main and util scripts. 3 releases · 1 other source · first seen Jan 2021

Also counts toward: Command-line interface

release

  • Enumerate modules in modules folder using '-lm' 1.13.0 · Mar 2024 · source · release history
  • Adds .run() subcommand to chipsec_main.py and chipsec_util.py to execute modules via a unified interface 1.11.0 · May 2023 · source · release history
  • Updates utilcmd.mmcfg_cmd, utilcmd.msgbus_cmd, utilcmd.reg_cmd, utilcmd.spd_cmd, utilcmd.spidesc_cmd, and utilcmd.vmm_cmd CLIs to use argparse 1.5.9 · Jan 2021 · source · release history

example

  • List all available modules in the local modules folder. chipsec_util.py -lm 1.13.0 · Mar 2024 · source
UEFI decode improvements shipped Improves UEFI section type decoding per specifications, adds offset/GUID context to warnings, and resolves log file conflicts. 3 releases · first seen Sep 2026

release

  • Improves uefi decode output by replacing the set_log_file() redirect pattern with direct file I/O for .lst artifacts, eliminating log-file conflicts where NVRAM output clobbered the .UEFI.lst handler. 2.0.9 · Sep 2026 · source · release history
  • Adds offset and GUID context to UEFI parse warning messages so users can trace which firmware module triggered each warning. 2.0.9 · Sep 2026 · source · release history
  • Adds missing UEFI section-type decoders per the PI and UEFI specifications, including correct handling of EFI_SECTION_DISPOSABLE (type 0x03) and fixed DEPEX opcode decoding to PI 1.9. 2.0.9 · Sep 2026 · source · release history
EFI variable subsystem flags shipped Adds support for checking and flagging enhanced authentication access within the EFI variable subsystem. 3 releases · first seen May 2023

release

  • Linux kernel driver is now loaded via modprobe before searching for the driver file, improving portability of installed builds. 2.0.8 · Aug 2026 · source · release history
  • Linux driver is loaded with modprobe before searching for the file 2.0.8 · Aug 2026 · source · release history
  • Adds flag and check for efi_var_enhanced_auth_access in the EFI variable subsystem 1.11.0 · May 2023 · source · release history
Test module archiving status tracking shipped Adds framework support for tracking the archiving status of test modules to manage lifecycle and availability. 3 releases · first seen Feb 2025

release

  • cfg/<vendor>/ configuration files are now installed nested below the vendor directory 2.0.8 · Aug 2026 · source · release history
  • Configuration files nested below cfg/<vendor>/ are now correctly installed during package setup. 2.0.8 · Aug 2026 · source · release history
  • Adds archiving status tracking to the framework for test modules. 1.13.10 · Feb 2025 · source · release history
Improved logging file naming shipped Changes the default logger file name format to include the entry name and timestamp for better log management. 3 releases · first seen Feb 2025

release

  • Uses ISO 8601 format for datetime in auto-generated log filenames. 2.0.4 · May 2026 · source · release history
  • Captures time of execution in CHIPSEC logging output. 2.0.4 · May 2026 · source · release history
  • Changes default logger file name to include the entry name and timestamp (entry-yearMonDay-Time.log). 1.13.10 · Feb 2025 · source · release history
UEFI firmware image parsing support shipped Parses and inspects UEFI firmware images, including HOB structures, with support for Brotli, ZLIB, GZIP, and LZMA compression formats. 2 releases · 1 other source · first seen Jan 2026

release

  • Adds firmware data retrieval capability for extracting firmware information during platform analysis. 2.0.2 · Mar 2026 · source · release history
  • Supports Brotli compression and decompression for firmware image parsing. 1.13.20 · Jan 2026 · source · release history

docs

  • chipsec.cfg.parsers.ip.hob module HOB (Hand-Off Block) configuration parser. This module provides the HOBConfig class describing a <definition> entry of the top-level <hob> section. The definition names the IP node that holds the HOB structure declarations pulled in from its config file(s). seen Aug 2026 · source
Enhanced firmware compression handling shipped Expands the HAL compression layer to support ZLIB and GZIP formats alongside improved LZMA processing. 3 releases · first seen May 2025

release

  • Supports Brotli compression and decompression for firmware image parsing. 1.13.20 · Jan 2026 · source · release history
  • Adds ZLIB and GZIP compression support to the HAL compression layer. 1.13.13 · May 2025 · source · release history
  • Improves LZMA compression handling in the HAL compression layer. 1.13.13 · May 2025 · source · release history
LZMA compression support shipped Adds support for parsing firmware images compressed with the LZMAF86 format. 3 releases · first seen May 2023

release

  • Adds ZLIB and GZIP compression support to the HAL compression layer. 1.13.13 · May 2025 · source · release history
  • Improves LZMA compression handling in the HAL compression layer. 1.13.13 · May 2025 · source · release history
  • Adds support for the LZMAF86 compression format 1.11.0 · May 2023 · source · release history
EFI capsule and RAW section parsing shipped Parses EFI firmware update capsules and raw binary sections for inspection. 3 releases · first seen Nov 2016

release

  • Adds validation of EFI compressed data before attempting Tiano/UEFI decompression, preventing unsafe decompression of malformed firmware blobs. 1.13.12 · May 2025 · source · release history
  • Adds an environment variable to enable brute-force EFI module scanning at the HAL layer, unlocking deeper firmware analysis when standard enumeration falls short. 1.13.12 · May 2025 · source · release history
  • Adds parsing capabilities for EFI firmware update capsules and RAW sections v1.2.5 · Nov 2016 · source · release history
Platform firmware protection (PFS) support shipped Adds support for platform firmware protection scenarios and verification. 3 releases · first seen Jun 2017

release

  • Adds a TE (Tiano Edition) test download prompt to streamline module setup 1.13.3 · Jun 2024 · source · release history
  • common.spd_wd - new module to check SPD Write Disable bit 1.3.8 · Jul 2019 · source · release history
  • Adds PFS module support for platform firmware protection scenarios v1.3.1 · Jun 2017 · source · release history
Intel TXT state inspection shipped Checks the state of Intel TXT components and dumps public register values via a dedicated subcommand. 2 releases · 1 other source · first seen Mar 2022

Also counts toward: Command-line interface

release

  • Adds Intel TXT register definitions from the SEAM Loader for chipset analysis 1.11.0 · May 2023 · source · release history
  • Adds txt subcommand to chipsec_util with dump and state operations for Intel TXT public registers 1.8.2 · Mar 2022 · source · release history

example

  • Dump the current state of Intel TXT public registers from the command line. chipsec_util txt dump 1.8.2 · Mar 2022 · source
UEFI firmware image blacklisting shipped Checks UEFI firmware images against a blacklist configuration to identify prohibited EFI binaries. 3 releases · first seen Aug 2016

release

  • Add fw_bleed detection capability to the scan_blocked tool in chipsec/modules/tools/uefi/blockedlist.json 1.9.0 · Oct 2022 · source · release history
  • Introduces tools.uefi.whitelist module to generate and check EFI executable lists against firmware images v1.3.0 · Mar 2017 · source · release history
  • Adds tools.uefi.blacklist to check UEFI firmware image for black-listed EFI binaries, using configuration in blacklist.json v1.2.4 · Aug 2016 · source · release history
Hardware abstraction layer selection shipped Allows explicit selection of the hardware abstraction helper or backend used by the cyber tooling. 3 releases · first seen Jan 2020

Also counts toward: Command-line interface

release

  • Python2 is no longer supported and requires using Python3 instead. 1.8.8 · Aug 2022 · source · release history
  • Adds direct access to kernel symbols via /proc/kallsyms in the Linux driver drivers/linux/chipsec_km.c 1.5.9 · Jan 2021 · source · release history
  • Adds --helper variable to the chipsec_util CLI to allow explicit helper selection 1.4.6 · Jan 2020 · source · release history
SMM memory sinkhole detection shipped Detects if the CPU hardware is vulnerable to the SMM memory sinkhole flaw. 3 releases · first seen Aug 2016

release

  • Adds textual representation of the status returned by send_smmc_SMI in utilcmd.interrupts_cmd and hal.uefi_common 1.6.0 · Apr 2021 · source · release history
  • Introduces the common.smm_code_chk new module that checks if SMM_Code_Chk_En is configured properly 1.5.10 · Feb 2021 · source · release history
  • Adds tools.cpu.sinkhole to check if CPU is affected by The SMM memory sinkhole vulnerability v1.2.4 · Aug 2016 · source · release history
Named register access via CLI shipped Enables accessing registers by name within the chipsec_util CLI utility. 3 releases · first seen Jun 2017

Also counts toward: Command-line interface

release

  • Allows command line arguments to be passed to all modules 1.3.7 · Mar 2019 · source · release history
  • Switches command line argument parsing module for chipsec_main and chipsec_util 1.3.7 · Mar 2019 · source · release history
  • Enables named register access in chipsec_util CLI utility v1.3.1 · Jun 2017 · source · release history
Management Engine manufacturing mode inspection shipped Determines the current manufacturing mode of the Intel Management Engine via a dedicated detection module. 2 releases · first seen Nov 2018

release

  • Add CET module: Enables Chipset Error Tracking (CET) support in CHIPSEC 1.12.8 · Jan 2024 · source · release history
  • Added me_mfg_mode module for checking Management Engine manufacturing mode v1.3.6 · Nov 2018 · source · release history
Signed firmware volume parsing shipped Parses Firmware Volumes (FVs) contained within a signed firmware image for inspection. 2 releases · first seen Jun 2020

release

  • Adds ability to parse Firmware Volumes (FVs) contained within a signed Firmware Volume 1.10.0 · Dec 2022 · source · release history
  • Adds hal.uefi_fv file to simplify Firmware Volume functionality 1.5.2 · Jun 2020 · source · release history
SPI region access rights verification shipped Verifies host processor access rights for different SPI regions using the common.spi_access module. 2 releases · first seen Sep 2017

release

  • Adds SFDP definition configuration in common.py 1.4.6 · Jan 2020 · source · release history
  • Adds common.spi_access module to verify host processor access rights for different SPI regions v1.3.3 · Sep 2017 · source · release history
SMM firmware MMIO BAR hijacking detection shipped Checks SMM firmware for vulnerabilities related to MMIO BAR hijacking. 1 release · 1 other source · first seen Mar 2017

release

  • Introduces tools.smm.rogue_mmio_bar experimental module for checking SMM firmware for MMIO BAR hijacking vulnerabilities v1.3.0 · Mar 2017 · source · release history

docs

  • chipsec.library.uefi.hob chipsec.modules.tools.smm.rogue_mmio_bar chipsec.modules.tools.uefi.scan_blocked chipsec.modules.tools.vmm.pcie_overlap_fuzz chipsec.library.uefi.hob chipsec.modules.tools.smm.rogue_mmio_bar chipsec.modules.tools.uefi.scan_blocked chipsec.modules.tools.vmm.pcie_overlap_fuzz seen Jul 2026 · source
Targeted MMIO operations shipped Performs Memory-Mapped I/O operations on specific PCI endpoints by accepting Bus:Device.Function addresses. 1 release · first seen May 2026

Also counts toward: Command-line interface

release

  • Enables the MMIO HAL and command to accept a BDF (Bus:Device.Function) instance, allowing targeted MMIO operations on specific PCI endpoints. 2.0.3 · May 2026 · source · release history
UEFI shell execution support shipped Enables running analysis tools within the UEFI Shell environment for pre-OS assessment scenarios. 1 release · first seen Mar 2026

Also counts toward: Command-line interface

release

  • Updates chipsec2 to run in the UEFI Shell environment, expanding pre-OS assessment options. 2.0.2 · Mar 2026 · source · release history
XML configuration validation shipped Includes an xml_validator script to verify attribute types within CHIPSEC XML configuration files to ensure data integrity. 1 release · first seen Nov 2025

release

  • Adds xml_validator script to verify attribute types in CHIPSEC XML configuration files. 1.13.18 · Nov 2025 · source · release history
Dependency installation confirmation shipped Adds a confirmation prompt before installing dependencies to ensure user intent before proceeding. 1 release · first seen Oct 2025

release

Flexible attribute format support shipped Accepts both hexadecimal and base-10 formatted attributes in the access_uefispec module, eliminating the need for pre-conversion. 1 release · first seen Sep 2025

release

  • Supports both hexadecimal and base-10 formatted attribute input in the access_uefispec module, removing the need to pre-convert values before passing them. 1.13.16 · Sep 2025 · source · release history
Configurable UEFI variable modification tests shipped Provides more configurable options for UEFI variable modification tests to allow flexible testing scenarios. 1 release · first seen Aug 2025

release

  • Makes the UEFI variable modification test more configurable. 1.13.15 · Aug 2025 · source · release history
Enhanced MMIO register definition checking shipped Extends the reg.is_defined function to check BAR states when evaluating MMIO/IOBAR registers for more comprehensive validation. 1 release · first seen Aug 2025

release

  • Extends reg.is_defined to check BAR when evaluating MMIO/IOBAR registers. 1.13.15 · Aug 2025 · source · release history
SMM strap lock testing shipped Adds test support for SMM strap locks on Comet Lake (CML) PCH platforms to validate platform configuration correctness. 1 release · first seen Aug 2025

release

  • Adds strap lock test support for Comet Lake (CML) PCH platforms. 1.13.15 · Aug 2025 · source · release history
TPM2 firmware security analysis support shipped Extends TPM inspection capabilities to support TPM2 specifications and associated firmware security checks. 1 release · first seen Aug 2025

release

Automated secure boot driver signing shipped Detects the running kernel version to automatically locate and use the correct script for signing the CHIPSEC driver in secure-boot-enabled deployments. 1 release · first seen May 2025

release

  • Automatically detects the running kernel version to locate the correct script for signing the CHIPSEC driver, simplifying secure-boot-enabled deployments. 1.13.12 · May 2025 · source · release history
Deep EFI module enumeration via brute-force scanning shipped Enables deeper firmware analysis by allowing the HAL to perform brute-force scanning of EFI modules when standard enumeration is insufficient. 1 release · first seen May 2025

release

  • Adds an environment variable to enable brute-force EFI module scanning at the HAL layer, unlocking deeper firmware analysis when standard enumeration falls short. 1.13.12 · May 2025 · source · release history
UEFI compressed data validation shipped Validates EFI compressed data structures before attempting Tiano/UEFI decompression to prevent unsafe processing of malformed firmware blobs. 1 release · first seen May 2025

release

  • Adds validation of EFI compressed data before attempting Tiano/UEFI decompression, preventing unsafe decompression of malformed firmware blobs. 1.13.12 · May 2025 · source · release history
Arch Linux Docker build support shipped Generates an Arch Linux-based Docker image for running CHIPSEC with a reduced container footprint. 1 release · first seen Mar 2025

release

  • Adds Arch Linux Docker image generation for CHIPSEC, with reduced image size. 1.13.11 · Mar 2025 · source · release history
CET (Chipset Error Tracking) validation shipped Enables validation and analysis of Chipset Error Tracking (CET) configurations and state. 1 release · first seen Jan 2024

release

  • Add CET module: Enables Chipset Error Tracking (CET) support in CHIPSEC 1.12.8 · Jan 2024 · source · release history
PCI extended capabilities inspection shipped Inspects PCIe extended capabilities as part of PCI component analysis. 1 release · first seen Aug 2023

release

Exit code configuration shipped Provides an option to configure the return codes mode for main and utility modules. 1 release · first seen Jun 2023

release

WSMT table verification shipped Checks for the presence and configuration of the Windows SMM Memory Attribute Table (WSMT) to validate SMM access controls. 1 release · first seen Jun 2021

release

  • Adds common.wsmt module to check for the presence and configuration of the WSMT table 1.6.4 · Jun 2021 · source · release history
BIOS keyboard buffer analysis shipped Inspects BIOS keyboard buffer memory regions for analysis and detection of potential anomalies. 1 release · first seen Jun 2020

release

  • Adds common.bios_kbrd_buffer module for BIOS keyboard buffer analysis 1.5.2 · Jun 2020 · source · release history
VMM Extended Page Table inspection shipped Locates Extended Page Tables (EPT) to support virtual machine monitor analysis. 1 release · first seen Mar 2020

release

  • Adds tools.vmm.ept_finder module to locate Extended Page Tables (EPT) 1.4.9 · Mar 2020 · source · release history
LoJax firmware rootkit detection shipped Detects the presence of the LoJax firmware rootkit within the system's boot environment. 1 release · first seen Nov 2018

release

PCI command/control register inspection shipped Inspects PCI command and control registers via the utilcmd subcommand. 1 release · first seen Oct 2017

Also counts toward: Command-line interface

release

  • Added utilcmd subcommand to inspect PCI command/control registers v1.3.4 · Oct 2017 · source · release history
TPM command execution shipped Executes commands on the TPM hardware via the utilcmd subcommand. 1 release · first seen Oct 2017

Also counts toward: Command-line interface

release

TPM Event Log inspection shipped Inspects TPM Event Logs via the HAL using the utilcmd subcommand. 1 release · first seen Oct 2017

Also counts toward: Command-line interface

release

  • Added utilcmd support for TPM Event Log inspection via the HAL v1.3.4 · Oct 2017 · source · release history
Memory string search shipped Searches a specified memory region for a given string pattern. 1 release · first seen Sep 2017

release

MMIO messaging bus support shipped Provides support for the MMIO messaging bus (MSGBUS) via a new module. 1 release · first seen Jun 2017

release

  • Adds MMIO messaging bus (MSGBUS) support via new module v1.3.1 · Jun 2017 · source · release history
UEFI firmware image whitelisting shipped Checks EFI executable lists against firmware images to identify permitted binaries. 1 release · first seen Mar 2017

release

  • Introduces tools.uefi.whitelist module to generate and check EFI executable lists against firmware images v1.3.0 · Mar 2017 · source · release history
VMM hypercall interface access shipped Allows direct execution of VMM hypercalls from the guest operating system without requiring a kernel driver. 1 release · first seen Nov 2016

release

  • Adds VMM hypercall interfaces allowing direct hypercalls from Linux VMs without a kernel driver v1.2.5 · Nov 2016 · source · release history

Lines in monospace are the tool's own words: help text parsed from its source, or an endpoint from its API document. Under release, a line is our summary of a dated release. Under docs, it is quoted from the tool's own documentation or website. Each links back to the source it came from.

Score card

  1. Shipping velocity releases a month, last 12 months
  2. Documentation quality release-notes rubric, 0–100
  3. Breaking-change discipline how rarely a release breaks users, and notice given
  4. Maintenance risk quiet time against its own cadence, maintainers
  5. Innovation & surface new capabilities, API and MCP surface
  6. Community health
  7. Contributor trend distinct committers, this year against last
  8. Maintainer concentration bus factor now against a year ago
  9. Issue backlog trend issues closed per issue opened, 12 months
  10. Responsiveness median time to a maintainer’s first reply

Nine scores for CHIPSEC, each built from the releases, notes and API history this site tracks — and, on Researcher and Business, where it stands among every measured tool in its category and how that has moved.

Score cards are part of every paid plan.

See plans →

Each score is 0–100 on a published rubric, derived from data this site already shows. A dimension we cannot measure says so — it is never scored 0 and never enters a rank.

How this is scored
  • Shipping velocity — releases a month over the last 12 months, on a log scale where 16 a month scores 100. Needs 3 releases in the window.
  • Documentation quality — the release-notes rubric published on the analytics page, unchanged.
  • Breaking-change discipline — the share of releases carrying a breaking change (none scores 100, half or more scores 0). Only projects that label breaking changes are measured: a clean record cannot be told from an unlabelled one.
  • Maintenance risk — quiet time measured against the tool's own release cadence (quiet longer than 90 days and three typical gaps scores 0), plus the number of active maintainers and whether contributors are growing, where known. Higher is lower risk.
  • Innovation & surface — new capabilities in the feature ledger this year, API and MCP operations added, and the share of commits that are features: the mean of whichever we hold.
  • Community health (open-source tools only) — each is a direction, not a size: contributors this year against last, the bus factor now against a year ago, and issues closed per issue opened, where steady scores 50, doubled 100 and halved 0; plus the median time to a maintainer's first reply (an hour scores about 100, a month or more 0). A commercial card has no repository and carries none of the four.
  • Documented delivery (commercial tools) — when a vendor's documented new capabilities have slowed against its own baseline, that counts against the overall standing as heavily as two low dimensions. Steady delivery, or too little history to judge, leaves the standing alone; it is never a sixth score.
  • Open-source tools are scored on repository signals; commercial tools on their published changelog. Ranks compare tools within one category and one profile and need at least five measured peers; the overall standing needs three ranked dimensions. Best-in-breed or consolidator is a shape, not a quality, and is never scored.

Release-note detail over time

See how much detail CHIPSEC puts in its release notes, quarter by quarter, and compare it with tracked tools in the same category. This history uses up to ten retained, reviewed notes per tool; sparse or blank older quarters may reflect that limit.

Checking release-note history…

Explore the full chart →

Releases

Show

78 entries

  1. September 20261
  2. August 20264
  3. July 20262
  4. June 20262
  5. May 20262
  6. March 20261
  7. January 20261
  8. November 20251
  9. October 20251
  10. September 20251
  11. August 20251
  12. May 20252
  13. March 20251
  14. February 20251
  15. January 20251
  16. December 20241
  17. October 20241
  18. September 20241
  19. July 20241
  20. June 20241
  21. May 20241
  22. April 20241
  23. March 20241
  24. January 20241
  25. October 20231
  26. September 20231
  27. August 20231
  28. July 20231
  29. June 20231
  30. May 20231
  31. March 20232
  32. January 20231
  33. December 20221
  34. October 20221
  35. August 20221
  36. June 20221
  37. April 20221
  38. March 20221
  39. February 20221
  40. December 20211
  41. September 20211
  42. July 20211
  43. June 20211
  44. April 20211
  45. February 20211
  46. January 20211
  47. September 20201
  48. August 20201
  49. June 20201
  50. May 20202
  51. March 20202
  52. January 20201
  53. December 20191
  54. November 20191
  55. October 20191
  56. September 20191
  57. August 20191
  58. July 20191
  59. March 20191
  60. November 20181
  61. February 20181
  62. October 20171
  63. September 20171
  64. June 20171
  65. March 20171
  66. November 20161
  67. August 20161
  68. May 20141
    Show

    78 entries

    Project health

    Issue, contributor and maintainer activity in chipsec/chipsec, 2023-10 – 2026-09, as of 2026-09-25. Twelve-month figures first; the trend lines run the whole window.

    1. Contributors 17 +3 vs prior 12 months
    2. Maintainers 3 +2 joined · −3 left, last 12 months
    3. Bus factor 1 committers behind half the commits
    4. Community-filed 100% of issues opened, last 12 months
    5. Median time to close 212 days first maintainer reply 13 days
    6. Open backlog 42 of 475 issues ever filed
    1. Issues opened / month 1 · 0 communitymaintainers
    2. Open backlog 42
    3. Contributors / month 4
    4. Commits / month 18
    5. Stars 3,300
    Issue themes, last 12 months
    • other 100%

    Counts from the project's public repository and git history; no individuals are identified. Maintainers are the committers covering 80% of the last year's commits. how we measure this

    Libraries its release ships

    What its latest release locks, checked against known advisories.

    No high or critical advisory in the lockfiles we checked.

    We check the lockfiles its release builds images from: 1 Python. Go modules, other lockfiles and vendored code aren't checked.

    Add the badge to your README

    Maintain this project? The badge links readers straight to this page, so they can follow every release here.

    Tracked by Cyber Toolchain Choose a badge style and copy the code →
    browse all tools → score card for your toolchain →