sqlilabs靶场记录双服务器(六)
sqlilabs靶场记录双服务器(六)
搭建双服务器Tomcat和Apache
由于第29,30,31关需要双服务器环境,即Tomcat和Apache。这里以win2003为环境,利用JSP和PHPStudy来搭建服务器,由于我们已经在PHPStudy上搭建好了Apache服务器,现在只需要在JSP上搭建Tomcat即可。
首先下载JSP
https://www.xp.cn/download.html
sqli-labs文件夹下面还有tomcat文件
解压放到JSPstudy的www目录下
需要改文件
改两处,改成自己的配置,接着改30和31关
less-29基于错误GET双服务器单引号字符型注入
服务器双层架构
服务器端有两个部分,第一部分是Tomcat为引擎的jsp型服务器,第二部分为apache为引擎的php服务器,真正提供web服务的是php服务器
工作流程为:client访问服务器,能直接访问到Tomcat服务器,然后tomcat服务器在向Apache服务器请求数据,数据返回路径刚好相反
参数解析问题
index.php?id=1&id=2,这个时候是回显id=1还是id=2呢? |
index.jsp?id=1&id=2,针对这关的两层结构,客户端请求首先过 tomcat,tomcat 解析第一个参数,接下来 |
注入测试
http://10.184.39.243:8080/sqlilabs/Less-29/?id=1 回显正常 |
点击返回
从跳转到.jsp页面可以看出来是 Tomcat 服务器,一般来说,现在没有拿 jsp 写后台的了,大都用 php ,我们果断猜测是双服务器。
注入点测试
http://10.184.39.243:8080/sqlilabs/Less-29/?id=1&id=1 回显正常 |
http://10.184.39.243:8080/sqlilabs/Less-29/?id=1&id=1' |
有正确回显和错误回显,单引号无小括号,剩下的事就好办了,可以发现没有其他任何的过滤条件,是最简单的注入之一。
less-30基于错误GET双服务器双引号字符型盲注
有正确回显但无错误回显,所以可以盲注,延时注入,联合注入
less-31基于错误GET双服务器双引号小括号字符型注入
和前面的做法一样,只不过这里是小括号+双引号闭合罢了
从以上三关中,我们主要学习到的是不同服务器对于参数的不同处理,HPP 的应用有
很多,不仅仅是我们上述列出过 WAF 一个方面,还有可以执行重复操作,可以执行非法操
作等。同时针对 WAF 的绕过,我们这里也仅仅是抛砖引玉,后续的很多的有关 HPP 的方法
需要共同去研究。这也是一个新的方向。
评论
ValineDisqus