• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
京亟
很多时候,我们以为面前是大海、是沟壑、是深渊,但是当你越过去回头再看的时候,那不过是溪流、是台阶、是浅滩。 联系方式:jinqiqaq@foxmail.com
博客园    首页    新随笔    联系   管理    订阅  订阅

sqli-labs(六)

第十一关:

这关是一个登陆口,也是一个sql注入的漏洞,也就是常说的万能密码。

在输入框账号密码种分别输入 1'  和1'  页面会报错。

后台使用的单引符号进行的拼接。账号输入1' or '1'='1   密码输入 1' or '1'='1

其实输入任意账号  密码输入1' or '1'='1也可以进去。

这关是考验报错注入,其实我个人感觉应该是有盲注的,但是我使用1' or ascii(substr((select user()),1,1)>64 #  注入时会报错,目前不知道是什么原因。(补充:后来发现是可以盲注的,这里的语句写错了,少了一个右括号,应该是1' or ascii(substr((select user()),1,1))>64 #     !!!! 好吧 ,手工就是容易出错)

这里还是先使用报错注入吧:

这里先介绍一下报错函数extractvalue(),在hackbar种输入输入如下

uname=1&passwd=1' and extractvalue(1,concat(0x7e,(select schema_name from information_schema.schemata  limit 0,1))) #&submit=Submit

 

-------------------------------------------------------------------------------------------------------------分割线------------------------------------------------------------------------------------------

上面说了本来想用盲注的,但是总是不成功。于是我就想文件中的报错语句注释后使用sqlmap跑了一次(这个时候应该是不存在上面所说的报错注入了)

 

 使用sqlmap跑了一次,发现还是能抛出注入漏洞,如下图:

好吧!联合注入,第一关的类容。。。。。说明我们还是得灵活运用才行啊。。。

如下图:查询得信息会在用户信息中显示出来

 

第十二关:

输入' 和" 页面都没有任何变化,这里有点意思的是如果后台是'''(三个单引号),sql执行会报错,但如果是"""(三个双引号),sql执行却不会报错。如下图

 

所以这个时候我们最好输入'"(一个单元符号一个双引符号),来让程序报错从而判断后来sql是怎么进行拼凑的(如果有报错信息的话)

可以看到这里应该使用双引符号,然后再加上括号的形式。

后面就好办了,post数据输入uname=1") or 1=1 #&passwd=1&submit=Submit

成功登陆,后面的操作就和十一关一样了

 

posted @ 2018-08-25 12:31  京亟QAQ  阅读(424)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3