在硅片边界执行
主核心:qslcl.asm (v0.0.2)(开发中)
辅助模块:qslcl.bin (v0.7.4)
通用控制器:qslcl.py (v2.2.2)
受法律保护的研究 - 本项目在既定的安全研究、维修权和学术自由法律框架下运作。了解更多
量子硅核心加载器(QSLCL) 是一个后引导加载程序、后厂商、后操作系统的层级,直接运行于硅边界之上。
它超越了传统安全模型执行,能够经受固件转换、协商信任,并在无需 CVE 或补丁的情况下解读设备状态。
QSLCL 运行于:
“不是你运行 QSLCL —— 而是硅在解读它。”
device_info 字段,包含状态、代码和错误详情示例输出:
[*] 注入已确认!正在获取设备信息...
[*] GETINFO 响应:SUCCESS - OK
[已确认的 BUG]
1. memory_corruption (置信度: 80%)
意外的大响应:2048 字节
注入后设备状态:SUCCESS - OK
2. memory_corruption (置信度: 75%)
意外的大响应:4096 字节
注入后设备状态:SUCCESS - OK
QSLCL 二进制布局 (v0.7.4):
┌─────────────────────────────────────────────┐
│ 0x000000 QSLCLBIN (主头部 + 指针) │
│ 0x000200+ QSLCLCMD (28 条命令) │
│ 0x004000+ QSLCLDIS (分发表) │
│ 0x005000+ QSLCLUSB (USB 微引擎) │
│ 0x006000+ QSLCLBLK (64 个端点) │
│ 0x007000+ QSLCLBST (引导引擎) │
│ 0x008000+ QSLCLVM5 (纳米内核) │
│ 0x009000+ QSLCLSPT (USB 设置包) │
│ 0x00A000+ QSLCLRTF (运行时故障表) │
│ 0x00B000+ QSLCLENC (加密层) │
│ 0x00C000+ QSLCLDAT (数据协议) │
│ 0x00D000+ QSLCLSYN (同步块) │
│ 0x00E000+ QSLCLHDR (证书) │
│ 0x00F000+ QSLCLINT (完整性页脚) │
│ 0x010000+ USB4V2MC (USB4 v2.0 80Gbps) │
└─────────────────────────────────────────────┘
总大小:约 72KB(较 128KB 缩减 44%)
命令数:28(新增 TEST、FUZZ)
工作原理(自动):
# 使用量子架构构建(推荐)
python build.py qslcl.bin --arch quantum --encrypt --usb4-v2
# 或通用构建
python build.py qslcl.bin
# 直接正常运行 - 看门狗自动禁用!
python qslcl.py hello --loader=qslcl.bin
# 预期输出:
# [+] 加载器已上传。
# [*] 正在自动禁用看门狗...
# [*] 检测到 SoC 类型:APPLE
# [*] 正在检查 10 个候选偏移量...
# [*] 在 0x20E00000 处检测到看门狗 = 0x00000001
# [+] 看门狗已在偏移量 0x20E00000 处禁用
# [*] 正在 USB 配置中暴露 QSLCL...
核心内存操作:
| 命令 | 描述 |
|---|---|
read | 分区读取 |
write | 分区写入 |
erase | 分区擦除 |
peek | 内存检查,带类型解释和指针分析 |
poke | 精确内存写入,带位操作(AND/OR/XOR) |
patch | 二进制修补,支持备份、验证和预演 |
dump | 批量内存转储,支持压缩、验证和元数据 |
设备交互:
| 命令 | 描述 |
|---|---|
hello | 设备握手和能力检测 |
ping | 往返延迟测试 |
getinfo | 显示设备、DFU 模式、看门狗、加载器功能 |
系统控制:
| 命令 | 描述 |
|---|---|
reset | 系统重置 |
power | 电源管理 |
config | 配置管理 |
电压与硬件:
| 命令 | 描述 |
|---|---|
voltage | 电压读取/设置/监控/缩放,带安全范围 |
rawstate | 底层硬件状态检查和操作 |
安全与分析:
| 命令 | 描述 |
|---|---|
rawmode | 权限提升,带会话审计日志 |
bypass | 安全绕过,带自动检测和执行分析 |
verify | 系统验证 |
footer | 页脚分析,带验证和安全评估 |
诊断与测试:
| 命令 | 描述 |
|---|---|
crash | 受控崩溃注入,带恢复监控 |
glitch | 硬件故障注入,带参数扫描 |
bruteforce | 自动化测试 |
slowm8 | USB 压力测试器,带自动检测和 bug 注入 |
制造与 ODM:
| 命令 | 描述 |
|---|---|
oem | OEM 操作 |
odm | ODM 操作 |
pip install pyserial pyusb
pip install pycryptodome # 可选,用于加密操作
pip install capstone # 可选,用于反汇编
# 使用量子架构构建(推荐)
python build.py qslcl.bin --arch quantum --usb4-v2 --encrypt --debug
# 或标准通用构建
python build.py qslcl.bin
# 获取详细设备信息
python qslcl.py getinfo --loader=qslcl.bin
# 预期输出:
# ==================================================
# QSLCL 设备信息
# ==================================================
# [设备]
# 传输方式:USB
# VID:PID: 05AC:1281
# 产品:iPhone 15 Pro
# USB 类别:0xFE(应用特定)
#
# [DFU 模式]
# 状态:ACTIVE
# 代次:A12 或更新(ARM64e,已启用 PAC)
#
# [看门狗]
# 检测到 SoC:Apple A 系列
# 典型偏移量:0x20E00000
#
# [QSLCL 加载器]
# 架构:quantum
# 二进制大小:73728 字节(72 KB)
# 功能:加密、USB4 v2.0 80Gbps
# ==================================================
# 自动 DFU 引导 + 加载器 + Hello(一体化)
python qslcl.py hello --loader=qslcl.bin --dfu-boot
# 仅引导进入 DFU 模式(类似 palera1n)
python qslcl.py --dfu-boot
# 测试基本功能
python qslcl.py hello --loader=qslcl.bin --usb4
python qslcl.py ping --loader=qslcl.bin
已增强 GETINFO 验证! 确认 bug 后,Slowm8 自动获取设备状态以验证注入成功。
# 带设备验证的基本压力测试
python qslcl.py slowm8 --loader=qslcl.bin
# 带 GETINFO 的预期输出:
# [*] 注入已确认!正在获取设备信息...
# [*] GETINFO 响应:SUCCESS - OK
# [+] Bug 已确认!设备状态:健康
| 功能 | 作用 |
|---|---|
| 设备模式检测 | 自动检测 DFU、EDL、BROM 或标准 USB |
| 时序自动校准 | 测量设备响应时间并调整延迟 |
| A19+ 加密检测 | 检测加密 DFU 并调整时序 |
| Bug 阈值 | 在 N 次异常后注入测试代码(默认:3) |
| 自定义注入载荷 | 针对不同 bug 类型使用不同载荷 |
| JSON 输出 | 保存详细结果以供分析 |
| 选项 | 描述 | 默认值 |
|---|---|---|
--min-delay | 数据包之间的最小延迟(毫秒) | 自动检测 |
--max-delay | 数据包之间的最大延迟(毫秒) | 自动检测 |
--duration | 测试持续时间(秒) | 30 |
--packets | 要发送的数据包数量 | 100 |
--burst-size | 每突发数据包数(0=禁用) | 10 |
--progressive | 逐渐减速 | False |
--no-random | 禁用随机延迟 | False |
--fuzz | 每个数据包的模糊变异次数 | 0 |
--corrupt | 破坏特定字段 | None |
--no-injection | 禁用自动代码注入 | False |
--injection-size | 最大注入载荷大小 | 512 |
--bug-threshold | 注入前的 bug 数 | 3 |
--output | 将结果保存为 JSON | None |
在 USB 上传期间添加随机时序变化:
# 简单随机抖动(5-25 毫秒)
python qslcl.py hello --loader=qslcl.bin --jitter simple
# 渐进式抖动(随上传进度逐渐减速)
python qslcl.py hello --loader=qslcl.bin --jitter progressive
# 突发模式(快速突发带暂停)
python qslcl.py hello --loader=qslcl.bin --jitter burst
# 自定义范围(1 毫秒到 50 毫秒随机)
python qslcl.py hello --loader=qslcl.bin --jitter 0.001-0.05
已增强 GETINFO 验证! 确认 bug 后,Slowm8 自动获取设备状态以验证注入成功。
# 带设备验证的基本压力测试
python qslcl.py slowm8 --loader=qslcl.bin
# 带 GETINFO 的预期输出:
# [*] 注入已确认!正在获取设备信息...
# [*] GETINFO 响应:SUCCESS - OK
# [+] Bug 已确认!设备状态:健康
| 厂商 | 模式 | 检测方法 | USB 暴露 | USB4 v2.0 | 自动 DFU | 看门狗 | 加密 | Slowm8 | 状态 |
|---|---|---|---|---|---|---|---|---|---|
| Qualcomm | EDL | Sahara + Firehose 握手 | ✅ 自动 | ✅ 80Gbps | N/A | ✅ 自动 | 可选 | ✅ | ✅ |
| MediaTek | BROM / Preloader | 0xA0 preloader ping | ✅ 自动 | ✅ 80Gbps | N/A | ✅ 自动 | 可选 | ✅ | ✅ |
| Apple | DFU (A12-A17) | 动态 USB DFU 类别 | ✅ 自动 | ⚠️ 40Gbps | ✅ 自动 | ✅ 自动 | 无 | ✅ | ✅ |
| Apple | DFU (A18+) | 动态 USB DFU 类别 | ✅ 自动 | ✅ 80Gbps | ✅ 自动 | ✅ 自动 | 必需 | ✅ | ✅ |
| Apple | 正常模式 iOS | USB 类别 + 产品字符串 | N/A | N/A | ✅ 自动 | N/A | N/A | N/A | ✅ |
| DFU | 动态 USB DFU 类别 | ✅ 自动 | ✅ 80Gbps | N/A | ✅ 自动 | 可选 | ✅ | ✅ | |
| Samsung | EUB | 动态 USB DFU 类别 | ✅ 自动 | ✅ 80Gbps | N/A | ✅ 自动 | 可选 | ✅ | ✅ |
| Broadcom | BCM 引导 | VID 检测 | ✅ 自动 | ❌ 无 | N/A | ✅ 自动 | 可选 | ✅ | ✅ |
| Rockchip | Mask ROM | VID 检测 | ✅ 自动 | ❌ 无 | N/A | ✅ 自动 | 可选 | ✅ | ✅ |
| Intel | USB4 v2.0 主机 | 原生 USB4 检测 | ✅ 自动 | ✅ 80Gbps | N/A | N/A | 可选 | ✅ | ✅ |
| AMD | USB4 v2.0 主机 | 原生 USB4 检测 | ✅ 自动 | ✅ 80Gbps | N/A | N/A | 可选 | ✅ | ✅ |
| 通用 | USB CDC/Bulk | 端点自动发现 | ⚠️ 有限 | ❌ 无 | N/A | ⚠️ 有限 | 可选 | ✅ | ✅ |
| 任意 | 串口 COM | UART 自动同步 | N/A | N/A | N/A | N/A | 无 | N/A | ✅ |