Maat:让符号执行变得简单
我们发布了Maat——一个跨架构、多用途且用户友好的符号执行框架。它提供动态符号执行(DSE)、污点分析、二进制插桩、环境模拟和约束求解等核心功能。基于Ghidra的中间表示语言p-code,Maat兼具C++高性能API和Python便捷接口,既适合安全专家也方便初学者入门。
用户友好的灵活API
- 提供C++底层API和Python绑定
- 调试器式交互:支持启动/暂停/回滚执行过程
- 支持通过回调函数插桩目标代码(寄存器/内存访问等事件触发)
- 可定制符号数据处理策略(符号指针处理、状态约束保存等)
丰富的架构支持
- 基于Ghidra的sleigh库实现跨架构支持
- 当前已验证X86/X64架构
- 未来计划支持Java/Dalvik/Ethereum等虚拟机字节码
- 无需安装Ghidra即可使用独立版sleigh
性能优化设计
- 纯C++核心实现
- 实测性能:主流笔记本每秒执行10-30万条指令(2.3GHz i7/32GB RAM)
- 未来将添加运行时瓶颈诊断功能