2026最新sqli-labs靶场搭建教程,超详细
一、前言
练 SQL 注入前,先把这三个问题弄明白,你就知道为什么要搭这个靶场,也能少走很多弯路。
1.1 什么是 SQLi-Labs?
简单说,它是专门练SQL 注入的 “漏洞题库”—— 里面有 70 多关,每关对应一种 SQL 注入场景(比如数字型注入、字符型注入、盲注),还自带测试数据(比如用户表、密码表)。它不像真实网站那样藏着掖着,漏洞点很明确,新手能一步步试出 “怎么输入代码让数据库返回想要的数据”,不用怕操作错了搞坏真实数据。
1.2 为什么要装 SQLi-Labs?
对新手来说,它是最 “友好” 的 SQL 注入练习工具,核心原因有两个:一是能落地实操:看书本学 “SQL 注入原理” 总觉得抽象,但在 SQLi-Labs 里,你输个?id=1' or 1=1 #就能看到数据库返回所有用户,这种 “立竿见影” 的效果,比背理论记得牢;二是难度循序渐进:从第一关的简单数字注入,到后面的盲注、宽字节注入,难度慢慢升,不会一上来就卡壳。我当初学注入时,就是靠它从 “看不懂 Payload” 到 “能自己写简单注入代码”。
1.3 装完能用来做什么?
最核心的用途就是练会 SQL 注入的核心技巧:比如怎么判断注入点(输'看会不会报错)、怎么查数据库名(用union select)、怎么提权查管理员密码;还能搭配 Burp Suite 练抓包改参数,模拟真实渗透中 “通过注入拿到靶机权限” 的过程。等把 70 多关都过一遍,再看真实网站的 SQL 注入漏洞,就不会觉得陌生了。
二、搭建sqli-labs靶场
2.1 环境准备
我用的是 Windows Server 2016 虚拟机,如果你还没装,翻我之前的文章(往期链接)跟着装就行,不难。另外得先装好小皮面板(小皮面板的安装教学:https://blog.csdn.net/zbywlaq/article/details/159432903),因为 SQLi-Labs 需要 Apache 跑网页、MySQL 存数据,小皮能一键搞定这些环境,不用手动配。
2.2 下载并放置 sqli-labs文件
下载链接:
https://pan.baidu.com/s/1EqB4WPuKvYZoZYUw_srdrg?pwd=1212 # 提取码:1212
将下载的压缩包解压,得到 “sqli-labs” 文件夹;
把 “sqli-labs” 文件夹复制到小皮面板的网站根目录下,路径是你安装小皮的目录\phpstudy_pro\WWW(比如我装在 D 盘,路径就是D:\phpstudy_pro\WWW\DVWA)。

2.3 进入靶场
确保你的小皮面板的Apache和Mysql是出于启动的状态

这样就可以在浏览器输入你的url(127.0.0.1)+文件夹名(sqlilabs)称就可以看到首页了
http://127.0.0.1/sqlilabs/

2.4 踩坑解决
点首页的 “Setup/reset Database for labs” 创建数据库时,大概率会遇到一个报错:它告诉你在setup-db.php中第29行有一个错误,错误在mysql_connect()这个函数

那么就来看看在D:\phpstudy_pro\WWW\sqlilabs\sql-connections\setup-db.php文件中的第29行(记事本不方便看行,简单点,一行一行的往下数)就是这个函数

mysql_connect() 是 PHP 中用于建立与 MySQL 数据库服务器连接的函数。它的主要作用是创建一个 PHP 脚本与 MySQL 数据库之间的网络连接,以便后续执行 SQL 查询、插入、更新等操作。
2.5 修改数据库密码
数据库错误,那就是数据库连接没有配置好,在当前目录找到这个文件db-creds.inc

打开后可以看到这里有$dbuser和$dbpass数据库账号和密码的变量,我们需要修改它的值

什么?你不知道数据库密码?
来到小皮面板,找到数据库这个导航,然后点击修改密码就行了(默认情况也就是刚安装小皮面板的情况下,root的密码是未知的,你需要修改它),这里我修改为123456

2.6 报错验证
这时候再点 “Setup/reset Database for labs”,就能看到 “xxxx created successfully” 的提示,就会出现数据库创建成功的界面,

2.7 靶场验证
返回sqlilabs的主页,进入第一关

给了我们如下提示
Please input the ID as parameter with numeric value
# 请将该 ID 作为参数输入,其值应为数字形式。

在浏览器地址栏后面加?id=1,变成http://127.0.0.1/sqli-labs/Less-1/?id=1,回车后就能看到从数据库里查出来的 “Dumb” 账号和密码 —— 这就说明靶场搭好了,接下来就能练 SQL 注入了(比如怎么查所有账号密码、怎么爆表,后面再讲通关技巧)。

三、总结
其实搭 SQLi-Labs 不难,主要就是两个坑:文件别放错目录,还有把mysql_connect改成mysqli_connect。我当时自学的时候卡了半小时才发现函数的问题,现在把步骤写清楚,你跟着做,几分钟就能搞定,后面就能专心学习sql注入了。
四、🎯 网络安全学习资源推荐
觉得文章对你有帮助?想获取更多实战干货?
我们为你准备了一套 「从零到一的网络安全学习资料包」,包括:
- 🔥 红队攻防实战手册 - 内网渗透、漏洞利用、权限提升
- 📚 网络安全学习路线图 - 零基础入门到就业完整路径
- 💼 最新网络安全面试题 - 大厂真题+面试技巧
- 🛠️ 渗透测试工具包 - 常用工具+使用教程
- 🎯 靶场搭建全套方案 - DVWA、SQLi-Labs等实战环境
如何获取?
- 微信搜索公众号:
[智榜样网络安全学习中心] - 关注后添加老师微信
- 即可免费领取全套学习资料
💡 适合人群:网络安全初学者、转行人员、在校学生、想要提升实战能力的从业者
我们在网络安全培训领域深耕多年,专注红蓝对抗实战与就业指导,帮助数百名学员成功入行!
更多推荐



所有评论(0)