请教下关于tengine的功能。
如果有应用存在CVE漏洞,但其实CVE漏洞最关键的几个类文件可以设置为拒绝任何人读写。而咱们tengine刚好有这个功能,所以想跟您确认下tengine通过deny all的方式设置class文件任何人不可访问后,通过ip直接访问会被绕过吗?
tengine不能通过deny all的方式完全防止CVE漏洞被利用。主要有以下几点:
tengine只能控制HTTP请求,不能监控其他协议的请求。如果CVE漏洞能通过其他协议(如FTP、SSH等)利用,tengine仍然会被绕过。
tengine只能控制文件权限,不能修改CVE漏洞的本质。如果CVE漏洞利用方式不需要读取相关class文件,设置deny all也会被绕过。
tengine只能控制源IP地址,如果利用CVE漏洞的requests伪装来源IP,tengine也会被绕过。
tengine设置deny all后,还是有可能被利用。比如利用HTTP方法伪装(如OPTIONS、TRACE方法)绕过tengine。
对应用的class文件设置deny all权限,会影响正常请求的访问。需要权限互斥开发和生产环境。
总的来说,tengine只能通过有效控制HTTP请求起到一定作用。但无法完全防止CVE漏洞的利用。
最有效的方案还应该是:
升级补丁关闭漏洞
应用层面修复CVE漏洞本身
联动WAF等增强应用防御能力
然后再结合tengine等HTTP代理限制访问,才能有效降低CVE利用风险。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。