Epsilon HackTheBox
信息收集
端口扫描

git泄露

硬编码登录

请求正常,但还是返回index.html,也没有set-Cookie

访问/track发现我已经是Admin了

但发什么都是302跳回index

commit 泄露AKSK

配置好AKSK后,通过awscli查看可用的lambda函数

获取函数代码

代码本身没什么意义,也不知道哪里可以触发。不过这个secret会不会复用呢?

secret复用
通过泄露的代码和secret生成JWT

添加到Cookie中,这次访问home没有重定向!

把Cookie写到浏览器缓存里,方便查看

SSTI GetShell
其实代码审计的时候就发现order这里是存在SSTI,只是当时利用不了。现在可以访问到了


POC
1 | |

提权
通过linpeas和进程发现root运行的docker-proxy


Docker 代理允许主机和容器之间进行网络通信,通过将端口从主机映射到容器内部,来实现对容器中服务的访问
但这似乎不能直接利用,只能上pspy监听一下进程
发现root一直在运行/usr/bin/backup.sh

这个脚本的问题出在/usr/bin/tar -chvf的h参数上
-h:处理符号链接文件时,将其内容作为文件而不是链接进行处理
也就是说 ln -s test checksum之后,tar -h会去寻找test文件,而不是checksum。这就造成了利用root任意文件读取的漏洞

链接文件并将压缩文件复制到tmp

一番折腾之后发现并不是这个flag

而且/opt/backups/checksum又被删掉了

写个while语句,当/opt/backups/checksum出现的时候,删掉它。再把root.txt链接过去
1 | |

几次尝试之后成功获取root flag

对味,如果想GetShell的话可以读SSH私钥

Epsilon HackTheBox
http://aurey7.github.io.git/2023/09/17/Epsilon-HackTheBox/