目录

一、实验目的

二、实验原理

三、实验环境

四、实验过程

1.在虚拟机下载恶意软件或脚本模拟攻击行为

2.利用Dumpit工具导出系统内存镜像。

3.利用procdump工具导出进程内存镜像。

4.利用strings工具分析内存镜像。

5.还原内存镜像图片操作。

五、参考资料与链接


一、实验目的

1.熟悉Windows系统中电子证据获取。

2.了解Dumpit工具的原理,学习Dumpit工具的使用,可以利用Dumpit工具将一个系统的完整内存镜像下来,并用于后续的调查取证工作,了解Windows 内存镜像取证。

3.了解procdump工具的原理,学习procdump工具的使用,可以利用procdump工具在指定的条件下生成dump文件

4.了解strings工具的原理,学习strings工具的使用,可以利用strings工具还原文字或者还原图片。

5.了解Volatility工具的原理,学习Volatility工具的使用,利用Volatility工具来还原获取的镜像文件,并分析其中的进程、文件、网络连接、注册表、事件等信息。

二、实验原理

实验前请查阅资料,回答以下问题:

1.Windows dump文件产生原理是什么?

Windows dump文件是一种内存镜像文件,可以包含系统和进程的内存信息。当Windows系统遇到严重的故障,例如蓝屏、死机等,系统会自动产生一个dump文件,以便管理员对系统进行分析和修复。

2.procdump是什么?其主要目的是什么?

procdump是一个由Sysinternals公司开发的工具,主要用于导出进程的内存镜像。它的主要目的是为了帮助调试员和安全研究人员分析进程的崩溃和异常情况。

3.procdump基本用法?

procdump的基本用法为:procdump [options] target,其中target为目标进程的进程号或进程名称,options为选项参数。例如,导出进程PID为1234的内存镜像的命令为:procdump -ma 1234。

4.strings工具的工作原理是什么?

strings是一个可以从文件或内存中提取ASCII和Unicode字符串的工具。它的工作原理是扫描文件或内存,将连续的ASCII或Unicode字符序列识别出来,并输出到标准输出中。

5.strings的常用用法?

strings的常用用法为:strings [options] file,其中file为目标文件的路径,options为选项参数。例如,从文件test.exe中提取ASCII字符串的命令为:strings -a test.exe。

三、实验环境

  1. 虚拟机
  2. 操作系统:Windows7或Windows10
  3. 软件: Dumpit,procdump,strings,Volatility

四、实验过程

1.在虚拟机下载恶意软件或脚本模拟攻击行为

可以在GitHub上找到PowerSploit,并从GitHub - PowerShellMafia/PowerSploit: PowerSploit - A PowerShell Post-Exploitation Framework 下载该工具包并解压缩。在运行前先把杀毒防护软件给关了,如不运行不了。

以管理员模式打开powershell,输入命令Get-ExecutionPolicy  ,结果显示restricted则需要解除限制。

输入Set-ExecutionPolicy Unrestricted,允许所有脚本允许。

如果出现发生覆盖的报错,则用

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

然后去到工具包里的Exfiltration目录,导入命令,执行命令获取密码

1.Import-Module .\Invoke-Mimikatz.ps12.Invoke-Mimikatz -Command '"privilege::debug" "
sekurlsa::logonPasswords full"' > C:\Users\doctorwho\Desktop\output.txt(可以直接显示)

如果密码输null,需要一些设置,参考链接在底下

2.利用Dumpit工具导出系统内存镜像。

下载dumpit软件,下载下来后:直接双击运行 exe 文件,输入 y 并回车,把当前的内存信息保存为raw格式的镜像:

如果不是直接运行的就用命令行

dumpit.exe <文件名>.raw

3.利用procdump工具导出进程内存镜像。

执行命令

procdump.exe -ma <PID> <DumpFileName>.dmp

其中PID是执行恶意脚本的PID,PID在执行恶意脚本的shell里用$pid获得。

