#byte #data-type #capturing #possibly #malicious #buffer-overflows #intented

sanitation

用于捕获可能恶意字节的 data-type - 主要用于缓解缓冲区溢出

2 个版本

0.0.1 2023年10月27日
0.0.0 2023年10月27日

#3 in #malicious


用于 3 个 crate (2 直接)

GPL-3.0-or-later

11KB
161 行代码(不包括注释)

卫生

用于协议实现等取证分析的数据类型。

基本设计

结构体提供了一个 garbage() 方法,该方法返回潜在的恶意字节,特别适用于检测协议实现中的缓冲区溢出尝试

cargo add sanitation

迷你演示

// Based on https://www.exploit-db.com/exploits/51641
use sanitation::SString;
let general_device_manager = vec![0xeb, 0x06, 0x90, 0x90, 0x14, 0xd9, 0xc6, 0xbb, 0xae, 0xc7, 0xed, 0x8e, 0xd9, 0x74, 0x24, 0xf4];
let gdm = SString::new(&general_device_manager);

assert_eq!(gdm.garbage(), vec![235, 144, 144, 217, 174, 199, 237, 142, 217]);
assert_eq!(&gdm.soft_word(), "\u{6}\u{14}ƻt$");

无运行时依赖