thesnmc/Q-Shift

GitHub: thesnmc/Q-Shift

一个利用 eBPF/XDP 在内核层动态注入后量子密码的透明网络中间件,旨在抵御收获现在、解密将来的攻击。

Stars: 1 | Forks: 0

# Q-Shift:eBPF 驱动的量子密码实时热修补 ![eBPF](https://img.shields.io/badge/Kernel-eBPF%20%2F%20XDP-black?logo=linux) ![C](https://img.shields.io/badge/Language-C-blue) ![PQC](https://img-shields.io/badge/Crypto-NIST%20FIPS%20203%20(ML--KEM)-green) ![Status](https://img.shields.io/badge/Status-Operational-success) Q-Shift 是一个透明的、内核网络中间件,旨在抵御“当下收集、未来解密”(HNDL)攻击。 通过在传输路径(XDP)层利用扩展伯克利数据包过滤器(eBPF),Q-Shift 实时拦截 TLS 1.3 握手并注入 NIST 标准化的后量子密码学(ML-KEM-768)。这能在不修改任何应用代码的情况下,瞬间将无法打补丁的遗留后端服务器升级至量子安全标准。 ## 🌐 核心哲学:主权与无状态 Q-Shift 严格遵循隐私优先设计原则。它完全作为一个无状态中间件运行:不解密有效载荷、不存储流量、敏感数据绝不会触及云提供商。它专为需要保持数据与经济价值本地化且严格受控的主权基础设施环境而设计。 ## 🚨 问题:“当下收集、未来解密” 攻击者与国家级行为体正在积极记录标准的椭圆曲线密码学(ECC)与 RSA 互联网流量,并将其存储于大型数据中心,寄望未来的量子计算机能够轻易破解加密。将企业舰队升级至后量子标准需要大规模的应用层重写、库更新以及显著的停机时间。 ## 🛡️ Q-Shift 架构 Q-Shift 使用容错、零停机架构将密码学推至原始硬件层(Ring-0)。 ### 阶段 1:环 0 拦截与有状态 LRU 映射(eBPF/XDP) 高度优化的内核钩子以数学方式解析原始以太网、IPv4 与 TCP 头部,准确定位 TLS 1.3 ClientHello 消息,且位置就在网络卡的接收(RX)环上,甚至在 Linux 内核分配 `sk_buff` 之前。 * **有状态 TCP 重传跟踪器:** 环 0 过滤器集成一个 eBPF LRU(最近最少使用)哈希映射。若下游丢包导致客户端重传,内核钩子将瞬间识别 TCP 序列号,从内存中拉取之前伪造的量子载荷,并在纳秒级将其重新注入网络,完全绕过用户空间。 ### 阶段 2:内存桥接(AF_XDP) 由于注入体积达 1,184 字节的 ML-KEM-768 密钥会违反标准内核 eBPF 内存扩展限制,Q-Shift 会将数据包重定向至用户空间 RAM 中的 `AF_XDP` 共享内存环进行处理,避免传统套接字开销。 ### 阶段 3:动态 TLS 指针跳跃器(解析器) 在注入前,Q-Shift 必须处理 TLS 1.3 数据包的可变长度结构(例如 SNI 域名长度的变化)。C 守护进程使用严格、边界检查的类型-长度-值(TLV)指针跳跃器,在微秒级动态映射数据包结构、跨过无关扩展,并锁定 `key_share` 扩展的确切字节偏移,保证零有效载荷损坏,无论客户端浏览器如何。 ### 阶段 4:异步熵经纪人与 FIPS 203 量子锻造器(liboqs) 为保证数学完美性,Q-Shift 不依赖本地伪随机性。该引擎直接从 Cisco Outshift QRNG API 获取真实、硬件衍生的量子熵。 * **解耦架构:** 为防止 API 延迟成为网络瓶颈,Cisco API 调用被抽象为一个独立的、异步的后台守护进程(`entropy_broker`)。该代理静默地将大量量子噪声推入 Linux 共享内存管道(`/dev/shm`)。主环 0 护盾以内存速度读取该管道,并将数据输入前沿的 `liboqs` 开放量子安全引擎,实时锻造严格符合 NIST FIPS 203 标准的 ML-KEM-768 密钥对。若外部 API 掉线,系统会优雅降级至本地伪随机数生成器以维持网络可用性。 ### 阶段 5:动态 MTU TCP 分段 引擎动态查询接口的最大传输单元(MTU)。若注入的 1,184 字节密钥导致数据包超出硬件限制(例如标准 1500 字节以太网),Q-Shift 将执行原始 TCP 分段,将载荷切割为标准先锋包与剩余溢出包。 ### 阶段 6:重入(RFC 1071) Q-Shift 为分段数据包重新计算递增的 RFC 1071 IP 与 TCP 校验和,并打上秘密的 `0x7777` IP 标识水印以防止广播风暴,随后直接将其注入传输(TX)环。 ## 🚀 安装与构建指南 Q-Shift 需要从源码直接编译 Open Quantum Safe 库(`liboqs`),以确保 FIPS 203 合规性。 ### 1. 安装核心依赖(Ubuntu/Debian): ``` sudo apt update sudo apt install clang llvm libbpf-dev libelf-dev libcurl4-openssl-dev cmake gcc libssl-dev -y ``` ### 2. 构建并安装量子锻造器(liboqs): ``` cd ~ git clone https://github.com/open-quantum-safe/liboqs.git cd liboqs mkdir build && cd build cmake -DOQS_USE_OPENSSL=1 .. make -j4 sudo make install sudo ldconfig # Refresh the kernel library cache ``` ### 3. 克隆并编译 Q-Shift: ``` cd ~ git clone https://github.com/YOUR_USERNAME/Q-Shift.git cd Q-Shift ``` ### 4. 配置 Cisco QRNG 认证: 在编译前,必须提供 Cisco Outshift API 密钥以启用后台代理的硬件熵。 1. 打开 `entropy_broker.c`。 2. 定位 HTTP 头部块。 3. 将 `YOUR_CISCO_OUTSHIFT_API_KEY_HERE` 替换为实际令牌。 ### 5. 构建护盾: ``` make clean make ``` ## 🧪 本地环回测试 若想实时观察锻造器工作,可使用三个终端窗口在本地模拟客户端-服务器连接。 **终端 1:启动经纪人与护盾** ``` # 在后台启动异步熵代理 ./entropy_broker > /dev/null 2>&1 & # 将 eBPF 钩子附加到回环接口 sudo ./qshift_user -i lo ``` **终端 2:哑服务器** ``` # 打开原始网络套接字以保持端口 443 打开 sudo nc -lnvp 443 ``` **终端 3:客户端握手** ``` # 触发 TLS 1.3 ClientHello 数据包 curl -k -v https://127.0.0.1 ``` 观察终端 1:你会看到 Q-Shift 瞬间拦截数据包,动态解析 TLS 有效载荷,摄取预取的 Cisco 熵,锻造 FIPS 203 密钥,并在 `nc` 感知到之前注入载荷。 ## 🏗️ 生产环境实施策略 Q-Shift 被设计为一个隐形加密网关。在真实企业环境中实施时: * **部署在边缘:** 在边缘路由器、反向代理(如 Nginx/HAProxy 盒)或连接外部互联网与内部网络的物理 Linux 网关上运行 Q-Shift。 * **针对外部接口:** 运行守护进程以指向公网网卡(例如 `sudo ./qshift_user -i eth0`)。 **结果:** 所有进入的外部流量在环 0 处被数学上升级至后量子标准。内部遗留后端服务器(仅理解经典 RSA/ECC)保持完全未改动、无感知且安全。 为主权网络基础设施构建,面向零信任环境设计。 *TheSNMC*
标签:0day挖掘, Docker镜像, Harvest Now Decrypt Later, ML-KEM-768, NIST FIPS 203, Ring-0, SEO: eBPF, SEO: TLS 1.3 升级, SEO: 后量子密码, SEO: 量子安全, TLS 1.3, XDP, 主权基础设施, 内核安全, 内核旁路, 加密升级, 后量子密码, 实时流量拦截, 客户端加密, 抵御未来解密, 无应用改造成本, 状态无关, 网络中间件, 透明代理, 量子安全, 隐私设计, 零停机