问题描述
我有很多PE二进制文件要分析,有些是恶意的,有些不是,但我们可以知道编译后的AutoIt脚本和其他资源(如.exe/.jpg/.dll)二进制文件,我正在尝试从这些二进制文件中提取此资源。
目前我正在使用名为:AutoIt-Ripper 的工具,好吧,它可以完成工作,但性能很慢,有些二进制文件可以在几秒钟内提取出来,有些二进制文件甚至需要 20 分钟。
以下是一些示例:
部分代码块:
from autoit_ripper import extract,AutoItVersion
def extract_autoit(path_name):
with open(path_name,'rb') as f:
file_data = f.read()
data = extract(data=file_data,version=AutoItVersion.EA06)
output_path = f"output/{path_name.split('/')[-1]}"
if data:
output = Path(output_path)
if not output.is_dir():
log.info("The output directory doesn't exist,creating it")
output.mkdir()
for filename,content in data:
filename = basename(filename)
log.info(f"Storing result in {(output / filename).as_posix()}")
(output / filename).write_bytes(content)
如果二进制文件只包含 AutoIt 脚本,AutoIt-Ripper 可以在几秒钟内提取 AutoIt 脚本,但如果二进制文件包含更多,则可能需要很长时间
我正在寻找一些帮助,以减少反编译时间,寻找可能以秒为单位的平均反编译。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)