Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Intel-Linux-Processor-Microcode-Data-Files — 官方 Intel 微码数据文件,用于更新处理器固件以缓解安全漏洞并解决 Linux 系统上的功能问题。 | Kitploit
工具/GitHubGitHub/intel/intel-linux-processor-microcode-data-files
防御工具嵌入式系统安全漏洞分析硬件安全固件分析
GitHubintel/intel-linux-processor-microcode-data-files

Intel-Linux-Processor-Microcode-Data-Files

官方 Intel 微码数据文件,用于更新处理器固件以缓解安全漏洞并解决 Linux 系统上的功能问题。

查看仓库

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
807859天前Kitploit 审核通过

适用于 Linux 的英特尔处理器微码软件包

关于

英特尔处理器微码更新(MCU)软件包提供了一种针对安全公告和功能问题(包括勘误)发布更新的机制。此外,MCU 还负责启动 SGX 飞地(在支持 SGX 功能的处理器上)、实现复杂行为(例如 assists)等。应用 MCU 的首选方法是使用系统 BIOS。对于英特尔的某些处理器,还可以使用操作系统在运行时更新 MCU。此处共享的英特尔微码软件包包含针对那些支持操作系统加载 MCU 的处理器的更新。

为什么要更新微码?

更新微码有助于缓解 CPU 中的某些潜在安全漏洞,并解决某些可能导致不可预测系统行为(如挂起、崩溃、意外重启、数据错误等)的功能问题。要了解有关向英特尔处理器应用 MCU 的更多信息,请参阅微码更新指南。

加载微码更新

此软件包提供给 Linux 发行商,以便纳入其操作系统版本中。英特尔建议通过操作系统供应商更新机制获取最新的 MCU。一个很好的出发点是操作系统和软件供应商。专家用户可以在操作系统供应商机制之外直接更新微码。但是,此方法较为复杂,如果操作不当可能会导致错误。此类错误可能包括但不限于系统冻结、无法启动、性能影响、逻辑处理器加载不同的更新以及某些更新不生效。因此,此方法应仅由专家用户尝试。

MCU 最好从 BIOS 加载。某些 MCU 只能从 BIOS 应用。此类 MCU 绝不会打包在此软件包中,因为它们不适合通过操作系统分发。OEM 可能会收到微码更新软件包,这些软件包是此软件包内容的超集,用于纳入 BIOS。

操作系统供应商可以选择提供内核可用于早期加载的 MCU。例如,Linux 可以在内核启动序列的早期应用 MCU。在没有可用 BIOS 更新的情况下,早期加载是更新处理器微码的次优选择。微码状态在电源重置时会被重置,因此需要在每次启动过程中加载 MCU。

建议

建议使用 initrd 方法加载 MCU,因为此方法会在最早的时间加载 MCU,以获得最大的覆盖范围。无法容忍停机的系统可以使用后期加载方法在无需重启的情况下更新运行中的系统。

关于处理器签名、系列、型号、步进和平台 ID

处理器签名是一个用于标识英特尔处理器型号和版本的编号。可以通过 CPUID 指令、lscpu 命令或 /proc/cpuinfo 的内容获取。它通常以 3 个字段表示:系列(Family)、型号(Model)和步进(Stepping)。

例如,如果处理器通过 CPUID 指令 返回值“0x000906eb”:

对应的 Linux 格式化文件名将是“06-9e-0b”,其中:

  • 扩展系列 + 系列 = 0x06
  • 扩展型号 + 型号编号 = 0x9e
  • 步进 ID = 0xb

处理器可能针对多种平台类型实现。英特尔处理器在 MSR(17H) 中有一个 3 位平台 ID 字段,用于指定最多 8 种平台类型。针对特定处理器型号的 MCU 文件可能支持多个平台。MCU 支持的平台 ID 是一个 8 位掩码,其中每个置位位表示该 MCU 支持的一种平台类型。在 Linux 中,可以使用 msr-tools 中的 rdmsr 读取处理器的平台 ID。

微码更新说明

