透视 HTTP 协议
罗剑锋(Chrono)
前奇虎 360 技术专家,Nginx/OpenResty 开源项目贡献者
63943 人已学习
新⼈⾸单¥59
登录后,你可以任选4讲全文学习
课程目录
已完结/共 48 讲
开篇词 (1讲)
透视 HTTP 协议
15
15
1.0x
00:00/00:00
登录|注册

36 | WAF:保护我们的网络服务

审计日志
过滤请求和响应报文
防护DDoS攻击
IP和URI黑名单和白名单
WAF消耗CPU,需平衡安全与性能
ModSecurity是开源的WAF产品
WAF工作在七层
WAF加固Web服务
审计日志功能
OWASP ModSecurity核心规则集
规则集
规则引擎
开源的WAF工具包
使用成熟的WAF产品
木桶效应
OpenResty动态更新IP地址列表
Nginx配置示例
功能
工作在七层
跨站脚本攻击 (XSS)
HTTP头注入
SQL注入
代码注入
DDoS攻击
防止恶意窃听和窜改
加密通信过程
SSL/TLS协议
小结
ModSecurity
WAF开发需谨慎
WAF实现
网络应用防火墙 (WAF)
威胁
HTTP协议的开放性导致Web服务成为黑客攻击目标
HTTPS仅保证通信链路安全
HTTPS
WAF: 保护网络服务

该思维导图由 AI 生成,仅供参考

在前些天的“安全篇”里,我谈到了 HTTPS,它使用了 SSL/TLS 协议,加密整个通信过程,能够防止恶意窃听和窜改,保护我们的数据安全。
但 HTTPS 只是网络安全中很小的一部分,仅仅保证了“通信链路安全”,让第三方无法得知传输的内容。在通信链路的两端,也就是客户端和服务器,它是无法提供保护的。
因为 HTTP 是一个开放的协议,Web 服务都运行在公网上,任何人都可以访问,所以天然就会成为黑客的攻击目标。
而且黑客的本领比我们想象的还要大得多。虽然不能在传输过程中做手脚,但他们还可以“假扮”成合法的用户访问系统,然后伺机搞破坏。

Web 服务遇到的威胁

黑客都有哪些手段来攻击 Web 服务呢?我给你大概列出几种常见的方式。
第一种叫“DDoS”攻击(distributed denial-of-service attack),有时候也叫“洪水攻击”。
黑客会控制许多“僵尸”计算机,向目标服务器发起大量无效请求。因为服务器无法区分正常用户和黑客,只能“照单全收”,这样就挤占了正常用户所应有的资源。如果黑客的攻击强度很大,就会像“洪水”一样对网站的服务能力造成冲击,耗尽带宽、CPU 和内存,导致网站完全无法提供正常服务。
“DDoS”攻击方式比较“简单粗暴”,虽然很有效,但不涉及 HTTP 协议内部的细节,“技术含量”比较低,不过下面要说的几种手段就不一样了。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结

WAF:ModSecurity是一个开源的、生产级的WAF产品,工作在七层,为Web服务提供全面的防护。它的核心组成部分是“规则引擎”和“规则集”,两者的关系有点像杀毒引擎和病毒特征库。ModSecurity最新的3.0版本移除了对Apache架构的依赖,使用新的“连接器”来集成进Apache或者Nginx,更加稳定和快速,误报率也更低。WAF实质上是模式匹配与数据过滤,所以会消耗CPU,增加一些计算成本,降低服务能力,使用时需要在安全与性能之间找到一个“平衡点”。总之,WAF作为一种“HTTP入侵检测和防御系统”,在保护网络服务安全方面发挥着重要作用,但在选择和使用上需谨慎小心。 ModSecurity提供了强大的审计日志(Audit Log)功能,记录任何可疑的数据,供事后离线分析。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《透视 HTTP 协议》
新⼈⾸单¥59
立即购买
登录 后留言

全部留言(15)

  • 最新
  • 精选
  • 闫飞
    DDoS攻击从产生攻击对象的协议的角度来看可以分为L4攻击和L7攻击,前者其实是针对TCP状态机的恶意hack,比如攻击三次握手机制的SYN Flood和攻击四次握手的TIME WAIT2等,这些方面的防范超出了HTTPS的范畴,需要特殊的安全网管来过滤,清洗和识别。

    作者回复: great。

    2019-08-19
    4
    27
  • 许童童
    HTTPS 为什么不能防御 DDoS、代码注入等攻击呢? DDoS、代码注入本身是遵循HTTPS协议的,它的攻击面不在HTTPS协议层,而在其它层面,所以HTTPS 不能防御此类攻击。 你还知道有哪些手段能够抵御网络攻击吗? 我还知道有CSP内容安全策略,CSRF防御,SYN cookie,流速控制等手段。

    作者回复: great。

    2019-08-19
    17
  • 我行我素
    https是做数据加密防止泄露,而ddos是以数量取胜(伪装成正常请求),

    作者回复: good。

    2019-08-19
    8
  • Maske
    https是对数据的进行加密传输,并且保证了数据的有效性,而不关心数据本身是什么,所以不能防止sql注入。DDos本身也是符合http规范的请求,所以https也无法将其识别为攻击。

    作者回复: 说的对。

    2020-06-27
    5
  • 佳佳大魔王
    问题一,我觉得是因为https只提供了对通信过程中的数据进行加密,如果黑客用大量资源充当客户端,对服务器进行大量请求,https是无法阻止的,代码注入也是一样

    作者回复: 对。

    2019-08-19
    4
  • snake
    那能否用waf来做https流量的入侵检测和防御呢?https的密文的,waf应该看不到吧?

    作者回复: 当然可以。 waf是内容检测,在服务器端必然要看到解密后的数据,比如ModSecurity就是Nginx的一个模块,嵌入了Nginx的处理流程,在接入https流量之后才能起作用。

    2020-06-23
    2
  • 二星球
    老师好,向您请教最近遇到的一个问题,APP应用通过http长链接向后台发送请求,中间有几个代理服务器,偶尔发现app发送的请求返回的状态码是正常的200,但是没有返回值,没有出错,后台也没有收到请求,这是什么原因,该如何解决呢?

    作者回复: 如果链路中有多个代理,那么长连接实际上连的是第一个代理服务器,而不是源服务器。 所以可能是中间的代理出了问题,给了你错误的响应。 看看能否在代理上加上日志,看看请求的处理过程。

    2019-08-19
    2
  • Aaron
    这节课内容很重要呀,但有种只讲了冰山一角的感觉。老师能不能自己系统回答一下『你还知道有哪些手段能够抵御网络攻击吗?』呢?好期待官方答案~

    作者回复: web安全的话题太大,我也不是这方面的专家,只是比较熟悉waf,其他的手段真就不太了解了。 不过我觉得,用waf就可以抵御八成的web攻击了。

    2020-06-02
    1
  • dog_brother
    项目中使用过基于业务的规则引擎,完全自研的;waf应该是规则引擎比较典型的应用了。

    作者回复: 对,waf本质上就是各种各样的规则。

    2021-05-06
  • fakership
    老师讲的太干货了 还想着2d看完。。 高估了。。

    作者回复: 学习的事情急不得,尤其是关于网络协议的,慢慢看,有可能的话自己做个心得笔记。

    2020-08-16
收起评论
显示
设置
留言
15
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部