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

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

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

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

工具目录

分类

查看所有分类
Loading categories
trevex — 瞬态执行漏洞的自动化漏洞检测框架(IEEE S&P '26) | Kitploit
工具/GitHubGitHub/cispa/trevex
漏洞分析漏洞利用模糊测试渗透测试硬件安全二进制分析学习与教育
GitHubcispa/trevex

trevex

瞬态执行漏洞的自动化漏洞检测框架(IEEE S&P '26)

查看仓库
3534个月前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Trevex - 瞬态执行漏洞探索器

支持的平台

我们支持以下环境:

操作系统/发行版

Trevex 在 Ubuntu 22.04 LTS 和 24.04 LTS 上开发和测试。 其他发行版可能也能使用,但框架的某些部分(例如依赖检查与安装)假设使用 apt 作为包管理器。

架构

Trevex 目前仅支持 x86。 未来将增加对更多架构的支持。

安装

建议在你的点文件中添加以下 shell 别名:

root@kitploit:~
function tvx() {<repo-root>/tvx.py $@}

然后,安装框架的依赖:

root@kitploit:~
pip install -r ./requirements.txt
sudo apt-get update
sudo apt-get install build-essential cmake tmux cpuid linux-tools-common

使用

Trevex 通过 tvx 命令行工具控制。 tvx 遵循以下语法:

root@kitploit:~
tvx <command> <subcommand>

并支持以下命令:

run 命令

run 用于控制本地模糊测试运行:

root@kitploit:~
# 启动模糊测试器
tvx run start

# 清除已有进度及所有结果
tvx run cleanup

result 命令

result 命令用于检查和处理模糊测试结果:

root@kitploit:~
# 对结果进行分类
# (通常是模糊测试后要做的第一件事)
tvx result classify

# 查看测试文件的内容
tvx result view <result-file.json>

# 将给定的测试文件导出为独立的“重现器”
# 允许你进一步检查结果
tvx result export <result-file.json>

# 在模糊测试器内重新运行测试用例
tvx result rerun

setup 命令(将在近期发布)

setup 命令用于安装和加载依赖。

root@kitploit:~
# 安装/检查 Trevex 系统依赖(apt 和 Python 包)
tvx setup install

# 加载 tvx Python 环境
tvx setup load

ctrl 命令(将在近期发布)

ctrl 命令用于协调由多台机器组成的 Trevex 模糊测试活动。 它允许你在多台机器上启动 Trevex,并将结果拉取到本地机器。 机器集通过机器配置文件定义。

机器文件

机器文件每行包含一个 SSH 配置名称。 此外,该格式支持以 # 开头的注释。 Trevex 假设你对这些机器拥有无密码 SSH 访问权限。 通常,通过使用基于密钥的身份验证并将密钥存储在本地的 SSH agent 中(例如使用 ssh-add)来实现。

一个有效的配置示例如下:

root@kitploit:~
uarch-lab01  # 我的服务器
uarch-lab03  # 我的开发机
uarch-lab07  # 我的另一台开发机

使用

ctrl 命令要求你在子命令 之前 指定机器文件:

root@kitploit:~
tvx ctrl -m <machine_file.cfg> <subcommand>

一个典型的模糊测试活动如下所示:

root@kitploit:~

# 为模糊测试活动准备机器
# 注意:这可能会更改运行中的内核并重启机器
#   并非总是需要,你可以直接跳过此步骤。
tvx ctrl -m ./my-servers.cfg setup

# 在远程机器上启动 Trevex 并接入它们的 tmux 会话
# 注意:如果 Trevex 启动失败,跳过的设置步骤可能是原因。
tvx ctrl -m ./my-servers.cfg spawn

# 从所有 tmux 会话中分离,让其运行一段时间
tvx ctrl -m ./my-servers.cfg detach

# 再次接入 tmux 会话
tvx ctrl -m ./my-servers.cfg attach

# 完成后停止所有 Trevex 实例
tvx ctrl -m ./my-servers.cfg stop

# 检索结果并将其存储到本地机器上
# 注意:虽然这对整理经常很有用,但实际的
#   复现步骤应在*完全相同的* CPU 上执行。
tvx ctrl -m ./my-servers.cfg pull-results

# 重置所有机器上的状态。这会清除所有进度
# 并删除所有结果。
tvx ctrl -m ./my-servers.cfg cleanup

dev 命令

此命令仅用于开发目的。 因此,目前暂不提供文档。

发现/复现的漏洞

“Novel” 指全新的发现,或 TREVEX 发现了额外方面,例如在之前未知受影响的微架构上发现新变体或实例。

概念验证(PoCs)

进入目录 ./pocs。

FP-DSS

文件夹 ./pocs/amd-fpdss 包含我们针对浮点除法器状态采样(FP-DSS)的概念验证。 FP-DSS 是一种瞬态执行攻击,会泄露 SSE 和 AVX 浮点除法单元的状态。 它被追踪为 CVE-2025-54505,AMD 在 安全公告 中进行了讨论。 它影响 AMD Zen 1 和 Zen+ CPU。

FPVI 变体

文件夹 ./pocs/amd-fpvi-variant 包含我们针对 FPVI 的一个变体的概念验证,该变体不需要非规格化输入值。 AMD 在 安全公告 中讨论了该发现。 它影响 AMD CPU。

Zero-At-Ret

文件夹 ./pocs/intel-zero-at-ret 包含我们针对 LVI NULL 的 Zero-at-Ret 变体的概念验证。

兆芯 FPVI

文件夹 ./pocs/zhaoxin-fpvi 包含我们在兆芯 LuJiaZui 微架构上触发 FPVI 行为的概念验证。

研究论文

论文可在 此处 获取。 你可以使用以下 BibTeX 条目引用我们的工作:

root@kitploit:~
@inproceedings{Weber2026Trevex,
 author = {Weber, Daniel and Thomas, Fabian and Trampert, Leon and Zhang, Ruiyi and Schwarz, Michael},
 booktitle = {{IEEE S\&P}},
 title = {{Trevex: A Black-Box Detection Framework For Data-Flow Transient Execution Vulnerabilities}},
 year = {2026}
}

免责声明

我们按原样提供此代码。 你有责任保护自己、你的财产和数据以及他人免受此代码可能带来的任何风险。 此代码可能导致你的机器上出现意外和不良行为。

下载工具
VulnerabilityStatusNotes
FP-DSSNovel泄露浮点执行单元中的陈旧数据
LVI-NULLNovel在之前未知易受攻击的微架构上发现
FPVINovel发现新变体及兆芯上的 FPVI
GDS (Downfall)Reproduced首个检测到它的模糊测试器
MDS (ZombieLoad, RIDL, VRS, ...)Reproduced-
Meltdown-USReproduced“原始” Meltdown 漏洞
Meltdown-CPL-REGReproduced需要系统具有 nofsgsbase