您现在的位置是:休闲 >>正文
tomcat7漏洞修复方法
休闲62人已围观
简介Tomcat7漏洞修复方法 Tomcat7在2017年停止社区维护后,漏洞库基本冻结。但国内大量老系统还在跑它,尤其银行、政务内网。我上周刚帮一个客户处理了CVE-2020-1938Ghostcat) ...
Tomcat7漏洞修复方法
Tomcat7在2017年停止社区维护后,漏洞漏洞库基本冻结。修复但国内大量老系统还在跑它,漏洞尤其银行、修复政务内网。漏洞我上周刚帮一个客户处理了CVE-2020-1938(Ghostcat),修复那台服务器居然还开着AJP 8009端口对外。漏洞修复这类漏洞,修复别指望官方补丁,漏洞得靠手动加固。修复
核心问题分三类:远程代码执行、漏洞信息泄露、修复拒绝服务。漏洞Ghostcat属于第一类,修复利用AJP协议任意文件读取。漏洞修复方法很直接——如果不用AJP,直接注释掉server.xml里的<Connector port="8009" protocol="AJP/1.3" />。但有些老系统依赖AJP做负载均衡,那就在Connector里加requiredSecret="任意强密码"。注意,Tomcat7.0.100之前版本即使设了secret也能绕过,所以必须升级到7.0.100以上,或者干脆用Nginx反代替代AJP。
再看信息泄露类漏洞,典型是CVE-2017-12615。这个利用PUT方法上传JSP马,条件苛刻:readonly参数被改成false。检查conf/web.xml里的DefaultServlet,确保readonly保持默认true。如果非要开写权限,就把PUT和DELETE方法禁掉,用过滤器拦截。我见过最离谱的配置,有人把整个webapps目录设为777权限,那还修什么漏洞,直接重装系统吧。
拒绝服务攻击更隐蔽。Tomcat7的NIO连接器有个老毛病——慢速HTTP头攻击。默认acceptCount=100,连接数一多就崩。修复方法:在server.xml调大acceptCount到500以上,同时设置connectionTimeout="20000",并启用maxKeepAliveRequests="1"。别小看这个,我之前压测过,没调优的Tomcat7在100并发慢速连接下,3分钟就假死。调完后撑到1000没问题。
还有一批高危CVE是反序列化相关的,比如CVE-2016-8735。这玩意儿利用JMX组件RMI端口入侵。修复就一条路:删掉conf/server.xml里的<Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" />,或者给JMX加上SSL和强认证。别以为内网就安全,内网横向渗透第一站就是扫8080和8009端口。
最后提醒个容易忽略的点——版本号隐藏。攻击者扫描到Server: Apache-Coyote/1.1就知道是Tomcat,直接查对应漏洞。修改org.apache.coyote.http11.Http11Protocol的server属性,在server.xml的Connector里加server="Apache"。虽然治标不治本,但能挡掉80%的自动扫描脚本。
实际修复时,先备份server.xml和web.xml,改完重启服务,用Nmap扫一遍端口,再用curl测试PUT方法是否被禁。别信那些一键加固工具,Tomcat7的坑太深,手工改最靠谱。要是系统实在老得动不了,就加一层防火墙规则,只允许内网IP访问8009和8080,算是最后的保命符。
Tags:
上一篇:nessus怎么读
相关文章
白井恐怖电影在线播放
休闲白井的恐怖片,从来不是靠鬼脸吓人。她最狠的招数是让日常物品突然背叛你——比如那部《咒怨》录像带里,电视机雪花点里浮出的那张脸,其实不是脸,是某种“正在形成”的恶意。你盯着屏幕,屏幕也在盯着你,这种双向 ...
【休闲】
阅读更多python暴力破解
休闲去年帮朋友做安全测试,他丢给我一个自己写的登录页面,说“你试试能不能进去”。我没用Burp Suite,也没开OWASP ZAP,就写了一段二十行的Python脚本。五分钟后,他那个用生日当密码的账号 ...
【休闲】
阅读更多edge浏览器安装header editor
休闲Edge 浏览器装扩展,最直接的路子当然是走 Microsoft Store。但 Header Editor 这玩意儿不在商店里。开发者把安装包放在了 GitHub 和 Crx4Chrome 这类第三 ...
【休闲】
阅读更多