0x03 拓展
这里有一个地方需要注意的是需要写入到绝对路径,而在php环境下有许多种得知绝对路径的方法,以下就简单拓展几种
0x03.1 phpinfo页面
这里是之前在复现帝国cms的getshell漏洞时所需要用到绝对路径写入sql语句,这里我先打出了phpinfo界面
F12查看源代码然后搜索DOCUMENT ROOT得知写入的绝对路径
0x03.2 web报错信息
web报错信息:可以通过各种fuzz尝试让目标报错,也有可能爆出绝对路径
0x03.3 一些集成的web框架
如果目标站点是利用phpstudy、LAMPP等之类搭建的,可以通过查看数据库路径再拆解web路径
show variables like '%datadir%';
0x03.4 利用select load_file() 读取文件找到web路径
可以尝试/etc/passwd,apache|nginx|httpd log之类的文件
Trick:如何判断目录是否存在,往往确定了/var/www/html目录,但是还有一层目录不能 确定,可以采用目标域名+常用的网站根目录的方式进行爆破,当使用select 'test' into outfile '/var/www/$fuzz$/shell.php';
时目录fuzzfuzz不存在将会报错
Can't create/write to file '/var/www/html/666.txt' (Errcode: 2);
如果存在但是目录写不进去将返回(Errcode: 13);如果使用的
load data infile "/etc/passwd" into table test;
该语句执行后将也会显示文件是否存在,有权限能否写等信息。
0x03.5 其他方法
1.查看数据库表内容获取 有一些cms会保存网站配置文件 或者路径
2.进入后台
3.百度出错信息 zoomeye shadon 搜索error warning
4. @@datadir参数看mysql路径 反猜绝对路径