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

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

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

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

工具目录

分类

查看所有分类
Loading categories
Hardware-Vulnerability-with-Proof-of-Concept- — 研究并动手实现Spectre变种2(CVE-2017-5715)的概念验证,这是一种利用CPU推测执行和分支预测的硬件侧信道漏洞。内容包括实验室搭建、漏洞识别、漏洞利用演练、缓存时序分析、演示视频以及缓解策略。 | Kitploit
工具/GitHubGitHub/iamshivambhatt/hardware-vulnerability-with-proof-of-concept-
漏洞分析漏洞利用硬件安全论文与研究学习与教育
GitHubiamshivambhatt/hardware-vulnerability-with-proof-of-concept-

Hardware-Vulnerability-with-Proof-of-Concept-

研究并动手实现Spectre变种2(CVE-2017-5715)的概念验证,这是一种利用CPU推测执行和分支预测的硬件侧信道漏洞。内容包括实验室搭建、漏洞识别、漏洞利用演练、缓存时序分析、演示视频以及缓解策略。

查看仓库

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
22个月前尚未审核
分享

🛡️ Spectre 变种 2(CVE-2017-5715)——硬件漏洞研究

一份深入的研究论文和动手概念验证(PoC),探索现代 CPU 上的推测执行攻击。


📖 概述

本项目是一项基于研究和实验的探索,针对 Spectre 变种 2(CVE-2017-5715),也称为 分支目标注入(Branch Target Injection)——一种影响具备推测执行和分支预测功能的 CPU 的硬件级侧信道漏洞。

本项目的目标是:

  • 理解 Spectre 变种 2 的 微架构根本原因
  • 在隔离的虚拟实验室中复现一个可运行的 概念验证(PoC)
  • 通过 缓存定时侧信道分析 分析和验证泄露的数据
  • 记录真实世界的 缓解策略

⚠️ 免责声明: 本工作严格在受控的隔离虚拟机中进行,仅用于学术和教育目的。它不针对或影响任何生产系统,且未编写专有利用代码——用于演示的是公开可用的 SpectrePoC 仓库。


📑 目录

  • 什么是 Spectre 变种 2?
  • 攻击原理
  • 实验环境
  • 概念验证步骤详解
  • 演示视频
  • 缓解策略
  • 仓库结构
  • 参考资料
  • 作者

🔍 什么是 Spectre 变种 2?

CVE-2017-5715 是一个微处理器漏洞,允许攻击者欺骗 CPU 的分支预测器,使其沿错误(“推测”)路径执行指令。尽管 CPU 正确丢弃了这种错误预测的 结果,但未能完全擦除 副作用——最显著的是 CPU 缓存状态的改变。这些残留的缓存变化可以通过定时分析测量,使攻击者能够推断本应无法访问的秘密数据。

与传统的软件漏洞不同,Spectre 利用了现代 CPU 的 硬件设计,使其极难完全修补,需要结合微码、操作系统和编译器级别的缓解措施。


⚙️ 攻击原理

  1. 误导分支预测器——通过重复执行某个分支的可预测模式,使 CPU 学习并期待该分支。
  2. 触发错误预测——强制 CPU 推测性地执行一个由攻击者选择的另一路径。
  3. 推测性越界读取——CPU 推测性地访问不应访问的内存,在意识到错误之前将秘密数据拉入缓存。
  4. 回滚与残留——CPU 丢弃推测性结果,但在推测过程中触及的缓存行保持“热”状态。
  5. Flush+Reload 定时攻击——攻击者通过跨缓存测量内存访问时间来检测哪个缓存行被缓存,从而逐字节恢复秘密数据。

🖥️ 实验环境


🧪 概念验证步骤详解

1. 环境搭建

root@kitploit:~
sudo apt update
sudo apt install git
git clone https://github.com/crozone/SpectrePoC
cd SpectrePoC
make

2. 检查 CPU 漏洞状态

Linux 通过 sysfs 直接暴露 CPU 漏洞/缓解状态:

root@kitploit:~
grep . /sys/devices/system/cpu/vulnerabilities/*

这确认了测试 CPU 对 spectre_v2 存在漏洞,而其他相关漏洞(Meltdown、L1TF、MDS)要么已被缓解,要么不受影响。

3. 执行 PoC

root@kitploit:~
./spectre.out

该工具重复报告“Success”结果以及一个“置信度”分数,该分数来自缓存定时差异——每次成功读取表示从本不可访问的内存中泄露的一个字节,完全通过推测性侧信道重建。

4. 分析

  • ✅ 成功误导了分支预测器
  • ✅ 推测性执行了未经授权的内存读取
  • ✅ 使用 Flush+Reload 定时分析重建了泄露的字节

🎥 演示视频

本仓库包含一段录制的完整 PoC 演示视频——从环境搭建到成功的数据外泄——用于直观验证攻击。

▶️ 观看 PoC 演示视频

📁 将视频文件添加到您的仓库后(例如放在 demo/ 或 media/ 文件夹中并相应调整链接),请更新上述路径。


🛡️ 缓解策略

  • 更新固件与操作系统——应用最新的微码和内核更新,其中包括 retpoline 和其他推测性屏障缓解措施。
  • 遵循供应商指导——Intel、AMD 和操作系统供应商会按 CPU 代际发布具体的缓解说明。
  • 启用操作系统/浏览器级别的保护——站点隔离、间接分支限制推测(IBRS)等缓解措施可减少跨边界泄露。
  • 保持端点安全最新——虽然不是直接修复,但最新的安全工具能够帮助检测将 Spectre 与其他攻击链结合的利用尝试。

📂 仓库结构

root@kitploit:~
.
├── README.md
├── Research_Paper_-_CVE-2017-5715_Spectre_by_Shivam_Bhatt.pdf
└── demo/
    └── spectre-poc-demo.mp4

📚 参考资料

  • crozone. (2023). SpectrePoC. GitHub. https://github.com/crozone/SpectrePoC
  • Microsoft. (n.d.). Update to enable mitigation against Spectre, Variant 2.
  • Wikipedia. (n.d.). Spectre (security vulnerability). https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)
  • Wikipedia. (n.d.). Side-channel attack. https://en.wikipedia.org/wiki/Side-channel_attack
  • Wikipedia. (n.d.). Row Hammer. https://en.wikipedia.org/wiki/Row_hammer
  • Twingate Team. (2024). What is Row Hammer? How It Works & Examples.

👤 作者

Shivam Bhatt 网络安全研究生文凭(荣誉)—— NAIT 🔗 欢迎通过 LinkedIn 联系我,或就网络安全研究进行合作。

⭐ 如果您觉得本研究有用,请考虑给仓库点星!

下载工具
组件详情
操作系统Ubuntu 14.04 LTS
内核版本4.4.0-148-generic
CPU12th Gen Intel® Core™ i5-12450H
虚拟化平台VMware Workstation
PoC 仓库crozone/SpectrePoC