记一次互联网捕获恶意样本分析

admin 2024年8月21日16:14:22评论27 views字数 954阅读3分10秒阅读模式

从互联网捕获到一个恶意样本(ttt.exe),因为网上有人在讨论,颇感兴趣,遂对其进行分析,将学习分析的过程记录一下。

记一次互联网捕获恶意样本分析

查询威胁情报为可疑文件,包含部分可疑行为,并没有完全判断为恶意文件。
记一次互联网捕获恶意样本分析
1、下载样本,初步判断为PyInstaller打包的python程序。
记一次互联网捕获恶意样本分析
2、对编译打包后的python程序,反编译有两步:
1)将.exe反编译为.pyc
工具下载:https://github.com/extremecoders-re/pyinstxtractor/
使用pyinstxtractor进行反编译
python pyinstxtractor.py ttt.exe

记一次互联网捕获恶意样本分析

通过输出结果判断,ttt.pyc为正确的程序入口点。
2)将.pyc还原为原始的py代码(pycdc.exe
工具下载:https://github.com/zrax/pycdc
使用pycdc还原成py文件

记一次互联网捕获恶意样本分析

成功还原出原始的python文件。

记一次互联网捕获恶意样本分析

 

3、分析源代码,判断样本的功能如下。

记一次互联网捕获恶意样本分析

将加密字符串解码后判断为shellcode加载器,可以分析出其核心功能是加载buf变量的内容。

ctypes.windll.kernel32.VirtualAlloc.restype=ctypes.c_uint64rwxpage = ctypes.windll.kernel32.VirtualAlloc(0, len(buf), 0x30000x40)ctypes.windll.kernel32.RtlMoveMemory(ctypes.c_uint64(rwxpage), ctypes.create_string_buffer(buf), len(buf))handle = ctypes.windll.kernel32.CreateThread(00, ctypes.c_uint64(rwxpage), 000)ctypes.windll.kernel32.WaitForSingleObject(handle, -1)

4、生成shellcode加载,为了方便测试把判断和编码部分注释掉,可上线成功。
这里需要注意执行生成的Raw文件,无法直接加载,需要进行起码一层的编码和解码才可以。

记一次互联网捕获恶意样本分析

记一次互联网捕获恶意样本分析

原文始发于微信公众号(篝火信安):安全运营 | 记一次互联网捕获恶意样本分析

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年8月21日16:14:22
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次互联网捕获恶意样本分析https://cn-sec.com/archives/3083697.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息