Sql盲注基本函数回顾 | Dayu's Blog

Sql盲注基本函数回顾

  • CONCAT(str1,str2,…)
    返回来自于参数连结的字符串。如果任何参数是NULL,返回NULL。可以有超过2个的参数。一个数字参数被变换为等价的字符串形式。

  • ASCII(str)
    返回字符串str的最左面字符的ASCII代码值。如果str是空字符串,返回0。如果str是NULL,返回NULL。

  • ORD(str)
    ORD()函数同ascii(),将字符转为ascii值

  • SUBSTR(str,pos)
    就是从pos开始的位置,一直截取到最后。
    SUBSTR(str,pos,len)
    pos开始的位置,截取len个字符(空白也算字符)。

  • mid()
    截取字符串一部分
    MID(column_name,start,length)
    column_name:必需.要提取字符的字段
    start:必需.规定开始位置(起始值是 1)
    length:可选.要返回的字符数.如果省略,则 MID() 函数返回剩余文本
    MID(DATABASE(),1,1)>’a’,查看数据库名第一位,MID(DATABASE(),2,1)查看数据库名第二位,依次查看各位字符
    MID((sql语句),1,1)>’a’此处column_name参数可以为sql语句,可自行构造sql语句进行注入

  • LEFT(str,len)
    返回字符串str的最左面len个字符。

  • RIGHT(str,len)
    返回字符串str的最右面len个字符。

  • ISNULL(expr) 的用法:
    如expr 为null,那么isnull() 的返回值为 1,否则返回值为 0

  • IFNULL(expr1,expr2)的用法:
    假如expr1不为NULL,则IFNULL()的返回值为expr1; 否则其返回值为expr2

  • NULLIF(expr1,expr2) 的用法:
    如果expr1=expr2成立,那么返回值为NULL,否则返回值为expr1

  • regexp正则注入
    用法介绍:select user() regexp ‘^[a-z]’;
    Explain:正则表达式的用法,user()结果为root,regexp为匹配root的正则表达式。
    第二位可以用select user() regexp ‘^ro’来进行。
    当正确的时候显示结果为1,不正确的时候显示结果为0。