lib-unknown
专为极简环境与安全研究设计的高隐蔽性底层 Rust 原语库
lib-unknown 是一个纯 Rust 实现的 no_std 无依赖底层工具库。它脱离了对标准库及 libc 的依赖,旨在为对抗性安全评估框架、控制客户端及高隐秘性代码执行环境提供无符号特征、抗分析、轻量化的核心底层支撑。
目录
核心能力
| 模块 | 表面功能 |
|---|---|
sys |
裸 Syscall & 动态 API 解析 |
rand |
硬件时间戳熵源 |
crypto |
实验性流密码与数据搅拌 |
types |
自清零定容 Stack/Heap 容器 |
dyntest |
动态编译与内存运行 Harness |
快速开始
在 Cargo.toml 中引入:
[]
= { = "0.1.2", = false, = ["sys", "rand", "rand-expand", "types"] }
示例
use ;
use StackBytes;
API 预览与模块设计
lib_unknown
├── sys — 裸 syscall0~6,PEB/EAT 动态导出表解析,绕过 Hook 的底层调用
├── rand — 硬件微架构 (RDTSC) 探针,无 OS API 依赖的熵源生成与环境感知
├── crypto — 非标准混淆与实验性雪崩搅拌,用于消除数据静态特征
├── types — 栈/堆上防转储容器 (StackBytes/StackStr), Drop 时强行覆写擦除
└── dyntest — (std-only) 动态代码块编译与内存执行 Harness,用于验证内存加载器
典型应用场景
适用场景
- 红队工具开发:需要体积极小、无第三方库依赖、静态特征极低的轻量级载荷。
- 反逆向与高强度保护:在不使用重量级 VM 加壳的前提下,提供隐秘的 API 解析、对抗性时序校验和内存清理。
- 裸机 / 无 OS 评估环境:无法依赖 libc 或标准操作系统服务的嵌入式/安全测试场景。
特性标志
本库采用高度模块化的 Feature 切分,允许按需引入以实现最小化二进制体积(Bloat-free):
| Feature | 说明 |
|---|---|
sys |
启用直接系统调用与动态符号解析 |
rand |
启用硬件级微架构熵源生成器 |
types |
启用用后即焚的内存安全容器(StackBytes / StackStr) |
crypto |
启用用于特征消除的混淆与流密码原语 |
std / alloc |
显式开启堆支持 |
平台与环境支持
- 架构/系统:x86_64 / AArch64 (Linux, Windows, macOS, Android)
- 运行环境:完全支持
no_std,可直接作为独立 Payload 或 Reflective DLL 的核心依赖。 - 编译时安全性:所有底层裸指针及内联汇编均封装在显式的
unsafe隔离层中,确保上层调用的内存安全。
开源协议
本项目基于 MIT License 协议开源。