Java容器安全
由于Java反序列化漏洞带来的巨大冲击,很多我们平时常用的Web
中间件都出现了RCE
漏洞,如:Weblogic
、Jboss
、WebSphere
等。运行在容器中的Web应用
也因此遭受恶意攻击,容器自身的安全问题也引起了越来越多的人的关注。
Servlet容器基础
Servlet容器
即实现了Servlet 规范的Web应用服务器,负责管理Servlet的生命周期、URL访问请求和Servlet
映射、Servlet
注册/卸载等。
常见的Servlet容器
自Java EE 8
开始Java EE
已更名为Jakarta EE,所有的Servlet容器
都必须实现该规范。常见的Servlet容器
如下:
Tomcat
/TomEE
Jetty
Glassfish Server
Jboss
/Undertow
/WildFly
Resin
Weblogic Server
WebSphere Application Server
/Liberty
TongWeb
(东方通)Apusic
(金蝶)BES Application Server
(宝兰德)InforSuite Application Server
(中创)Primeton AppServer
(普元)
常见的安全问题
- 远程代码执行
- 反序列化漏洞
XSS
SSRF
,如:Weblogic uddiexplorer
- 未授权访问
Session
安全- 文件/目录解析漏洞,如:未知扩展名向左识别文件后缀、换行解析漏洞、空字符截断、编码绕过后缀、文件名解析逻辑漏洞等
- 任意文件上传(写入)漏洞,如:
WebDAV PUT
- 任意文件读取,如:
Tomcat AJP
- 后台管理问题,如:登陆爆破、默认口令、弱口令、部署war包
- 配置错误导致安全风险,如:目录遍历、信息泄露、CRLF注入、Nginx配置不当
- 参数解析,如:Http参数污染
- 拒绝服务攻击,如:由于各种机制导致的服务器响应慢导致的
DOS
、慢连接