返回介绍

11.2 Web 应用安全

发布于 2024-10-11 22:28:30 字数 2031 浏览 0 评论 0 收藏 0

端口管控工作是基础,做好端口管控工作后,需要将重点放在 Web 安全上。OWASP 组织(Open Web Application Security Project,开放式 Web 应用程序安全项目)每年都会有个 Top 10 的风险列表,包括各种注入(SQL、NoSQL、OS、LDAP 等注入)、XSS 攻击、CSRF,等等。在 Web 安全领域,吴翰清的《白帽子讲 Web 安全》值得推荐,客户端脚本安全、服务端应用安全都包括在内。作为企业安全从业人员,除了要知道黑客怎么攻击外,还需要关注我们怎么防守,在哪些维度上进行防守。

1.Web 应用防火墙

针对常规的 Web 扫描行为,Web 应用防火墙(Web Application Firewall,WAF)基本上可以直接拦截或阻断。Web 应用防火墙是通过执行一系列针对 HTTP/HTTPS 的安全策略来专门为 Web 应用提供保护的一款产品。与传统防火墙不同,WAF 工作在应用层,因此对 Web 应用防护具有先天的技术优势。基于对 Web 应用业务和逻辑的深刻理解,WAF 对来自 Web 应用程序客户端的各类请求进行内容检测和验证,确保其安全性与合法性,对非法的请求予以实时阻断,从而对各类网站站点进行有效防护。

WAF 产品有基于硬件的,也有基于软件的,还有基于云的:

·硬件 WAF 一般支持透明桥接模式、旁路模式、反向代理模式等部署方式,而且性能好、支持 ByPass 等,所以是我们的首选。当然,有些防火墙的 IPS 模块也具备一定的 WAF 功能,例如 CheckPoint;有些负载均衡设备本身也支持 SSL 卸载和应用防护,例如 F5。在实际的部署过程中,需要考虑在哪一层部署,或者结合各产品自身特性综合性地部署。

·在一些不重要的区域或者基于成本考虑,也可以使用软件 WAF,比较著名的有 ModSecurity。ModSecurity 的规则包括基础规则集、SLR 规则集、可选规则集、实验性规则集。基础规则集主要包括与 HTTP 协议规范相关的一些规则,一些 SQL 注入、XSS、目录遍历、Webshell 等;SLR 规则集则是针对特定应用(例如 Joomla、PHPBB、WordPress 等)的漏洞利用规则。考虑到 ModSecurity 性能有所不足,还可以使用基于 nginx 的方案,如 Naxsi,或者其他开源方案,如 GitHub 上的 FreeWAF。客观来讲,使用开源 WAF 对安全人员要求较高,也更灵活。

·有些企业考虑将业务上云,于是出现了基于云的 WAF,其本质上也是软件 WAF,结合了一些日志分析、机器学习的技术。

整体来讲,可以考虑在前端有硬件 WAF 的情况下,在服务器上启用软件 WAF,结合业务场景对特定请求进行重点防护,以做补充。

2.入侵检测/防御系统

虽然市面上某些 WAF 有利用机器学习的功能,可以对各种请求的参数进行学习并判定是否合法,但 WAF 更多是基于规则的,有规则就会有绕过的可能。针对这些可能绕过 WAF 的请求,我们还需要借助入侵检测系统/入侵防御系统(Intrusion Detection System/Intrusion Prevention System,IDS/IPS)类产品对 WAF 后端的流量进行分析,发现恶意行为。IDS 开源的有 Snort,网上有较多的资料,不再赘述。商业的 IDS 产品相对来讲更有保障,有新漏洞也可以得到新的规则库,在发生告警后还可以保留一段时间的数据包供进一步分析。

3.漏洞扫描和渗透测试

针对暴露在互联网上的应用,我们自己也要开展定期扫描、内外部渗透测试等工作。漏洞扫描工具常见的有 AWS、IBM Appscan、HP WebInspect、Nikto 等商业或开源扫描器,针对一些漏洞逻辑可能还会使用 BurpSuite、Fiddler 等工具进行辅助。笔者建议有条件的企业,对一些企业应用经常出现的漏洞进行针对性的扫描,适当的时候可以结合开源代码定制自己的扫描器,这样的好处是便于内部 IPS 和 WAF 识别或加白处理。

渗透测试往往包含内部测试和外部测试,内部安全人员对业务理解更深,更容易发现问题。考虑到内部人手、技能、经验等原因,企业一般会采购外部渗透服务,有一些是国家测评中心等国家单位,有些是绿盟、安恒、长亭科技这样的企业。笔者建议是多找几家,最好实现按漏洞付费,每个公司的渗透人员都有不同的经验和思路,多找几家往往能更加全面地覆盖。

关于漏洞扫描和渗透测试的内容,在第 19 章中有更详细的描述。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文