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)前提条件:
已经通过Kali对MS10-061漏洞进行攻击,取证收集
# 2、实验步骤
1)确定Volatility的配置文件
2)提取网络连接信息
3)关联可疑网络连接与进程ID
4)关联文件与进程ID
5)关联DLL与后门程序
6)扫描后门程序
# 3、配置分析环境
1)登录到Kali

2)设置 Volatility执行程序权限

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

# 4 、确定要使用的Volatility 的配置文件
1)查看取证文件

2)查看镜像信息
vol.py imageinfo -f ms10_061.dd
Volatility将检测镜像的操作系统版本信息,需要一点时间,耐心等待

检测结果提示建议的配置文件是:WinXPSP2x86,WinXPSP3x86,在这儿我们用WinXPSP2x86好了
# 5、关联网络连接与进程ID
# 1)检测网络连接
vol.py --profile=WinXPSP2x86 -f ms10_061.dd connections

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

其中139是NetBIOS端口,445是SMB端口,9999是 Meterpreter会话 回连端口,7777是Helix内存取证收集端口
其中 PID 392 就是Meterpreter会话回连进程的ID
# 2)查看进程信息
vol.py --profile=WinXPSP2x86 -f ms10_061.dd pslist | egrep '(Offset|----------|392)'

其中,PID:进程号,PPID是进程的父进程号
还可以用 pstree 以树形结构查看进程表

从进程中我们看到一个很可疑的进程名:g9bMJIYNoBtyOS,而且它还包括cmd的子进程
# 3)使用(dlllist)显示进程加载的DLL
vol.py --profile=WinXPSP2x86 -f ms10_061.dd dlllist | grep "g9bMJIYNoBtyOS"

通过这一步分析,我们可以得出以下结果:
g9bMJIYNoBtyOS这个可疑的进程(PID:392)连接到了远程主机192.168.1.34的9999端口,而且目录是 C:\WINDOWS\system32
通常来说此目录(C:\ WINDOWS \ system32)应仅包含系统特定的程序(可执行文件)和库(DLL)
# 6、关联文件与DLL
objdump g9bMJIYNoBtyOS.exe -x -D | grep "DLL Name"

WSOCK32.dll 是一个用于网络连接(TCP/IP连接)的Windows库文件
# 7、从内存中查找隐藏的恶意程序
使用 malfind 参数分析进程ID
1)首先在进程中搜索 svchost进程
svchost.exe 是承载多个Windows服务的系统进程
vol.py --profile=WinXPSP2x86 -f ms10_061.dd pslist | grep svchost

然后我们用 malfind 参数搜索进程中隐藏或注入的DLL/代码
vol.py --profile=WinXPSP2x86 -f ms10_061.dd malfind -p 864,944

拿svchost的进程ID进行查找,没有发现
再拿可疑进程ID试试

这次显示了很多信息
# 8、使用BitDefender扫描可执行文件
bdscan --no-archive --action=ignore g9bMJIYNoBtyOS.exe | tee ms10_061_bdscan.txt

# 9、从注册表提取用户信息
使用 hivelist 参数在内存中找到注册表配置单元的虚拟地址,以及在磁盘上的完整路径
1)查找 system 和SAM两个注册表键值的虚拟地址
vol.py --profile=WinXPSP2x86 -f ms10_061.dd hivelist | egrep '(system$|SAM$)'

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

3)提取管理员SAM文件

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

