WAF上有效拦截tomcat漏洞攻击
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。
https://tomcat.apache.org/
https://vulhub.org/#/environments/tomcat/CVE-2017-12615/
https://vulhub.org/#/environments/tomcat/CVE-2020-1938/
https://vulhub.org/#/environments/tomcat/tomcat8/
这三个是比较常见的tomcat类的漏洞。
拦截针对tomcat的攻击要从多个维度发力,有特殊需要可以加白。
http请求方法:全局禁止PUT和DELETE请求。
绝对路径:如果http请求的URL绝对路径是如下的,拦截访问,避免tomcat后台登录页面或样例页面出现在公网,减少攻击面。
/manager/status
/manager/html
/host-manager/html
/examples/
/examples
/docs/setup.html
/docs/realm-howto.html
/docs/appdev/
/docs/jndi-datasource-examples-howto.html
/docs/security-howto.html
/docs/manager-howto.html
/docs/cluster-howto.html
/docs/RELEASE-NOTES.txt
/docs/changelog.html
/manager-gui
/manager-script
/manager-jmx
/manager-status
/admin-gui
/admin-script
相对路径:如果http请求的URL中包含如下路径,拦截访问。
/j_security_check
/examples/websocket-deprecated/
/examples/jsp/
/examples/websocket/
/examples/servlets/
/WEB-INF/web.xml
/webshell
/shell.jsp
/shell.jspx
/shell.php
文件后缀:拦截不安全的文件后缀,避免出现敏感信息泄露的问题,公司一般提供apk文件的下载,所以文件后缀不包括apk。没有IIS网站,所以可以禁止asp,aspx。需要结合公司实际场景。
war,bat,vbs,exe,msi,ps1,py,pl,rb,go,sql,asp,aspx,cer,der,db,db3,sqlite,yaml,cmd,key,pem,com,sys,hash,cn,sh,dll
请求参数:POST请求包中含有如下内容的,拦截,这些字符通常不会出现在请求参数中。
Runtime.getRuntime().exec
java.io.InputStream
getInputStream()
tomcat页面指纹:基于请求的返回包,检测tomcat相关的信息泄露。
Apache Software Foundation
401 Authorization
401 Unauthorized
HTTP Status 401
manager-status
manager-gui
manager-script
manager-jmx