通过代码我们可以看到 isset($dir) or $dir = '';涛涛电脑知识网
$dir=str_replace('../','',$dir);
if($dir!=''&&substr($dir,0,1)=='/') $dir=substr($dir,1);
$files_root = FR_ROOT.'/upfiles/'.$dir;
$files_path = $cfg['path'].'upfiles/'.$dir;
if(substr($files_path, -1) != '/') $files_path.= '/';
$dirs = $files = $imgfiles = array();
if(substr($files_root, -1) != '/') $files_root.= '/';
代码中 对 ../ 以及/进行了过滤,那么 我们用....//就可以绕过限制
涉及到的文件有:
files_imgfiles.php
files_htmlfiles.php
等。。
得到路径后,可以通过后台的SQL执行命令 导出木马到服务器上,拿到shell。
因为对官方服务器安全有危害 ,故不做演示了。
修复方案:
程序员懂的。。。