#
相关文章:
Volatility:分析MS10-061攻击
1、概述 # 1)什么是 Volatility Volatility是开源的Windows,Linux,MaC,Android的内存取证分析工具。基于Python开发而成,可以分析内存中的各种数据。Volatility支持对32位或64位Wnidows、Linux、Mac、Android操作系统…...
水表数字识别3:Pytorch CRNN实现水表数字识别(含训练代码和数据集)
水表数字识别3:Pytorch CRNN实现水表数字识别(含训练代码和数据集) 目录 水表数字识别3:Pytorch CRNN实现水表数字识别(含训练代码和数据集) 1.前言 2. 水表数字识别的方法 3. 水表数字识别数据集 4. 水表数字分割模型训练 5. 水表数字识别模型训…...
oracle数据文件损坏和误删dbf文件处理方法
加油,新时代打工人! 打开sqlplus sqlplus> “/as sysdba” (命令行登录sqlplus) SQL>shutdown abort; (关闭oracle数据库服务器) SQL>startup mount ;(挂载oracle数据库,这…...
postMessageXss续2
原文地址如下:https://research.securitum.com/art-of-bug-bounty-a-way-from-js-file-analysis-to-xss/ 在19年我写了一篇文章,是基于postMessageXss漏洞的入门教学:https://www.cnblogs.com/piaomiaohongchen/p/14727871.html 这几天浏览mXss技术的时候ÿ…...
【深度学习】sdxl的Lora训练技巧
在进行SDXL LoRA训练时,有一些技巧和最佳实践可以帮助你获得更好的结果。以下是一些重要的建议: 图像选择与标注: 选择多样化的高质量图像是关键,建议至少使用30到50张分辨率为1024x1024的图像【8†source】【9†source】。使用Vi…...
推荐一款 Android 手机端的 SSH 远程连接工具
https://andi.cn/page/621590.html...
3.1、matlab双目相机标定实验
1、双目相机标定原理及流程 双目相机标定是将双目相机系统的内外参数计算出来,从而实现双目视觉中的立体测量和深度感知。标定的目的是确定各个摄像头的内部参数(如焦距、主点、畸变等)和外部参数(如相机位置、朝向等),以便将双目相机捕获的图像转换为三维空间坐标。 双…...
IntelliJ IDEA 直接在软件中更新为最新版
当我们的 IDEA 工具许久没有更新,已经拖了好几个版本,想跨大版本更新,比如从2020.2.1 -> 2023.x.x 此时,我们菜单栏点击 Help -> Check for Updates… ,右下角会有提示更新,如下图: 点…...
库卡机器人示教器 KPC2 00107-264 KPC200.107-264
库卡驱动器是一种高性能的控制器,其作用类似于变频器在普通交流马达中的应用。它通过位置、速度和力矩三种方式对伺服马达进行控制,以满足各种高精度定位系统的需求。库卡驱动器是伺服系统的重要组成部分,广泛应用于各种工业自动化领域。 库…...
数据传输安全--VPN
目录 前置知识 VPN概念 VPN诞生的原因 VPN分类 根据建设的单位不同分类 企业自建的VPN 运营商搭建的VPN 根据组网方式不同来进行分类 Client to LAN VPN LAN to LAN VPN按层次划分 VPN常用技术 VPN的核心技术 VPN封装过程的角色 VPN包含的技术 身份认证技术 加…...
【人工智能】人工智能可解释性和透明度的详细探讨
人工智能的可解释性和透明度是当前AI领域的重要议题,它们对于AI系统的公正性、可靠性、用户信任以及合规性等方面都具有深远的影响。以下是对人工智能可解释性和透明度的详细探讨: 一、人工智能的可解释性 定义: 可解释性是指机器学习模型…...
vscode+wsl2+anaconda环境的配置与使用
目录 下载anaconda Anaconda使用参考 vscodeubuntuanaconda 先用vscode连接本地ubuntu。 如果没有安装wsl2与ubuntu,可点击下面的链接。 问题:wsl install 无法解析服务器 成功记录: 在vscode终端用ubuntu安装anaconda。 创建pytho…...
【Linux网络】套接字编程
本篇博客整理了 socket 套接字编程的相关内容,包括 socket 网络通信原理、socket 相关的系统调用接口等,分别演示了基于UDP协议、TCP协议的 socket 网络编程,旨在让读者更加深入理解网络通信原理和设计,对网络编程有初步的认识和掌…...
在线 PDF 制作者泄露用户上传的文档
两家在线 PDF 制作者泄露了数万份用户文档,包括护照、驾驶执照、证书以及用户上传的其他个人信息。 我们都经历过这样的情况:非常匆忙,努力快速制作 PDF 并提交表单。许多人向在线 PDF 制作者寻求帮助,许多人的祈祷得到了回应。 …...
SQL概述及其规则与规范
SQL概述及其规则与规范 1.SQL概述 1.1 SQL背景知识 1946年,世界第一台电脑诞生,如今,互联网已经非常壮大,在这几十年间互联网得到了飞速的发展,无数的技术在其中起起伏伏,但是有一门技术从未消失…...
开源模型应用落地-FastAPI-助力模型交互-进阶篇-RequestDataclasses(三)
一、前言 FastAPI 的高级用法可以为开发人员带来许多好处。它能帮助实现更复杂的路由逻辑和参数处理,使应用程序能够处理各种不同的请求场景,提高应用程序的灵活性和可扩展性。 在数据验证和转换方面,高级用法提供了更精细和准确的控制&#…...
2024.7.20 暑期训练记录(6)
CF 1391D - 505(思维状压dp) 首先简化问题,发现一个矩阵如果要满足条件,那它其中的每一个 2 2 2\times 2 22 的小矩阵都要满足条件,于是很容易发现 4 4 4\times4 44 的矩阵是一定不满足条件的(因为是…...
firefly rk3288 ubuntu23.10 网卡名为end0 改为eth0
1、内核源码修改u-boot/include/env_default.h文件第32行的bootargs参数,修改后: "bootargs net.ifrenames0 " CONFIG_BOOTARGS "\0"2、修改rootfs里的lib/systemd/network/99-default.link文件: [M…...
git使用总结
概述 简介 Git是一种代码托管技术,很多代码托管平台也是基于Git来实现的。 Git可以帮我们做到很多的事情,比如代码的版本控制,分支管理等。 网址 git官网:https://git-scm.com/ 版本控制系统【VCS】 可以完整保存项目的快照&#…...
使用多进程和多线程实现服务器并发【C语言实现】
在TCP通信过程中,服务器端启动之后可以同时和多个客户端建立连接,并进行网络通信,但是在一个单进程的服务器的时候,提供的服务器代码却不能完成这样的需求,先简单的看一下之前的服务器代码的处理思路,再来分…...
【根据当天日期输出明天的日期(需对闰年做判定)。】2022-5-15
缘由根据当天日期输出明天的日期(需对闰年做判定)。日期类型结构体如下: struct data{ int year; int month; int day;};-编程语言-CSDN问答 struct mdata{ int year; int month; int day; }mdata; int 天数(int year, int month) {switch (month){case 1: case 3:…...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
什么是库存周转?如何用进销存系统提高库存周转率?
你可能听说过这样一句话: “利润不是赚出来的,是管出来的。” 尤其是在制造业、批发零售、电商这类“货堆成山”的行业,很多企业看着销售不错,账上却没钱、利润也不见了,一翻库存才发现: 一堆卖不动的旧货…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...
DBAPI如何优雅的获取单条数据
API如何优雅的获取单条数据 案例一 对于查询类API,查询的是单条数据,比如根据主键ID查询用户信息,sql如下: select id, name, age from user where id #{id}API默认返回的数据格式是多条的,如下: {&qu…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论
路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中(图1): mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...
适应性Java用于现代 API:REST、GraphQL 和事件驱动
在快速发展的软件开发领域,REST、GraphQL 和事件驱动架构等新的 API 标准对于构建可扩展、高效的系统至关重要。Java 在现代 API 方面以其在企业应用中的稳定性而闻名,不断适应这些现代范式的需求。随着不断发展的生态系统,Java 在现代 API 方…...
深入浅出Diffusion模型:从原理到实践的全方位教程
I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...
