域渗透靶场-How2MoveLaterally
How2MoveLaterally
本环境是xbitsplatform靶场平台的基础环境之一,主要考察横向移动的知识点。从 linux 外围打点开始,经历几次横向移动后最后获得域管权限。
参考资料:https://www.freebuf.com/articles/web/369610.html
渗透过程
连接VPN
在xbitsplatform靶场输入ls
,然后cat How2MoveLaterally.txt
得到.ovpn
文件,进行openvpn连接(连接的用户名和密码为文件名称,用户名:Anonymous 密码:helloworld)
C段扫描
成功连接上VPN后,输入route
对其路由进行查看,可以得到靶场的入口IP:10.0.2.0
,使用goby
工具对其进行C段扫描,成功得到相关存活IP,访问其中开放80端口的10.0.2.152
外网打点
发现10.0.2.152为Cacti框架,且为1.2.22版本,在漏洞库中发现其存在一个前台命令注入的漏洞,尝试利用,成功写入木马
SUID提权
写入木马后,用蚁剑对其进行连接,发现在根目录存在.dockerenv
,知道目前在docker容器内,访问/dev
目录,发现其中存在很多文件,猜测docker容器为特权模式启动,可能存在逃逸,当前用户为www-data
,权限较低,尝试进行提权
查找SUID文件:
1 |
|
存在特殊文件find
,GTFOBins查看如何利用
执行:
1 |
|
成功提权
Docker逃逸
在/mnt目录下发现了一个已经挂载的目录,并且可读
1 |
|
采取写入公钥的办法进行登录,使用MobaXterm
生成一个公钥,并使用base64进行加密,传入/mnt/cacti/root/.ssh/authorized_keys
1 |
|
成功连接
Linux域信息搜集
查看dns,显示存在域,域控为10.0.2.100
尝试ping,返回的ttl
值为128,可知为Windows域
Windows操作系统的初始TTL值为128,而Linux和Unix系统的初始TTL值为64
1 |
|
查看具体的ldap
配置,可知域为MOVE.LAB
1 |
|
搜索相关目录,尝试寻找和域相关的信息
1 |
|
得到了相关有效信息:
1 |
|
如果可以拿到 linux_ldap 这个用户的身份就可以先将域的 ldap 信息导出,在/tmp 目录下发现了 linux_ldap 用户缓存的票据:
尝试设置环境变量为这个票据
1 |
|
使用 ldapsearch 导出信息
1 |
|
但显示认证失败
看来这些工具并不支持票据认证,使用 impacket 工具尝试,这里直接使用打包好的 elf 程序
elf文件:目标文件再不同的系统或平台上具有不同的命名格式,在Unix和X86-64 Linux上称为ELF(Executable and Linkable Format, ELF)
通过/etc/krb5.keytab
利用keytabextract.py
获取到了Linux机器的hash
这样我们就可以用这个机器的身份来搜集 ldap 信息
1 |
|
但impacket
对于 ldap
信息搜集的不全,只有枚举用户的功能
使用mimikatz
进行本地PTH
(Pass-The-Hash哈希传递)
1 |
|
使用AdFind
成功导出ldap
的信息