0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看威廉希尔官方网站 视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Ubuntu18.04磁盘取证方法-中难度篇

哆啦安全 来源:我不懂安全 2023-12-01 09:58 次阅读

涉及的镜像文件:

sdb.vhd
uac.tar
ubuntu.20211208.mem

需要利用的工具:

volatility3
volatility2.6.1
FTK/Autopsy
Strings

题干:

容器是一个Ubuntu Linux 蜜罐,用来观察利用 CVE-2021-41773 的漏洞攻击者想要做什么。

您将看到一个 cron 脚本,用于删除 /tmp 中名为 kinsing 的文件。这是防止这些矿工的一种方式,因此可能会发生更多有趣的事情。作为SOC分析师,请帮忙分析以下问题

0x01 - 问题1

文件 => sdb.vhd

有一个脚本每分钟运行一次以执行清理。文件的名称是什么?

直接用FTK打开磁盘镜像文件,找到计划任务的路径进去看就行

wKgZomVpPi6AV-uvAALJBzrtdto740.jpg

wKgaomVpPi6AGoxkAAKLOTx4yc4805.jpg

这个 bash 脚本的作用是查找正在运行的进程中包含 "kinsing" 或 "kdevtmp" 字符串,并且进程的可执行文件路径包含 "/tmp" 的进程。然后,它使用 kill -9 来终止这些进程。接着,它更改以 "k" 开头的文件在 /tmp 目录下的所有者为 root,并将这些文件的权限设置为只读(444)他的目的就是杀掉防护进程

0x02 - 问题2

文件 => sdb.vhd

题目1中的脚本终止与两个比特币矿工恶意软件文件关联的进程。第一个恶意软件文件的名称是什么?

#!/bin/bash for PID in `ps -ef | egrep "kinsing|kdevtmp" | grep "/tmp" | awk '{ print $2 }'` do kill -9 $PID done chown root.root /tmp/k* chmod 444 /tmp/k*

kinsing

0x03 - 问题3

文件 => sdb.vhd

题目1中的脚本更改某些文件的权限。他们的新权限是什么?

444

0x04 - 问题4

文件 => sdb.vhd

僵尸网络代理文件的 sha256是什么?

wKgaomVpPi6AD-_2AAM_dFmPvLU140.jpg

这个文件在/tmp 文件夹下,此题有些牵强了,因为光凭借文件的名字没人知道这是个啥,所以这里推荐大家用FTK把磁盘映射搞起来,然后用病毒扫描工具扫一下

wKgZomVpPi6Ac6c-AAJ2GULas24057.jpg

0x05 - 问题5

文件 => sdb.vhd Q#4 中的僵尸网络名称是什么?

直接把vt扫描结果放进去就行

Tsunami

0x06 - 问题6

文件 => sdb.vhd

哪个 IP 地址与 题目4中僵尸网络代理文件的创建时间戳匹配?

先看一下代理文件下载时间

wKgZomVpPi6AIUY8AAOjB1UtVI8511.jpg

然后去阿帕奇日志里找到了东西,这个题其实也有点牵强,但是翻日志确实是应急必须做的

wKgaomVpPi6AO2NWAAW2FNVWorg727.jpg

141.135.85.36

0x07 - 问题7

文件 => sdb.vhd

攻击者下载僵尸网络代理使用的URL是什么?

wKgZomVpPi6AZzvSAAOy7CRWmu8441.jpg

这道题是在error.log里找到的,不知道为什么会出现在错误日志里 http://138.197.206.223:80/wp-content/themes/twentysixteen/dk86

0x08 - 问题8

文件 => sdb.vhd

攻击者下载并执行恶意脚本,随后删除自身,文件的名称是什么?

此题在error.log里看到了,这道题其实到最后我也没做出来,太过于牵强了,简直是大海捞针一样

wKgaomVpPi6ARE89AAOZ7mTd66k581.jpg

0x09 - 问题9

文件 => sdb.vhd

攻击者下载了一些 sh 脚本。这些sh文件的名称是什么?

还是看error.log

strings error_log | grep -E '\.sh'

wKgZomVpPi-ASDA8AArSE3h8ANA461.jpg

只是不知道为啥会出现在error.log里面 0_cron.sh, 0_linux.sh, ap.sh

0x10 - 问题10

文件 => UAC

两个可疑进程正在从已删除的目录运行。他们的 PID 是什么?

/uac-ApacheWebServer-linux-20211208202503.tar\live_response\process\lsof_-nPl.txt

过滤所有的deleted关键字

wKgaomVpPi6AOoMfAAHUSYv7Vqw467.jpg

wKgZomVpPi6AG_r5AAJaKVOxEdw810.jpg

6388,20645

0x11 - 问题11

文件 => UAC

与上题第二个 PID 关联的可疑命令行是什么?

