PlanetGallery是一个商业PHP脚本,用于发布图库、显示图片描述等。 PlanetGallery在匹配上传文件的名字时存在漏洞,远程攻击者可能利用此漏洞上传可执行的脚本文件从而在服务器上执行任意命令。 PlanetGallery的admin/gallery_admin.php文件中存在错误的正则表达式: 193 $allow_file_types = \'\'gif|jpg|jpeg|png|bmp\'\'; [...] 197 if (preg_match(\'\'#\.\'\'.$allow_file_types.\'\'?#i\'\', $_FILES[\'\'grafik\'\'][\'\'name\'\'][$i])) { [...] 每个$_FILES[\'\'grafik\'\'][\'\'name\'\'][$i]变量都包含有上传文件的文件名。仅带有$allow_file_types中所提供的文件名扩展的图形是允许的,但正则表达式还匹配了类似于example.png.php的文件,Webserver将这类文件解释为PHP脚本。这就允许攻击者上传并执行任意PHP脚本。
PlanetGallery是一个商业PHP脚本,用于发布图库、显示图片描述等。 PlanetGallery在匹配上传文件的名字时存在漏洞,远程攻击者可能利用此漏洞上传可执行的脚本文件从而在服务器上执行任意命令。 PlanetGallery的admin/gallery_admin.php文件中存在错误的正则表达式: 193 $allow_file_types = \'\'gif|jpg|jpeg|png|bmp\'\'; [...] 197 if (preg_match(\'\'#\.\'\'.$allow_file_types.\'\'?#i\'\', $_FILES[\'\'grafik\'\'][\'\'name\'\'][$i])) { [...] 每个$_FILES[\'\'grafik\'\'][\'\'name\'\'][$i]变量都包含有上传文件的文件名。仅带有$allow_file_types中所提供的文件名扩展的图形是允许的,但正则表达式还匹配了类似于example.png.php的文件,Webserver将这类文件解释为PHP脚本。这就允许攻击者上传并执行任意PHP脚本。