intel-ucode 目录包含以 family-model-stepping 格式命名的二进制 MCU 文件。大多数现代 Linux 发行版都支持此文件格式。它通常位于 /lib/firmware 目录中,可以按照下面的后期加载更新说明通过微码重新加载接口进行更新。

早期加载更新

要更新早期加载的 initrd,请咨询您的 Linux 发行版如何打包用于早期加载的 MCU 文件。某些发行版使用 update-initramfs 或 dracut。在尝试下面的后期加载流程之前,请使用操作系统供应商推荐的方法,以确保 MCU 文件已更新以用于早期加载。

后期加载更新

要将 intel-ucode 软件包更新到系统:

  1. 确保 /sys/devices/system/cpu/microcode/reload 存在
  2. 下载最新的微码固件
    $ git clone https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files.git 或
    $ wget https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/archive/main.zip
  3. 将 intel-ucode 目录复制到 /lib/firmware,覆盖 /lib/firmware/intel-ucode/ 中的文件
  4. 将重新加载接口写入 1 以重新加载微码文件,例如
    $ echo 1 > /sys/devices/system/cpu/microcode/reload
    微码更新将自动应用,无需重新启动系统。
  5. 更新现有的 initramfs,以便下次通过内核加载:
    $ sudo update-initramfs -u
    $ sudo reboot
  6. 验证微码在启动时是否已更新或已通过 echo 命令重新加载:
    $ dmesg | grep microcode 或
    $ cat /proc/cpuinfo | grep microcode | sort | uniq

如果您使用操作系统供应商方法应用 MCU,则上述步骤可能已在更新过程中自动完成。

intel-ucode-with-caveats 目录包含需要特殊处理的 MCU。BDX-ML MCU 在此目录中提供,因为它需要 Linux 内核中的特殊提交,否则更新它可能会导致意外的系统行为。操作系统供应商在打包 BDX-ML MCU 用于后期加载之前,必须确保发行版中包含后期加载程序补丁(在 linux-kernel-patches 中提供)。

linux-kernel-patches 目录包含解决与应用 MCU 相关的各种问题的内核补丁。

备注

  • 您只能更新到更高的 MCU 版本(使用提供的说明无法降级)
  • 要计算 Family-Model-Stepping,请使用 Linux 命令:
    $ printf "%x\n" <number_to_convert_to_hex>
  • 有多种方法可以在更新前检查 MCU 版本号。克隆此英特尔微码更新仓库后,运行以下命令:
    • $ iucode_tool -l intel-ucode | grep -wF sig(需要 iucode_tool 软件包)
    • $ od -t x4 <Family-Model-Stepping> 将读取 <Family-Model-Stepping> 中指定的微码二进制头的前 16 个字节。第三个块是微码版本。例如: $ od -t x4 06-55-04
      0000000 00000001 *02000065* 09052019 00050654

许可证

有关详细信息,请参阅 license 文件。

安全策略

有关详细信息,请参阅 security.md 文件。

发行说明

有关详细信息,请参阅 releasenote.md 文件。

免责声明

英特尔技术的特性和优势取决于系统配置,并且可能需要启用硬件、软件或服务激活。性能因系统配置而异。请咨询您的系统制造商或零售商,或在 www.intel.com 了解更多信息。

没有任何产品或组件是绝对安全的。

此处提供的所有信息如有变更,恕不另行通知。请联系您的英特尔代表以获取最新的英特尔产品规格和路线图。

所描述的产品和服务可能包含称为勘误的缺陷或错误,这些缺陷或错误可能导致与已发布规格的偏差。当前已表征的勘误可应要求提供。

英特尔按“原样”提供这些材料,不提供任何明示或暗示的保证。

© Intel Corporation。英特尔、英特尔徽标和其他英特尔标志是英特尔公司或其子公司的商标。

*其他名称和品牌可能是其各自所有者的财产。

下载工具
保留扩展系列扩展型号保留处理器类型系列代码型号编号步进 ID
31:2827:2019:1615:1413:1211:87:43:0
xxxx00000000b1001bxx00b0110b1110b1011b