/uac-ApacheWebServer-linux-20211208202503.tar\live_response\process\ps_auxwwwf.txt

wKgaomVpPi-AFPu2AAaxN93lgmk312.jpg

sh .src.sh

0x12 - 问题12

文件 => UAC

UAC 从 第10道题目的第二个进程收集了一些数据。攻击中使用的远程 IP 地址和远程端口是什么?

/uac-ApacheWebServer-linux-20211208202503.tar\live_response\process\proc\20645\environ.txt

wKgZomVpPi-AQ4JGAAN93uwewNM269.jpg

116.202.187.77:56590

0x13 - 问题13

文件 => UAC

哪个用户负责执行 第11题中的命令?

wKgaomVpPi-AcfEvAAaxDgOSrOY214.jpg

daemon

0x14 - 问题14

文件 => UAC

两个可疑的 shell 进程正在从 tmp 文件夹运行。他们的 PID 是什么?

strings lsof_-nPl.txt | grep '/tmp'

wKgaomVpPi-AehgUAAJxl6Yb34k730.jpg

wKgZomVpPi-AfmgKAAJ-qH_UwMw552.jpg

15853,21785

0x15 - 问题15

文件 => ubuntu.20211208.mem

捕获的内存的 MAC 地址是多少?

这里需要使用vol3版本,因为vol2.6.1无论是哪个版本使用imageinfo都是没有任何响应

python vol.py -f ../ubuntu.20211208.mem banner

wKgZomVpPi-AGKIsAAHkXUz9_HI762.jpg

这里需要定向配置了 这里使用的docker 首先先在系统根路径下把volatility-2.6.1整个拷贝过去

wKgaomVpPi-AWfjEAAFbf_lu_YQ272.jpg

我们需要用的是里面的/volatility-2.6.1/tools/linux 里面的makefile文件和modules.c文件 在系统根路径运行以下命令,首先更新apt-get,然后安装docker,最后是运行容器

apt-get update apt install docker.io docker run -it --rm -v $PWD://volatility-2.6.1 ubuntu:18.04 /bin/bash cd /volatility-2.6.1/tools/linux

wKgZomVpPi-AezEeAAm0Ilb0GRY459.jpg

然后更新容器,安装dwarfdump make zip等命令,同时在modules.c文件加入一句话

MODULE_LICENSE("GPL")

直接在末尾也可以

wKgaomVpPi-Af0JiAAJD_8kzHZ4038.jpg

apt-get update apt-get install -y build-essential dwarfdump make zip apt-get install -y linux-image-5.4.0-1059-azure linux-headers-5.4.0-1059-azure make

wKgaomVpPi-AHYY9AAkoIRZBvx0081.jpg

第一次执行make的时候,报错了,不知道为啥他找的是kali的路径,所以执行以下命令手动make一下,由于makefile的报错,所以dwarfdump 也得手

make -C //lib/modules/5.4.0-1059-azure/build CONFIG_DEBUG_INFO=y M="/root/" modules dwarfdump -di module.ko > module.dwarf zip Ubuntu-azure.zip module.dwarf /boot/System.map-5.4.0-1059-azure

wKgZomVpPi-ABGnJAAILIbHUKJo109.jpg

同时如果不修改modules.c就会报错 全部执行完毕后不报错了

wKgZomVpPi-AWlGjAAG6tkwPhRc842.jpg

然后去自己物理机的目录就能找到压缩包了

wKgZomVpPi-AbqbeAAERRwWwZJQ226.jpg

把Ubuntu-azure.zip拷贝到/volatility-2.6.1/volatility/plugins/linux

wKgaomVpPi-AObWPAAOy_bnm1mw754.jpg

试着执行一下,成功了,不容易

wKgaomVpPi-AYWcbAAd1l2tzoFw904.jpg

正常玩法

python2 vol.py -f ubuntu.20211208.mem --profile=LinuxUbuntu-azurex64 linux_ifconfig

wKgZomVpPi-AZEJ_AALbjjfnPNs599.jpg

当然了,环境配不出来可以strings过滤

strings ubuntu.20211208.mem | grep -E -o '([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})'

wKgZomVpPi-AGBPdAAH0tQGs2J8486.jpg

0x16 - 问题16

文件 => ubuntu.20211208.mem 来自 Bash 历史记录。攻击者下载了一个 sh 脚本。文件的名称是什么?

正常玩法:

python2 vol.py -f ubuntu.20211208.mem --profile=LinuxUbuntu-azurex64 linux_bash

wKgaomVpPi-AAuppAAa57h-y8s4585.jpg

太多了

python2 vol.py -f ubuntu.20211208.mem --profile=LinuxUbuntu-azurex64 linux_bash | grep -i '\.sh'

wKgaomVpPi-AXOGoAAGnMNnSM4Y886.jpg

unk.sh

同样也可以在FTK工具中利用第一个镜像找到文件

