Sqlilabs Less 29-31 Protection with WAF

这几关都是过waf的,其实是前面加了个tomcat的站点,做了些过滤,但是实际是玩的还是apache里面的源码,结构也挺简单,就是前端JSP,过滤后跳转到后端的apache处理结果。tomcat的安装方法和这几关的用法在环境搭建里面有说明。

Less-29 Protection with WAF

手工注入

  • 试了下,不管是啥都报错。。。还是直接看源码去了。
  • 看源码的时候有个问题有点搞不懂。。。过滤传参都在apache里面的login.php中的,但是JSP重定向的是去apache中的index.php,不晓得网上为啥都说指定的是login.php。。
  • JSP中的两个函数,request.getParameter("id"),这个是取ID的值的;request.getQueryString()这个函数是将url中"?"后所有的传入的值都取出来。
  • index.jsp中的流程大概是,如果id是空,那就重定向到apache的index.php上;如果id非空,那就作判断,一,如果id参数不是整数,那就重定向到hacker.php上。二,如果id参数是整数,那就重定向到apache的index.php并且同时传入参数为qs。
  • 这里得用上HPP(HTTP Parameter Pollution),即http://10.1.1.201:8080/sqlilabs/Less-29/?id=1&id=2,在最后加入两个参数,JSP只会判断第一个参数是不是整数,到是将整段参数都输入apache后,apache会处理id=2的,根据这个原理,我们只需要在id=2后面构造语句即可。
  • 写的时候突然想到,要是我把jsp的重定向写到login.php会不会好玩一些,试试。。。
    结果发现并没有什么区别,还是和之前一样,再去看下源码,原来后台写的参数也会分割处理,没意思,没想明白要两个php的意义干啥。。。哎呀,我擦,突然知道了,login.php的作用,是为了没有tomcat的人来准备的,如果没有安装tomcat的同学,直接访问apache的login.php就可以得到类似的效果,作者牛逼。

函数分析

  • 都是些见过的函数,没啥分析,无

    • Less-30 Protection with WAF - Blind Injection witch double quotes

      手工注入

      • 和29关一样,变成了盲注了和双引号闭合, 这里就不多说了。

      函数分析


        • Less-31 Protection with WAF - Error Injection witch double quotes and parenthesis

          手工注入

          • 和29关一样,变成了双引号和括号闭合, 这里就不多说了。

          函数分析


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值