这里简化了PID的寻找,现实中,获取恶意软件的PID可能需要一些手段。恶意软件通常会隐藏自己,或者使用伪装的进程名或PID,从而使其不易被发现。有时候可以通过查看系统日志或监视系统行为等手段来定位恶意软件的PID,但有时候可能需要更加专业的取证工具和技术来进行深入分析。

4.利用strings工具分析内存镜像。

执行命令

1.strings <文件路径+文件名>.raw > output.txt2.strings <文件路径+文件名>.dmp > output2.txt

该命令将导出内存镜像中的所有可打印ASCII字符串到一个文本文件中。raw文件很大,需要等一段时间。

然后根据掌握的线索来分析得到的文本,例如我们执行的Invoke-Mimikatz.ps1脚本,就通过关键词"Mimikatz"来寻找。

.rar转的文本

.dmp转的文本,直接看到powershell里的操作和结果

因为strings工具转换时,将二进制文件中的可打印ASCII字符提取出来并输出为文本文件。因此,如果二进制文件中包含了不可打印的ASCII字符,那么它们将不会被正确的显示在文本文件中,这可能导致文本编辑器无法打开文件。 所有做好用别的编辑器打开,如Sublime Text。

5.还原内存镜像图片操作。

使用以下命令列出可用的插件:

volatility_2.6_win64_standalone.exe -h

使用以下命令查看.raw文件的文件格式:

volatility_2.6_win64_standalone.exe -f memory.raw imageinfo

确认.raw文件的操作系统版本,并选择合适的插件进行分析,例如选择对应Windows 10的插件:

volatility_2.6_win64_standalone.exe -f <文件路径>.raw --profile=Win10x64 pslist

pslist,该插件列举出系统进程,但它不能检测到隐藏或者解链的进程,psscan可以

找到执行恶意代码的进程,然后提取进程

volatility_2.6_win64_standalone.exe -f <文件路径>.raw --profile=Win10x64 memdump -p 5216 -D output/导出了5126.dmp

memdump:提取出指定进程,常用foremost 来分离里面的文件,-p 进程号 -D 当前输出路径,-D 后面不能为空,所有先创建好一个文件夹。

导出.dmp文件,就用strings工具转出txt文本,也可以直接看

strings.exe <文件路径>\5216.dmp | grep -i mimikatz

这是简化后针对性的对内存镜像进行分析,现实中需要查看很多东西来进行分析,如分析.raw文件,例如使用malfind插件查找可疑的进程内存:

volatility_2.6_win64_standalone.exe -f memory.raw --profile=Win10x64 malfind

查看网络连接

volatility_2.6_win64_standalone.exe -f memory.raw --profile=Win10x64 netscan

查看运行程序相关的记录,比如最后一次更新时间,运行过的次数等

volatility_2.6_win64_standalone.exe -f memory.raw --profile=Win10x64 userassist

五、参考资料与链接

获取明文密码设置

strings,procdump都在Sysinternals套件里

volatility下载地址

volatility插件使用

