第十三关:

这关也是一个登陆口,和上关所说的一样,先使用'"试一下,让程序报错然后判断后台的sql语句

可以看到后台sql大概是 where name = ('$name')...  这样的

post信息中输入uname=1') or '1'='1' #&passwd=1&submit=Submit  可以成功进入

但是没有显示账号密码之类的,所以不能使用上一关的联表查询。尝试使用上关的报错查询试试,输入

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

能成功报错出数据库名!但是这里显示不全,可以不使用group_concat这个函数,利用limit一行一行的查询

其实这关主要考察的是双查询注入(floor的报错查询),但是这里可以使用extractvalue进行报错,那他的我就不继续下去了。

第十四关:

这关和第十三关是类似的,只是将')变成了"而已,至于是怎么判断的还是使用的'"。

这里还补充一句,登录框的地方很多时候都没有报错信息,那么怎么判断后台的sql拼凑方式呢? 目前我的办法是将这些比如1' or '1'='1' #  ;          1" or "1"="1" # ;        1') or '1'='1' #  ; 1")or "1"="1" # 等等做成一个字典,然后进行fuzz。

第十五关:

好吧,上面刚说面没有报错的情况下应该怎么办,这关就遇到了!(说实话,我写上面那段话的时候是真的没有看这关的内容)

我刚看到这题的时候还是直接输入的'",结果发现没有报错信息,这个时候就无法通过报错直接判断后台的拼接方式了。

使用上面fuzz的方式是可以判断的,但是这里我就直接看后台的实现吧

发现后台是直接用的单引符号,这里也不会登陆成功后的账号密码,所以只能使用盲注了。

我记得我之前在第十一关的时候就尝试了盲注的,当时没成功,这里的情况实际上是和第十一关一模一样的,后台网上查了下才发现,盲注时应该是

or (ascii(substr((select database()) ,1,1))) >64
而不能是 or ascii(substr((select database()) ,1,1)) >64

post 输入uname=1' or  (ascii(substr((user()),1,1)))>64 #&passwd=1&submit=Submit  能登陆成功

输入uname=1' or  (ascii(substr((user()),1,1)))>200 #&passwd=1&submit=Submit

登陆失败,后面的就不继续了,利用二分法一个字符一个字符的判断即可。

第十六关:

和第十五关类似,只是将单引符号改为了双引符号进行拼凑。怎么判断后台的拼凑方式? fuzz!!