wKgZomVpPi-AW-yvAALVcrq7Nsk193.jpg







审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • soc
    soc
    +关注

    关注

    38

    文章

    4163

    浏览量

    218184
  • PID
    PID
    +关注

    关注

    35

    文章

    1472

    浏览量

    85489
  • URL
    URL
    +关注

    关注

    0

    文章

    139

    浏览量

    15329
  • python
    +关注

    关注

    56

    文章

    4793

    浏览量

    84638
  • Ubuntu系统
    +关注

    关注

    0

    文章

    91

    浏览量

    3927

原文标题:Ubuntu18.04磁盘取证-中难度篇

文章出处:【微信号:哆啦安全,微信公众号:哆啦安全】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于ubuntu18.04搭建100ASK-ESP32开发环境并成功点灯

    前面搭了一个ubuntu18.04的服务器+远程VScode开发环境,最终就是为了玩板。
    发表于 06-25 11:41 758次阅读
    基于<b class='flag-5'>ubuntu18.04</b>搭建100ASK-ESP32开发环境并成功点灯

    Ubuntu18.04工控机如何绑定USB串口?

    Ubuntu18.04工控机如何绑定USB串口?
    发表于 09-30 08:08

    ubuntu18.04虚拟机的登录密码是多少

    下载了i.mx8mm开发板官方提供的ubuntu18.04的虚拟机,登陆用户名是foxlinux,密码是多少?
    发表于 12-30 06:33

    Ubuntu18.04如何安装.Net5?

    的t507_linux_okt507_uart0.img镜像,安装.Net5失败。这是微软的文档,Ubuntu18.04支持.Net5https://docs.microsoft.com/zh-cn/dotnet/core/install/linux-
    发表于 12-31 06:26

    Ubuntu18.04下运行run_demo报错怎么办

    为什么Ubuntu18.04下运行run_demo会报错呢?Ubuntu18.04下运行run_demo报错怎么办?
    发表于 02-16 06:37

    如何安装ubuntu18.04 QT开发环境?

    如何安装ubuntu18.04 QT开发环境?
    发表于 03-04 06:12

    怎样在RK3399去安装Ubuntu18.04系统呢

    怎样在RK3399去安装Ubuntu18.04系统呢?有几种方法可以使设备进入升级模式呢?
    发表于 03-07 12:26

    rk3399 ubuntu18.04 wifi 无法使用如何解决

    ubuntu18.04 ifconfig没有wlan0节点,同样编译出来的linuxrootfs和debian系统都没问题,有遇到同样问题的没?
    发表于 06-14 10:01

    新手求助RK3399 ubuntu18.04 wifi无法使用

    ubuntu18.04 ifconfig没有wlan0节点,同样编译出来的linuxrootfs和debian系统都没问题,有遇到同样问题的没?
    发表于 08-31 16:41

    Core 3399 JD4固件Ubuntu18.04/20.04(GPT)

    电子发烧友网站提供《Core 3399 JD4固件Ubuntu18.04/20.04(GPT).txt》资料免费下载
    发表于 09-02 09:43 0次下载
    Core 3399 JD4固件<b class='flag-5'>Ubuntu18.04</b>/20.04(GPT)

    Core 3399 JD4 V2固件Ubuntu18.04/20.04(GPT)

    电子发烧友网站提供《Core 3399 JD4 V2固件Ubuntu18.04/20.04(GPT).txt》资料免费下载
    发表于 09-16 10:00 0次下载
    Core 3399 JD4 V2固件<b class='flag-5'>Ubuntu18.04</b>/20.04(GPT)

    Core 1808 JD4固件Linux根文件系统(Ubuntu18.04

    电子发烧友网站提供《Core 1808 JD4固件Linux根文件系统(Ubuntu18.04).txt》资料免费下载
    发表于 09-20 17:05 0次下载
    Core 1808 JD4固件Linux根文件系统(<b class='flag-5'>Ubuntu18.04</b>)

    Core 1808 JD4固件Ubuntu18.04

    电子发烧友网站提供《Core 1808 JD4固件Ubuntu18.04.txt》资料免费下载
    发表于 09-20 17:03 0次下载
    Core 1808 JD4固件<b class='flag-5'>Ubuntu18.04</b>

    ROC RK3399 PC Pro固件Ubuntu18.04/20.04(GPT)

    电子发烧友网站提供《ROC RK3399 PC Pro固件Ubuntu18.04/20.04(GPT).txt》资料免费下载
    发表于 09-20 15:53 3次下载
    ROC RK3399 PC Pro固件<b class='flag-5'>Ubuntu18.04</b>/20.04(GPT)

    如何在Ubuntu18.04编译小米K30U的内核呢?

    Ubuntu18.04编译小米官方内核K30U的内核,环境配置等。
    的头像 发表于 09-08 09:42 3090次阅读