010-82825512,010-82825051
技术热线:010-82825062
公司总机:010-62656060
400专线:4007-06-05-04
973273684 / 1037738460 / 943876988 / 947876927
技术支持 (QQ):
3680085785 / 495042390
Shellcode分析非常重要。然而,静态分析效果不佳,并且很容易失败。另外,静态分析工具通常不是免费的。而动态分析需要在适当的环境中,将shellcode加载到另一个进程中,通常是一个虚拟机。

PyAna原理
本文中我们将介绍一款新工具PyAna,该工具旨在使得分析shellcode更容易。PyAna使用Unicorn框架来模拟CPU,并创建一个虚拟的Windows进程,shellcode就是注入到该进程中来分析的。这使得它能够做到自动化分析,并能够提供一个灵活的轻量级环境,而不需要一个虚拟机。
在未来,PyAna将可以应用于其他领域的安全研究,如fuzzing或漏洞利用检测。
使用方法
命令行类型:PyAna.py [shellcode]
例如:PyAna.py Samples/UrlDownloadToFile.sc
显示结果报告:

依赖环境
PyAna依赖于以下环境:
1、Nguyen Anh Quynh开发的Unicorn框架和Capstone
2、Ero Carrera开发的pefile
目前功能
1、使用Unicorn绑定并以Python语言实现
2、模拟一个简单的shellcode:calc、UrlDownloadToFile
3、Windows系统结构模拟器目前还不完整
4、一些Win32 API hook
5、仅仅支持32位
后续工作
1、支持Windows上的PE文件
2、支持拆包
3、应用到fuzzing、漏洞利用检测方面