偶然发现两个很小的网站居然有WAF,一些常规的入侵手法都会被拦截,不禁要感叹,WAF真是个好东西。接下来一起认识下这个好东西,看看有怎样的拦截效果,以及在正式使用的时候需要注意的点。

Web应用防护系统(也称为:网站应用级入侵防御系统。

英文:Web Application Firewall,简称:WAF)。

是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品。

WAF在审计、访问控制和应用加固方面能够为网站提供较好的保护。在看一个网站能不能被入侵的时候,通常会先从网站本身下手,采用sql注入、文件上传以及密码暴力破解等手法,而WAF对这些手法都有所防备,所以入侵的难度增加了不少。

判断网站有WAF的简单方法

打开网站,使用浏览器的开发者工具或者是代理抓包,通过查看网址请求的数据可以判断是否有WAF。

在响应的headers头文件里可以看到一个明显的标志。

暴力破解密码被拦截

第一个网站,猜到了管理员后台登录的地址,而且登录也没有加验证码,在尝试了几个常规的弱口令没有成功,准备用密码字典来跑跑看。暴力破解的时候需要重复请求登录验证地址,频繁的请求被waf拦截,使得暴力破解无法顺利开展。

文件上传被拦截

第二个网站,找到了一处可以上传头像的地方,准备通过上传功能测试是否可以上传个小马到服务器上。打开BURPSUITE,启用本地代理,浏览器设置本地代理,浏览器的请求可以在代理上拦截到,然后尝试修改上传到参数达到将小马上传到服务器上的目的。

将数据包里的filename="a.png"改为filename="a.aspx",然后发送请求,从返回的结果来看,本次上传被WAF拦截了。经过测试,这个网站WAF主要是根据上传文件的后缀名进行拦截,而没有对上传内容和上传文件的MIME类型进行拦截。上传脚本文件的操作是高风险的操作,能够拦截到高风险的操作,已经可以了。

SQL注入

在这两个网站上都没有找到SQL注入的点,但毫无疑问的是,只要请求参数里包含了SQL注入语句,都会被拦截。

上面的三类高风险操作能被拦截,使得网站的安全性有来大大的提升,有些时候虽然网站应用程序本身有一些漏洞,好在前面有一层WAF,这些漏洞也不会威胁到服务器端的安全。因此,有条件的情况下,尽量给自己的web应用买这个防护服务。

另外再说一下WAF的局限性。

WAF不是万能保险的,基于策略的防护方式都有相应的绕过手法,比如上面写到的文件上传,在知道是根据文件的后缀名进行拦截的时候,可以使用相应的手法进行绕过,也就是说仍然可以将上传文件的后缀名改成可执行脚本的后缀名然后成功上传,在这种情况下,如果应用程序本身有漏洞,依然可以将木马上传到服务器,对服务器形成威胁。

WAF是一种安全防护产品,是个好东西,但只能起到防护作用,而且是被动防御的那种,应用程序本身的漏洞以及安全配置的问题还是要注意的。千万不要以为有了安全防护产品就万无一失了。

