SQL注入-常用函数和语句


前言

SQL的函数很多,这里简单介绍一下在SQL注入中比较常用到的一些函数,如果你SQL学的不是很好,又想练一练SQL手工注入的话,可以优先学习这些函数和语句。


0x01 常用函数

  1. system_user() 系统用户名
  2. concat_ws()含有分隔符的链接字符串
  3. user() 用户名
  4. group_concat() 连接所有字符串并逗号分割
  5. database() 数据库名
  6. into outfile()写文件(有配置的限制)

##secure-file-priv参数是用来限制LOAD DATA, SELECT … OUTFILE, and LOAD_FILE()传到哪个指定目录的。 具体配置方法,请参考:

  1. version() 数据库版本
  2. load_file()读取文件
  3. @@datadir 数据库路径
  4. ascii() 字符串的ascii代码
  5. @@basedir 数据库安装路径
  6. ord() 返回字符串第一个的ascii码
  7. @@version_compile_os 操作系统
  8. mid() 返回字符串的一部分
  9. count() 返回结果的数量
  10. substr() 返回字符串的一部分
  11. concat()没有分隔符的链接字符串
  12. left() 返回字符串左边的几个字符
  13. floor()返回小于或等于X的最大整数
  14. rand() 返回0-1的随机数
  15. sleep() 让此语句运行几秒钟
  16. if() 三个参数,条件,两种不同的结果 if(1>2,2,3)
  17. char() 返回ascii码对应的字符串
  18. strcmp() 比较两个字符串ascii值的大小(大小写不敏感)
  19. ifnull() 如果参数1不为null 返回1,否则返回参数值2
  20. exp()返回e的X次方

0x02 常用语句

    查库
select schema_name from imformation_schema.schemata;
    查表
select schema_table from information_schema.tables where schema_name=security;
    查字段
select colunm_name from information_schema.colunms where table_name=users and table_schema=security;
    查数据
select * from security.users;

总结

SQL手注想要能熟练使用,除了理解函数的作用,重要的还是要多练。

经验分享 程序员 微信小程序 职场和发展