您现在的位置: 主页 > 嵌入式操作系统 > Linux > Linux操作系统下PHP服务器安全配置技巧
本文所属标签:
为本文创立个标签吧:

Linux操作系统下PHP服务器安全配置技巧

来源:net 网络用户发布,如有版权联系网管删除 2018-08-20 

继续上传";exit;}?>文件上传上传文件:

这样的上传代码存在读取任意文件和执行命令的重大问题。下面的请求可以把/etc/passwd文档拷贝到web目录/usr/local/apache/htdocs/test(注意:这个目录必须nobody可写)下的attack.txt文件里:http://victim/test_5.php?upload=1&file=/etc/passwd&file_name=attack.txt然后可以用如下请求读取口令文件:http://victim/test/attack.txt攻击者可以把php文件拷贝成其它扩展名,泄漏脚本源代码。攻击者可以自定义form里file_name变量的值,上传覆盖任意有写权限的文件。攻击者还可以上传PHP脚本执行主机的命令。解决方法:PHP-4.0.3以后提供了is_uploaded_file和move_uploaded_file函数,可以检查操作的文件是否是用户上传的文件,从而避免把系统文件拷贝到web目录。使用$HTTP_POST_FILES数组来读取用户上传的文件变量。严格检查上传变量。比如不允许是php脚本文件。把PHP脚本操作限制在web目录可以避免程序员使用copy函数把系统文件拷贝到web目录。move_uploaded_file不受open_basedir的限制,所以不必修改php.ini里upload_tmp_dir的值。把PHP脚本用phpencode进行加密,避免由于copy操作泄漏源码。严格配置文件和目录的权限,只允许上传的目录能够让nobody用户可写。对于上传目录去掉PHP解释功能,可以通过修改httpd.conf实现:

php_flagengineoff#如果是php3换成php3_engineoff

重启apache,upload目录的php文件就不能被apache解释了,即使上传了php文件也没有问题,只能直接显示源码。



              查看评论 回复



嵌入式交流网主页 > 嵌入式操作系统 > Linux > Linux操作系统下PHP服务器安全配置技巧
 文件 目录 上传

"Linux操作系统下PHP服务器安全配置技巧"的相关文章

网站地图

围观()