niclashedam/lupin

GitHub: niclashedam/lupin

Lupin 是一款基于 Rust 的轻量级隐写术工具,支持将数据隐藏在 PDF、PNG、JPEG 文件中并可逆向提取。

Stars: 2 | Forks: 0

# 🕵️ Lupin ![CI](https://static.pigsec.cn/wp-content/uploads/repos/cas/ad/ad5834178f7599af9fdda11629d49cae07f2997beec49821b2920eff5bfd50e7.svg) ![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg) ![Rust](https://img.shields.io/badge/rust-1.70%2B-red.svg) ![Crates.io](https://img.shields.io/crates/v/lupin.svg) 一款极速、轻量级的隐写术工具,用于将数据隐藏在看似正常的文件中。Lupin 可以作为 CLI 工具用于快速操作,或作为 Rust 库集成到您的应用程序中。 隐写术隐藏的是数据的存在本身,而不仅仅是其内容。加密会使消息变得不可读,而隐写术则使其变得不可见:该文件看起来和表现得更像一个普通的 PDF、PNG 或 JPEG 文件。 Lupin 以[亚森·罗宾](https://en.wikipedia.org/wiki/Ars%C3%A8ne_Lupin)(Arsène Lupin,虚构的绅士怪盗)命名,其原因不言而喻:将事物隐藏在显眼之处。 ## 支持的格式 - **PDF**:在 `%%EOF` 标记后追加数据(容量不限,易于检测) - **PNG**:自定义辅助块(容量不限,零视觉伪影,较易检测) - **JPEG**:签名的 APP13 应用标记,根据需要跨段拆分(容量不限,零视觉伪影,较易检测) 目前,这三款引擎均针对**容量**进行了优化:大小不限,但使用 `strings` 很容易发现。CLI 和 API 带有 `--capacity` / `--stealth` 选择器,用于未来的低可检测性策略;目前还没有引擎实现 `--stealth`,因此请求该功能会返回明确的错误。请参阅 [CLI](docs/cli.md) 和[库](docs/library.md)指南。 ## 快速开始 ### CLI 工具 ``` # 安装 cargo install lupin # 或从源码构建:git clone && cargo build --release # 在 PDF 中隐藏数据 lupin embed document.pdf secret.txt output.pdf # 提取数据 lupin extract output.pdf recovered.txt # 更多选项 lupin --help ``` 更多信息请参阅 [CLI 指南](docs/cli.md)。 ### Rust 库 ``` # Cargo.toml [dependencies] lupin = "1.0" ``` ``` use lupin::operations::{embed, extract}; use lupin::EmbedMode; // Read files let source = std::fs::read("document.pdf")?; let payload = std::fs::read("secret.txt")?; // Embed with metadata let (embedded_data, metadata) = embed(&source, &payload, EmbedMode::Capacity)?; println!("Used {} engine", metadata.engine); // Extract (mode is autodetected) let (extracted, info) = extract(&embedded_data)?; ``` 更多信息请参阅[库指南](docs/library.md)。 ## 文档 - **[CLI 指南](docs/cli.md)** - 命令行用法、日志记录、示例 - **[库指南](docs/library.md)** - Rust API、集成示例 - **[架构](docs/architecture.md)** - 工作原理、添加新格式 ## 许可证 Apache License 2.0。详情请参阅 [LICENSE](LICENSE)。 **免责声明**:仅供教育和合法用途。用户需自行负责遵守适用的法律。
标签:DNS 反向解析, Rust, 信息隐藏, 可视化界面, 文档结构分析, 演示模式, 网络流量审计, 通知系统, 隐写术