6 个版本
0.1.4 | 2020年5月31日 |
---|---|
0.1.3 | 2020年5月31日 |
0.0.2 | 2020年5月21日 |
#22 in #win32
115KB
890 lines
包含 (DOS 可执行文件, 56KB) samples/pe.exe
BINPER
描述
BINPER 是一个 Rust 的二进制解析库。
🔒 使用 100% 安全的 Rust 实现,并在 Rust 支持的所有平台上运行
安装
cargo install binper
二进制使用
binper [BIN_FILE_PATH]
⚠️ 警告 ⚠️
目前,仅实现了 PE 文件解析
库使用
use std::fs::File;
use std::io::Read;
use binper::pe::pe::PE;
fn main() -> binper::error::Result<()> {
let mut f = File::open("samples/pe.exe")?;
let mut data = Vec::new();
f.read_to_end(&mut data)?;
let pe:PE = PE::new(&data)?;
println!("{}", pe);
Ok(())
}
进度
Windows 二进制 PE
- DOS 头
- PE 头
- 可选头
- 数据目录
- 段
- 导出、导入表
- 资源
Linux 二进制 ELF
- ELF 头
- 程序头表
- 段
贡献
如果您想添加一些功能,修复错误或改进代码(根据 MIT 许可证定义),无需任何额外条款或条件,我将非常乐意接受。
⚠️ 警告 ⚠️
这是一个 alpha 版本。
我不建议您将其用于生产应用程序。
对象的架构可能会更改。
许可证
binper
在 MIT 许可证的条款下分发。
有关详细信息,请参阅 LICENSE。
致谢
本项目受到了 goblin 项目的启发。
依赖项
~5MB
~86K SLoC