开始挑战第十八关(Cookie Injection-Error Based- string) 前言: 通常开发人员在开发过程中会特别注意到防止恶意用户进行恶意的注入操作,因此会对传入的参数进行适当的过滤,但是很多时候,由于个人对安全技术了解的不同,有些开发人员只会对get,post这种方式提交的数据进行参数过滤,往往会忽略掉cookie 同样的先来看看源代码,这里先会判断有没有cookie,若无,则先查询出来后在设置Cookie 对于cookie又存在两种情况: (1)第一种在登录退出后没有对c…
开始挑战第二十一关(Cookie Injection- Error Based- complex - string) 和二十二关(Cookie Injection- Error Based- Double Quotes - string) 这关其实和二十关是一样的,只是这关的cookie采用了base64加密,和单引号括号 来吧,开搞吧,利用单引号进行报错,注意需要利用base64进行转换下,可以利用hackbar的,也可以用一些转换工具 已经报错,错误信息就不说明了,相信到二十一关这些都是应该…
开始挑战第十八关(Header Injection- Referer- Error Based- string) 先来说下HTTP Referer: HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器以此可以获得一些客户端信息.同理,还是先输入一组随机的用户名密码 同样的先来看下源代码,这里都做了备注: 好了,同样的uname,passwd都被函数过滤,只能从其他方式去入手,看登录看看 输入正…
这个和less18一样,都是基于header的注入 这次的字段是referer Referer: ' AND UpdateXml(1,concat(0x7e,database(),0x7e),1),1)# Referer: 123' AND UpdateXml(1,concat(0x7e,(select table_name from information_schema.tables where table_schema='security' limit 0,1),0x7e),1),1)# R…
开始挑战第十三关(Double Injection- String- with twist) 访问地址,输入报错语句 '  ''  ')  ") - 等使其报错 分析报错信息 很明显是需要采用单引号和括号进行闭合,开始利用and来测试 猜解字段名,这里是2个字段 union select联合查询,加入使其报错 靠,又没有报错,那我们就用报错语句来测试吧,这次我使用extractvalue()函数玩玩 显示版本,数据库 获取用户名 获取字段名 获取数据…
这章,可能我总结开会比较长,图比较多,因为,我在做了一半,走进了一个死胡同,脑子,一下子没想开到底为啥.... 然后我自己想了好长时间也没想开,我也不想直接就去看源码,所以就先去百度了一下,结果一下子,我又跳进另一个坑了....正如这章的顶图,MySQL语句,我看人家正好用这个分析,为什么大家在构造语句的时候要用这个SQL语句,我自己想了想,我好像没总结这么细,所以就趁着这章,把那个SQL语句的在MySQL里的用法,写写,总结总结,然后再打第四关. 我先上一个我将用到的命令图,大家先看一下,防止…
盲注查询 盲注其实就是没有回显,不能直观地得到结果来调整注入数据,只能通过其他方式来得到是否注入成功,主要是利用了一些数据库内置函数来达到的 布尔盲注 布尔很明显Ture跟Fales,也就是说它只会根据你的注入信息返回Ture跟Fales 其实登录处的注入就是布尔型的,万能密码就是构造一个永真的查询,比如下面的 select user from test where passwd=‘{injuct}’: #构造永真,即令where的条件用于为真 select user from test whe…
insert注入的技巧在于如何在一个字段值内构造闭合. insert 报错注入 演示案例所用的表: MariaDB [mysql]> desc test; +--------+----------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------+----------+------+-----+---------+-------+ | id | int(10) | Y…
开始挑战第二十六关(Trick with comments and space) 0x1看看源代码 (1)过滤了#  or and  /**/  /  \ ,通过判断也过滤了空格 (2)这样一来只能看看其他方式绕过吧,网上找了些资料,对于绕过空格限制有大把的方式对于空格,有较多的方法:%09 TAB键(水平).%0a 新建一行.%0c 新的一页.%0d return功能.%0b TAB键(垂直).%a0 空格,可惜老天对我太不眷顾了,个个都用不了,最后查到说是因为window下apache解析的…
在我一系列常规的测试后发现,第五关和第六关,是属于报错注入的关卡,两关的区别是一个是单引号一个是双引号...当然我是看了源码的.... 基于报错注入的方法,我早就忘的差不多了,,,我记的我最后一次基于报错注入是在玩网络攻防平台第几关来着得,那个关卡时基于报错注入的,我当时还特地查了好多资料,学习了学习报错注入,当然在那段时间时,我看到我一个认为不错的团队开始收核心成员了,我就发了一份申请,果不其然,我被刷下来了,,,毕竟我还是菜么..... 当时申请的时候,我就想过,团队不养闲人,毕竟菜,所以菜…