一、什么是WAF

  1. WAF全称为 ( Web Application Firewall ) 网络应用防火墙,是一种HTTP入侵检测和防御系统
  2. 传统的防火墙,处于网络分层的第三层或者第四层,用来过滤特定的ip地址和端口,而WAF则处于第七层应用层,可以看到应用层的报文内容。用来实现更加负责深入和细致的审核和过滤。

二、WAF能干啥

  1. IP 黑名单和白名单,拒绝黑名单上地址的访问,或者只允许白名单上的用户访问;
  2. URI 黑名单和白名单,与 IP 黑白名单类似,允许或禁止对某些 URI 的访问;
  3. 防护 DDoS 攻击,对特定的 IP 地址限连限速;
  4. 过滤请求报文,防御“代码注入”攻击;过滤响应报文,防御敏感信息外泄;
  5. 审计日志,记录所有检测到的入侵操作

三、WAF的工作原理

它就像是平时编写程序时必须要做的函数入口参数检查,拿到 HTTP 请求、响应报文,用字符串处理函数看看有没有关键字、敏感词,或者用正则表达式做一下模式匹配,命中了规则就执行对应的动作,比如返回 403/404。
其实使用Apache、Nginx、OpenResty,可以自己改改配置文件,写点 JS 或者 Lua 代码,就能够实现基本的 WAF 功能。

NginxIP黑名单功能举例


map $remote_addr $blocked {default       0;"1.2.3.4"     1;"5.6.7.8"     1;
}if ($blocked) {return 403 "you are blocked.";
}

四、如何使用WAF

  1. 从云服务厂商购买使用
  2. 部署开源的产品 ModSecurity

WAF(网络应用防火墙)是什么相关推荐

  1. WAF应用防火墙的功能

    截取网络通信中的HTTP流量,再通过其过滤规则进行分析和拦截,这里要提醒的是,其防护效果取决与对应用逻辑的理解,与应用逻辑结合越是紧密,防护效果越好,WAF应用防火墙是应用层面安全防护的首道防线. 应 ...

  2. 任意文件上传之绕过云waf+本地防火墙双重防护

    0x01 waf拦截 在打某市 Hvv 第一天就找到一个文件上传的点,经过测试,可以直接任意文件上传,没有什么道理. 直接尝试上传 Php 文件,被 waf 拦截了 不知道这是哪家的waf,知道的师傅 ...

  3. waf应用防火墙详解

    通过nginx配置文件抵御攻击 0x00 前言 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行.其特点是占有内存少,并 ...

  4. tamper绕WAF小结

    sqlmap有一些非常好的脚本,在如下的地址中你能够发现它们.使用svn检查 https://svn.sqlmap.org/sqlmap/trunk/sqlmap sqlmap-dev 事实上,脚本的 ...

  5. 国内网站安全测试6大步骤

    网站安全测试 目标: 1. 发现网络系统中存在的安全隐患和可能被入侵者利用的安全漏洞 2. 与黑客区别: · 渗透测试是经过授权的 · 可控制的.非破坏性的方法 3. 宏观上的分类: · 黑盒测试 不 ...

  6. 极客HTTP协议学习笔记破冰篇(1-7)

    极客HTTP协议学习笔记破冰篇(1-7) 前言 各篇章笔记链接 一.学习笔记 1.HTTP的前世今生 2.HTTP是什么 3.与HTTP相关的各种概念(上) 4.与HTTP相关的各种概念(下) 5.常 ...

  7. day08 系统篇端口扫描CDN服务负载均衡WAF防火墙

    前言 #知识点: 获取网络信息-服务厂商&网络架构 2.获取服务信息-应用协议&内网资产 3.获取阻碍信息-CDN&WAF&负载&防火墙 #详细点: CDN服务 ...

  8. 封神台 第二章 绕过WAF

    靶场链接 ​ https://hack.zkaq.cn ​ 一.查找有无sql注入点 1.首先找到可能存在sql注入的网页 2.利用and 1=1发现做了过滤..... 二.使用order by 查字 ...

  9. 防火墙迁移:提高安全弹性与可用性的5种方

    如果企业正在计划一次防火墙升级,或者正在向下一代防火墙迁移,获得的将不仅是更丰富的功能与更广泛的保护,还有查看整个安全架构的机会.后者确保了安全架构得以尽可能提高全部安全设备的价值与效率,同时最大程度 ...

最新文章

  1. 【工具软件】webstorm配置
  2. html取 输入框中的值,jquery获取input输入框中的值
  3. spring mvc DispatcherServlet详解之一---处理请求深入解析(续)
  4. NT系统DOS网络命令记录
  5. ArcGIS 10.7如何获取矢量多边形所有折点的坐标(平面坐标和经纬度坐标)?
  6. 每日一题(16)—— 声明和定义的区别
  7. 感谢OpenEIM的技术人员能够及时修补漏洞
  8. 第二次冲刺站立会议10
  9. Title函数--Matplotlib
  10. 使用mencoder或(ffm)将图片生成视频
  11. Android 支付宝 resultStatus=4000, result=, memo=系统繁忙,请稍后再试
  12. 娱乐而已,认真你就输了
  13. 小程序文章怎么导出来_微店小程序—小程序怎么搜索微信店铺
  14. 安装教程:PostgreSQL + PostGIS + pgAdmin
  15. 二阶边值问题的数值解matlab,《二阶常微分方程边值问题的数值解法》-毕业论文.doc...
  16. 基于Arduino IDE开发的LD3320语音识别模块
  17. OpenCV学习(二十三) :模板匹配:matchTemplate(),minMaxLoc()
  18. Canvas transform浅析
  19. h5微信f分享链接给对方获取对方手机号_微信生日贺卡链接制作
  20. 大工计算机学院博士答辩要求,大连理工大学博士毕业论文要求和发表

热门文章

  1. 20189220 余超《Linux内核原理与分析》第九周作业
  2. 服务器防火墙软件—iptables
  3. java.net.ConnectException: Connection refused: no further information【已解决】
  4. python vlookup_Python - 如何使用 Pandas 进行vLookup
  5. Chrome Autofill 删除规则
  6. 如何表示Unicode的字符?
  7. 【更新】MindFusion.WinForms Pack v2019.R1发布,改进Visio2013Exporter
  8. 503 service unavailable 错误怎么解决?503 service unavailable 错误的解决方法。
  9. Snort入侵检测系统实验
  10. Android中MotionEvent的来源和ViewRootImpl