• SQL注入绕过技巧


    常用的绕过技巧

    1)双写

    2)编码

    3)大小写混写

    4)函数代替

    5)注释

    具体场景绕过

    下面记录一些具体检测场景的绕过

    0x00 过滤了空格

     空格在SQL语句中是起到分隔符的作用,为了能够让解析器能解析SQL语句,所以很重要

    如果被过滤了,尝试编码(%20)也没法通过的话,只能找替代了,下面列举一些替代

    1)TAB键(%09  %0b)

    2)换行(%0a)

    3)换页(%0c)

    4)回车(%0d)

    5)括号

    6)引号

    7)反引号

    0x01 过滤了逗号

    我们注入时,逗号的使用主要是截断函数、limit

    1)截断函数

    substr(database()  from 1 for 1)

    eg : select substr(user from 2 for 1) from users where user_id=1 limit 0,1;

    说明:从第二个字符开始,即角标1开始,截取1长度的字符串

    2)limit

    使用offset

    eg:select * from users where user_id=1 limit 1 offset 0;

    说明:从0角标开始,获取1行

    3)join

    我们可以把数据单个输出表,然后使用jion拼起来

    eg:union select 1,2,3,4,5

    --> union select * from ((select 1)a join (select 2)b join (select 3)c join (select 4)d join (select 5)e)

     注:内select需要有别名,不然会报错

     0x02 不使用原表字段进行查询

    eg:select group_concat(a.3) from (select 1,2,3 union select * from test) as a;

     

    (未完待续)

  • 相关阅读:
    左滑删除 --- 自定义组件(优化)
    扩展方法
    关于Windows服务中的一点小记录
    MySQL数据库方面
    反射初探
    FireDAC读取数据Delphi
    Delphi学习之 FireDAC
    向ComboBox列表框中添加Enum的全部数据
    怎样在VC中生成一个DLL
    AutoCAD 开发备注
  • 原文地址:https://www.cnblogs.com/alummox/p/9551480.html
Copyright © 2020-2023  润新知