sqli-labs(七)——登陆处sql注入的更多相关文章

  1. [代码审计]云优cms V 1.1.2前台多处sql注入,任意文件删除修复绕过至getshell

    0X00 总体简介 云优CMS于2017年9月上线全新版本,二级域名分站,内容分站独立,七牛云存储,自定义字段,自定义表单,自定义栏目权限,自定义管理权限等众多功能深受用户青睐,上线短短3个月,下载次 ...

  2. ThinkCMF X2.2.2多处SQL注入漏洞分析

       1.     漏洞描述 ThinkCMF是一款基于ThinkPHP+MySQL开发的中文内容管理框架,其中X系列基于ThinkPHP 3.2.3开发,最后更新到2.2.2版本.最近刚好在渗透测试 ...

  3. sqli-labs(八)——修改密码处sql注入+http头sql注入

    第17关: 这是一个重置密码的功能存在sqk注入,尝试账号密码都输入'",发现只会显示登陆失败,没有报错信息. 这个时候先推测一下后台的sql形式大概应该是: update users se ...

  4. Vtiger CRM 几处SQL注入漏洞分析,测试工程师可借鉴

    本文由云+社区发表 0x00 前言 干白盒审计有小半年了,大部分是业务上的代码,逻辑的复杂度和功能模块结构都比较简单,干久了收获也就一般,有机会接触一个成熟的产品(vtiger CRM)进行白盒审计, ...

  5. modSecurity规则学习(七)——防止SQL注入

    1.数字型SQL注入 /opt/waf/owasp-modsecurity-crs/rules/REQUEST-942-APPLICATION-ATTACK-SQLI.conf"] [lin ...

  6. 登陆页面Sql注入(绕过)

    如图,看到这道题的时候发觉之前做过一个类似的手工注入: 不过这次手注会失败,后台过滤了sql语句里的一些东西,但我们并不知道过滤了什么 到这里我就基本上没辙了,不过查询了资料以后发现sqlmap可以对 ...

  7. S-CMS企业建站v3几处SQL注入

    0x01 前言 有段时间没有发文章了,主要没挖到比较有意思的漏洞点.然后看最近爆了很多关于S-CMS的漏洞,下载了源码简单挖了一下然后给大家分享一下. 0x02 目录 Wap_index.php sq ...

  8. 网页闯关游戏(riddle webgame)--SQL注入的潘多拉魔盒

    前言: 之前编写了一个网页闯关游戏(类似Riddle Game), 除了希望大家能够体验一下我的游戏外. 也愿意分享编写这个网页游戏过程中, 学到的一些知识. web开发初学者往往会忽视一些常见的漏洞 ...

  9. SQL注入浅水攻防

    啥是SQL注入(SQL Injection) 所谓SQL注入就是把SQL命令插入到表单的输入域或页面请求的查询字符串,欺骗服务器执行恶意的SQL命令.在某些表单中,用户输入的内容直接用来构造 (或影响 ...

随机推荐

  1. C和C指针小记(三)-整型,char,枚举

    1.C语言基本数据类型-整型 仅有4中机泵数据类型:整型,浮点型,指针,聚合类型(数组和结构) 整型家族:字符,短整型,整型,长整型.(都分有符号[singed]和无符号[unsinged]) 短整型 ...

  2. 2016年蓝桥杯省赛A组c++第1题

    /* 某君新认识一网友. 当问及年龄时,他的网友说: “我的年龄是个2位数,我比儿子大27岁, 如果把我的年龄的两位数字交换位置,刚好就是我儿子的年龄” 请你计算:网友的年龄一共有多少种可能情况? 提 ...

  3. day0311 深浅copy

    1.赋值运算 l1 = [1,2,3,['barry','alex']] l2 = l1 l1[0] = 111 print(l1) # [111, 2, 3, ['barry', 'alex']] ...

  4. [ovs] openvswitch 入门

    https://www.sdnlab.com/sdn-guide/14747.html http://sdnhub.cn/index.php/openv-switch-full-guide/ http ...

  5. 完美解决failed to open stream: HTTP request failed!(file_get_contents引起的)

    当使用php5自带的file_get_contents方法来获取远程文件的时候,有时候会出现file_get_contents(): failed to open stream: HTTP reque ...

  6. Delphi IdHTTP 设置cookie 和访问后读取Cookie 值

    procedure TForm1.btn1Click(Sender: TObject); var   IdHTTP: TIdHTTP;   mstrCookie: string;   Cookies ...

  7. LeetCode 349 Intersection of Two Arrays 解题报告

    题目要求 Given two arrays, write a function to compute their intersection. 题目分析及思路 给定两个数组,要求得到它们之中共同拥有的元 ...

  8. Js_protoType_原型

    1.什么是原型? 之前在网上看了好多,各种说法的都有,说的很晦涩,很难理解,我觉得用的多了就会慢慢理解它的意思,总之来说,每个对象都有一个指向它原型,也就是每个对象都有原型. 2.原型有什么用? 原型 ...

  9. Linux忘记密码常用的几种解决方法

    原文链接:https://www.cnblogs.com/vurtne-lu/p/6550590.html 一. lilo引导1. 在出现 lilo: 提示时键入 linux single Boot: ...

  10. js一次控制 多个style样式

    ]; m.style.cssText='color:green;background:cyan;' 控制多个过渡效果 m.style.transition='opacity 1s ease-in,ba ...