手动创建一个 Servlet

1,TestServlet

  • init
  • doGet
  • destroy

2,web.xml 配置

<servlet>
    <servlet-name>TestServlet</servlet-name>
    <servlet-class>org.example.servletshell.TestServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>TestServlet</servlet-name>
    <url-pattern>/test</url-pattern>
</servlet-mapping>

3,文章分析

  • 创建一个恶意的 servlet
  • 获取当前的 StandardContext
  • 将恶意 servlet 封装成 wrapper 添加到 StandardContext 的 children 当中
  • 添加 ServletMapping 将访问的 URL 和 wrapper 进行绑定