Windows取证实验相关推荐

  1. Windows 取证之ShellBags

    原创稿件征集 邮箱:edu@antvsion.com QQ:3200599554 黑客与极客相关,互联网安全领域里 的热点话题 漏洞.技术相关的调查或分析 稿件通过并发布还能收获 200-800元不等 ...

  2. 计算机取证的相关案例,计算机取证实验报告(共9篇).doc

    计算机取证实验报告(共9篇) 计算机取证实验报告(共9篇) 计算机取证实验报告 <计算机取证技术>实验报告 实验一 实验题目: 用应急工具箱收集易失性数据 实验目的: (1)会创建应急工具 ...

  3. 计算机取证木马取证实验报告,计算机取证实验报告.doc

    计算机取证实验报告 <计算机取证技术> 实验报告 实验一 实验题目: 用应急工具箱收集易失性数据 实验目的: (1)会创建应急工具箱,并生成工具箱校验和. (2)能对突发事件进行初步调查, ...

  4. 计算机取证 报告,计算机取证实验报告(共6篇).doc

    计算机取证实验报告(共6篇) 计算机取证实验报告(共6篇) 一.实验目的: 通过运用软件R-Studio_5.0和winhex对误格式化的硬盘或者其他设备进行数据恢复,通过实验了解windows平台逻 ...

  5. Windows 取证之注册表

    原创稿件征集 邮箱:edu@antvsion.com QQ:3200599554 黑客与极客相关,互联网安全领域里 的热点话题 漏洞.技术相关的调查或分析 稿件通过并发布还能收获 200-800元不等 ...

  6. 操作系统Windows【实验】文件复制

    操作系统课程设计实验报告 实验名称: 复制文件 姓名/学号: 刘赵辰 / 1120181201 一. 实验目的 掌握操作系统当中的文件系统的管理,通过实际操作去了解Windows和Linux两个不同的 ...

  7. 电子数据取证Windows取证读书笔记

    电子数据取证第六章Windows取证读书笔记 其实Windows的取证可以依靠像美亚的取证大师这类取证软件来进行. 这类软件可以完成大多数的取证需要 用户目录: WindowsXP----Docume ...

  8. 《Windows取证分析》

    工具网站 : http://www.ntsecurity.nu/toolbox/ 命令行历史 :命令行模式 CMD 中使 doskey /history 命令可以显示前面输入的命令情况(例如使用 cl ...

  9. 计算机取证 报告,计算机取证实验报告.pdf

    <计算机取证技术> 实验报告 实验一 实验题目: 用应急工具箱收集易失性数据 实验目的: (1)会创建应急工具箱,并生成工具箱校验和. (2 )能对突发事件进行初步调查,做出适当的响应. ...

最新文章

  1. 循环斐波那契数列_剑指offer #10 斐波那契数列
  2. 机器学习在稀疏标注数据内部审计中的应用
  3. 浅析网站与网址二者之间的差别
  4. OS / 进程和线程的区别和联系
  5. 使用mvc模式读取服务器上的文件,关于C#:如何使用asp.net MVC应用程序从服务器上的网络路径读取...
  6. 在IIS中寄存已有WCF服务
  7. 三菱plc字高八位和低八位_Switch好搭档,八位堂手柄上手体验
  8. Android 游戏引擎汇总
  9. Libliner 中的-s 参数选择:primal 和dual
  10. 大地高、正高和正常高及高程异常
  11. 文库系统 文库网站建设仿百度文库 道客巴巴 豆丁
  12. 《Kotin 极简教程》第7章 面向对象编程(OOP)
  13. 《大明王朝》阴谋诡计,下三路招呼
  14. 普通索引 唯一索引 主键索引 组合索引 全文索引
  15. Java学习-面向对象进阶二
  16. To prevent a momery leak
  17. XBee zigbee 使用指南--- XBee模块输入和输出
  18. 玩转容器安全二 - 容器安全概述
  19. Sketch教程|Sketch图层如何使用?如何使用Sketch画板?
  20. 计算机科学家格言,科学家说的名人名言20句

热门文章

  1. 安卓vnc连接linux,Centos和Manjaro中安装x11vnc并通过android vnc客户端进行远程连接
  2. GoLang之go build命令
  3. M-Arch(番外4)GD32L233评测-系统资源主要频率获取和打印
  4. 远程会议概述及其技术演变(电话会议,视频会议,网络会议)
  5. Unity 重新加载场景报错:MissingReferenceException
  6. 设置 tooltip-popper 宽度
  7. 集成算法原理——七个葫芦一条心!
  8. LaTex论文格式模板
  9. 华尔街抢Web3商标!汇丰注册元宇宙虚拟信用卡、富达抢NFT市场
  10. 【Vue3 造轮子项目 ------ kaite-ui】基于vue3.0 + vite + TypeScript 实现一个UI框架 - kaiteUI