WAF果真是个好东西相关推荐

  1. web防火墙和waf防火墙的区别

    首先说一下这两种防火墙很容易被很多老鸟或小白混淆,但web防火墙和waf防火墙不属于一个东西,真的,看我下面的介绍. Web应用防火墙,属于硬件级别防火墙 对网站流量进行恶意特征识别及防护,将正常.安 ...

  2. web防火墙和waf防火墙的区别和选择

    首先说下被很多老鸟或小白混要的一些说法,web防火墙和waf防火墙不属于一个东西.真的,看我解释. Web应用防火墙,属于硬件级别防火墙. 对网站流量进行恶意特征识别及防护,将正常.安全的流量回源到服 ...

  3. 高性能零售IT系统的建设03-监控体系化的重要不亚于开发的投入

    系统监控的重要性不容小觑 前面我以两个"重口味"的例子给大家看到了这么一件事: 这是很基础的问题,属于1+1=2的问题: 可是在一个百万行代码的系统中.达百人团队协同开发时它必然会 ...

  4. [原谅杯]Web部分WP

    @author:Y4tacker @time:2020/11/23 18:19 前言 看到群里又那么多小伙伴想要一份WP,那就写一下吧,其实在我的网站上也有,只是比较简陋,这里比较详细的写一份吧,希望 ...

  5. WAF是什么东西?!--- 1 waf的功能和用到的技术原理介绍

    waf(Web应用防护系统) WAF很受欢迎,它是保护Web应用程序的复杂解决方案,涵盖了所有防护任务. Web应用程序开发人员可以在某些安全方面依赖WAF的原因. 尽管如此,WAF是可已被绕过的. ...

  6. WAF是什么东西?!--- 3 waf的绕过

    想法:waf的绕过是门学问,记得sqlmap的使用有提到绕过waf的概念,输入数据的时候也要考虑到waf的影响,尤其是写一句话木马的时候,有的时候需要多次的嵌套来绕过waf的正则检测.听安全大佬们说, ...

  7. 深入理解SQL注入绕过WAF和过滤机制

    知己知彼,百战不殆 --孙子兵法 [目录] 0x0 前言 0x1 WAF的常见特征 0x2 绕过WAF的方法 0x3 SQLi Filter的实现及Evasion 0x4 延伸及测试向量示例 0x5 ...

  8. 全方位绕过软WAF攻略

    0×00 前言 现在软waf较为多,就在今年夏天苦逼挖洞的日子里经常遇到360主机卫士,安全狗,云锁之类的软waf进行拦截,经常碰到如下拦截提示: 看到以上三个拦截提示就让人头疼不已,欲罢不能. so ...

  9. 阿里云高可用架构之“CDN+WAF+SLB+ECS

    [企业实战]:阿里云高可用架构之"CDN+WAF+SLB+ECS"  相信有些朋友看过笔者之前写的这篇文章 <如何为企业快速设计高可用的阿里云架构>,并对阿里云的一些服 ...

最新文章

  1. Java基础篇:Java集合
  2. 2.Spring初学
  3. 设置自增递增零开始_MySQL中如何设置自动递增id主键重新计数从1开始?
  4. java string string_深入理解Java:String
  5. python处理列表中字典_Python列表嵌套字典的时候,如果要删除列表中其中一个字典要如何操作...
  6. go语言mysql框架_超级详细:Go语言框架Gin和Gorm实现一个完整的待办事项微服务...
  7. python文件替换一行_python自动化替换文件中每一行中的特有字符串
  8. svn打分支与分支合并回主干
  9. ViewPager使用记录2——展示动态数据
  10. js新建一个日期对象,指定日期值. 兼容IE8以下
  11. HDU 4009 不定根最小树形图
  12. attachEvent和addEventListener详解
  13. mysql关于连接查询
  14. POJ 2686 Traveling by Stagecoach
  15. 数据运营是什么?该如何做?
  16. 每日LeetCode一道题————有效的数独
  17. R语言3.6版本安装ggplot2报错解决方法
  18. 如何加快计算机绘图的速度,在Auto CAD下如何能提高绘图速度
  19. 宝塔Nginx编译安装headers_more模块
  20. 申请Google Play开发者账号

热门文章

  1. Django Mysql SET SESSION TRANSACTION ISOLATION LEVEL READ COMMITTED
  2. BZOJ3832 [Poi2014]Rally 【拓扑序 + 堆】
  3. 借用的对vue-cli配置对解析
  4. RxJava系列4(过滤操作符)
  5. 2017-2018-1 20162306 实验五实验报告
  6. Bootstrap 与 Jquery validate 结合使用——简单实现
  7. VNC轻松连接远程Linux桌面
  8. css制作漂亮彩带导航条菜单
  9. 常见python面试题总结
  10. 【总结整理】开发说不能做怎么办