当前位置: 首页 > news >正文

Volatility:分析MS10-061攻击

1、概述
# 1)什么是 Volatility

Volatility是开源的Windows,Linux,MaC,Android的内存取证分析工具。基于Python开发而成,可以分析内存中的各种数据。Volatility支持对32位或64位Wnidows、Linux、Mac、Android操作系统的RAM数据进行提取与分析。

volatility 使用:

volatility -f <文件名> --profile=<配置文件> <插件> [插件参数]

# 2)什么是objdump

objdump命令是Linux下的反汇编目标文件或者可执行文件的命令。objdump工具可以用来显示二进制文件的信息,就是以一种可阅读的格式让你更多地了解二进制文件可能带有的附加信息。

# 3)什么是BitDefender(bdscan)

Bitdefender(bdscan)是一款适用于Unix和Linux环境的防病毒扫描程序,具有检测和删除特洛伊木马,rootkit,流氓软件,广告软件,垃圾邮件等功能。

# 4)前提条件:

已经通过KaliMS10-061漏洞进行攻击,取证收集

# 2、实验步骤

1)确定Volatility的配置文件

2)提取网络连接信息

3)关联可疑网络连接与进程ID

4)关联文件与进程ID

5)关联DLL与后门程序

6)扫描后门程序

# 3、配置分析环境

1)登录到Kali

image.png

2)设置 Volatility执行程序权限

image.png

3)将Volatility路径添加到环境变量中

image.png

# 4 、确定要使用的Volatility 的配置文件

1)查看取证文件

image.png

2)查看镜像信息

vol.py imageinfo -f ms10_061.dd

Volatility将检测镜像的操作系统版本信息,需要一点时间,耐心等待

image.png

检测结果提示建议的配置文件是:WinXPSP2x86,WinXPSP3x86,在这儿我们用WinXPSP2x86好了

# 5、关联网络连接与进程ID
# 1)检测网络连接
vol.py --profile=WinXPSP2x86 -f ms10_061.dd connections

image.png

vol.py --profile=WinXPSP2x86 -f ms10_061.dd connscan //查看网络连接状态

image.png

其中139NetBIOS端口,445SMB端口,9999是 Meterpreter会话 回连端口,7777Helix内存取证收集端口

其中 PID 392 就是Meterpreter会话回连进程的ID

# 2)查看进程信息
vol.py --profile=WinXPSP2x86 -f ms10_061.dd pslist | egrep '(Offset|----------|392)'

image.png

其中,PID:进程号,PPID是进程的父进程号

还可以用 pstree 以树形结构查看进程表

image.png

从进程中我们看到一个很可疑的进程名:g9bMJIYNoBtyOS,而且它还包括cmd的子进程

# 3)使用(dlllist)显示进程加载的DLL
vol.py --profile=WinXPSP2x86 -f ms10_061.dd dlllist | grep "g9bMJIYNoBtyOS"

image.png

通过这一步分析,我们可以得出以下结果:

g9bMJIYNoBtyOS这个可疑的进程(PID:392)连接到了远程主机192.168.1.349999端口,而且目录是 C:\WINDOWS\system32

通常来说此目录(C:\ WINDOWS \ system32)应仅包含系统特定的程序(可执行文件)和库(DLL

# 6、关联文件与DLL
objdump g9bMJIYNoBtyOS.exe -x -D | grep "DLL Name"

image.png

WSOCK32.dll 是一个用于网络连接(TCP/IP连接)的Windows库文件

# 7、从内存中查找隐藏的恶意程序

使用 malfind 参数分析进程ID

1)首先在进程中搜索 svchost进程

svchost.exe 是承载多个Windows服务的系统进程

vol.py --profile=WinXPSP2x86 -f ms10_061.dd pslist | grep svchost

image.png

然后我们用 malfind 参数搜索进程中隐藏或注入的DLL/代码

vol.py --profile=WinXPSP2x86 -f ms10_061.dd malfind -p 864,944

image.png

svchost的进程ID进行查找,没有发现

再拿可疑进程ID试试

image.png

这次显示了很多信息

# 8、使用BitDefender扫描可执行文件
bdscan --no-archive --action=ignore g9bMJIYNoBtyOS.exe | tee ms10_061_bdscan.txt

image.png

# 9、从注册表提取用户信息

使用 hivelist 参数在内存中找到注册表配置单元的虚拟地址,以及在磁盘上的完整路径

1)查找 system 和SAM两个注册表键值的虚拟地址

vol.py --profile=WinXPSP2x86 -f ms10_061.dd hivelist | egrep '(system$|SAM$)'

image.png

2)然后通过 hashdump将文件保存出来

image.png

3)提取管理员SAM文件

image.png

4)使用John破解管理员密码

cat /dev/null > /root/.john/john.pot //清除pot文件,里面包含以前破解的密码
john --format=nt admin_sam.txt | tee admin_passwd.txt //--format=nt表示为WindowsNT密码

image.png

#
http://www.lryc.cn/news/404008.html

相关文章:

  • 水表数字识别3:Pytorch CRNN实现水表数字识别(含训练代码和数据集)
  • oracle数据文件损坏和误删dbf文件处理方法
  • postMessageXss续2
  • 【深度学习】sdxl的Lora训练技巧
  • 推荐一款 Android 手机端的 SSH 远程连接工具
  • 3.1、matlab双目相机标定实验
  • IntelliJ IDEA 直接在软件中更新为最新版
  • 库卡机器人示教器 KPC2 00107-264 KPC200.107-264
  • 数据传输安全--VPN
  • 【人工智能】人工智能可解释性和透明度的详细探讨
  • vscode+wsl2+anaconda环境的配置与使用
  • 【Linux网络】套接字编程
  • 在线 PDF 制作者泄露用户上传的文档
  • SQL概述及其规则与规范
  • 开源模型应用落地-FastAPI-助力模型交互-进阶篇-RequestDataclasses(三)
  • 2024.7.20 暑期训练记录(6)
  • firefly rk3288 ubuntu23.10 网卡名为end0 改为eth0
  • git使用总结
  • 使用多进程和多线程实现服务器并发【C语言实现】
  • 深入理解Linux网络(三):TCP对象创建
  • windows server——4.安装DNS管理器
  • 速盾:金融行业服务器如何避免DDoS攻击?
  • 谷粒商城实战笔记-38-前端基础-Vue-指令-单向绑定双向绑定
  • MyPostMan 迭代文档管理、自动化接口闭环测试工具(自动化测试篇)
  • https和http有哪些区别?
  • Bubbliiiing 的 Retinaface rknn python推理分析
  • Web前端-Web开发HTML基础8-nav
  • 如何建设和维护数据仓库:深入指南
  • 海思arm-hisiv400-linux-gcc 交叉编译rsyslog 记录心得
  • IDEA工具中Java语言写小工具遇到的问题