WEB容器内解决JSP后门的一种方式

原创 2016年06月02日 01:29:03

     JSP后门,本来是比较少的,但还是存在漏洞,被“有心之人”利用了,jsp后门主要从上传图片合并jsp后门,到服务器,后,执行jsp,包括所谓的菜刀,服务器中招之后,发现后门jsp,用nginx 方式禁止upload目录执行jsp,暂时解决问题:

      
location ~ ^/(upload|download)/.*\.(jsp)$
{
deny all;
}

但是还是不能从根本解决上传后门jsp的问题,如通过其他方式上传了后门JSP,这种方式仍然可能存在漏洞,包括jspx后门(内部都是编译为jsp),所以,想在web容器级别解决,就是在编译jsp的时候,判断jsp内容是否合法,合法再编译,否则拒绝编译,具体的jsp编译原理可以看网上的资料。这里举例子,Resin 4.0.40,下载源码(官方提供下载)后,跟踪调试,发现,在jsp处理,主要在com.caucho.jsp包内,QServlet 其中有一个方法:

  /**
   * Creates and returns a new page.
   *
   * @param request the servlet request
   * @param response the servlet response
   *
   * @return the compiled page
   */
  public Page getPage(HttpServletRequest request,
                      HttpServletResponse response)
    throws Exception

不难看出,这是创建编译jsp页面的一个主要方法,所以,在这页面里面,通过

page.getServletName() 得到加载的jsp文件路径,在编译之前检查jsp内容是否合法,

如果,不合法,在这个方法里面抛出错误就可以了。

这里面主要屏蔽jsp内容里面含有以下字符串:

public static String check_tag_2 = "Runtime";//jsp 执行本地命令用到的
public static String check_tag_3 = "exec";//jsp 执行本地命令用到的
public static String check_tag_4 = "java.io";//后门程序读取文件记录
public static String check_tag_5 = "java.net";//菜刀程序,反射机制用到

如含有以上字符串,一律屏蔽,以上为jsp主要后门利用方法,具体后门可以网上搜索查阅。可能有朋友说,io,和.net包都屏蔽了,是不是会影响正常jsp,其实,因为jsp属于页面层处理,里面很少用到这两个包,如真的在项目用到,也可以拦截时候判断。

        按照上面处理后,暂时系统处于安全。这也是是一个简单的思路,希望朋友们补充。



jsp小后门

by 园长MM  一:执行系统命令: 无回显执行系统命令: ? 1 "i"));%> 请...
  • god_7z1
  • god_7z1
  • 2015年08月30日 21:20
  • 1693

经典强大的 2个jsp后门

  • 2009年06月16日 18:00
  • 21KB
  • 下载

JspWebshell后门的经典利用

JFolder是流行的JspWebshell后门     (一) JFolder搜索与测试   1.搜索JFloder   JFolder是一款流行的JspWebshell后门,能...
  • fengling132
  • fengling132
  • 2012年07月05日 20:58
  • 2166

攻击JavaWeb应用[8]-后门篇

0x00 背景 关于JavaWeb后门问题一直以来都比较少,而比较新奇的后门更少。在这里我分享几种比较有意思的JavaWeb后门给大家玩。 0x01 jspx后门 在如今的w...
  • xiaoshan812613234
  • xiaoshan812613234
  • 2014年11月14日 15:21
  • 1751

WEB容器内解决JSP后门的一种方式

JSP后门,本来是比较少的,但还是存在漏洞,被“有心之人”利用了,jsp后门主要从上传图片合并jsp后门,到服务器,后,执行jsp,包括所谓的菜刀,服务器中招之后,发现后门jsp,用nginx 方式禁...
  • chinajust
  • chinajust
  • 2016年06月02日 01:29
  • 1242

JFolder.rar后门webshell

  • 2010年06月24日 11:46
  • 8KB
  • 下载

JSP全能管理系统1.0(强大的JSP后门)

%@page import="java.util.*,java.io.*,java.sql.*,java.util.zip.*,java.lang.reflect.*,java.net.*,javax...
  • zwhfyy
  • zwhfyy
  • 2006年10月16日 14:48
  • 3088

初学者对Servlet、JSP及Web容器之间关系的理解

Servlet就是一个Java程序,一个Servlet应用程序经常包含一个或者多个Servlet也就是当用户发送请求,例如提交表单,那么需要一个或多个Servlet协同作用,而访问的jsp页面也是一个...
  • u012318703
  • u012318703
  • 2015年09月05日 23:08
  • 1356

JSP文件管理后门工具jsp-file-browser

JSP文件管理后门工具jsp-file-browser
  • u014621518
  • u014621518
  • 2017年09月20日 10:10
  • 154

如何设计一个web容器

开发一个web容器涉及很多不同方面不同层面的技术,例如通信层的知识,程序语言层面的知识等等,且一个可用的web容器是一个比较庞大的系统,要说清楚需要很长的篇幅,本文旨在介绍如何设计一个web容器,只探...
  • wangyangzhizhou
  • wangyangzhizhou
  • 2016年02月14日 10:20
  • 12905
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:WEB容器内解决JSP后门的一种方式
举报原因:
原因补充:

(最多只允许输入30个字)