Apache+Proftpd虚拟主机的安全问题
来源:asp之家 发布时间:2009-08-18 10:42:00
1. proftpd建立hostuser/hostuser帐号,所有用户均映射到该帐号。
htdocs/hosts 目录属主也为hostuser
这样用户使用FTP上传的文件属性为hostuser(644 755)。
将FTP锁定用户在自己的主目录下。
apache以nobody运行(以独立apache用户更好),读hostuser的脚本文件。
对于要写入的目录uploads和cache,必须设定777,且循环设定其子目录。两个目录禁止脚本执行(.htaccess:php_flag engine off)。这样即使黑客上传webshell到这两个目录,也无法执行。
这样cache或uploads中的新文件的属主将是nobody
cache目录要限制对外访问。
这里存在一个问题,就是apache生成的文件和目录644和755,当proftpd以hostuser:hostuser运行时,用户是无法删除cache或uploads中的内容的。
解决方法:
(1) 在PHP程序中chmod文件和目录分别为666和777
以adodb为例,需修改adodb.inc.php文件1681行if (!mkdir($dir,0771)) 和adodb-csvlib.inc.php文件287行chmod($tmpname,0644);两个地方
(2) 让用户在系统里面清空cache和uploads
2. PHP safe_mode,它的主要作用是读写文件时会检查当前脚本和要读写或修改的文件属主是否一致,如果不一致就拒绝修改。
不过,如果当前脚本属主是hostuser,要删除属主是nobody的uploads目录下的文件,一旦safe_mode打开,就不能写了。
所以safe_mode默认是不打开的,
其替代方案为:
php_admin_value open_basedir /docroot 限制每个用户只能访问自己的文件。这里的docroot是程序的根目录,不是程序下的cache或uploads目录。如果不是根目录,PHP程序都无法访问。
3. (不一定能保证)所有PHP程序脚本能过滤Remote Code Execution和Local File Include攻击。否则黑客仍有可能读取config.php中的密码,或者直接读写cache或uploads目录中的内容。
cache目录中不可存放类似用户密码之类的数据。
4. expose_php设为off ,这样php不会在http文件头中泄露PHP的版本号。
猜你喜欢
- 一旦你的网站跟这十大标准之中的几个挂上钩,就难逃经典特差网站的厄运,如果不幸以下这十条你的网站全都占了,那还是请离开站长圈,另谋出路比较好。
- 核心提示:来对SEO网页进行相关的优化,使其提高搜索引擎排名,从而提高网站访问量,最终提升网站的销售能力或宣传能力的技术,达到SEO目的。什
- 许多人在用IIS建设网站的过程中或多或少都会出现问题,在IIS6中有些是以前版本中就曾经出现过,IIS6中也有些是新发现的问题,本文在此对建
- “此次增发融资来自于新浪管理层和三家私募投资公司,从此新浪成为管理层的新浪。”问鼎新浪实际控制人的管
- 自从开通这一功能后,陆续有不少WordPress爱好者问我博客上的“支持”、“反对”是怎么实现的。我想不少人都知道这一功能是把“牛#博”中的
- 我是一名专职的设计师,工作之余,经常会去一些个威客网承接的任务,来充实一下自己的,我去的目的也并不是单单只为钱,也为了去消磨一点时间,可是最
- 目前,微软提供一个名为Anti-Spam Migration Tool的工具,将Exchange Server 2003中的广告过滤设置安装
- “Microsoft Security Essentials”(微软安全必备)可以防御运行Windo
- 疑似谷歌操作系统LogoGoogle Chrome界面北京时间10月14日中午消息,据国外媒体昨日报道,一位用户得到了谷歌Chrome OS
- #LimitthemaximumnumberofanonymousloginsMaxClients10#We!;want'
- 11月26日消息,继入股推动在华谊兄弟创业板上市之后,分众传媒CEO江南春有望在创业板梅开二度。天涯社区总裁邢明今天在三亚透露,江南春目前已
- 针对BIND DNS服务软件的安全配置情况,我们要充分利用BIND自身已经实现的保护功能,加强BIND安全性,从而能抵御目前已知的BIND安
- 中国的站长比中国的牛还多;吹牛的站长比喝啤酒吹酒瓶的人要多,不会吧?看到某篇文章这么写的。个人做站,很多人为了兴趣,业余做站,交流思想技术交
- 网上的一些防范asp木马的教程都基于提前防范的基础之上,例如:禁止FSO,利用NTFS限制用户目录等等。这些方法虽然有效,但是都是基于提前防
- wordpress在IIS7下如何启用wp-super-cache的高级功能,很多人都只是知道有这么一个插件,开启了之后却发现并不好用。之所
- 一、什么是虚拟主机?所谓虚拟主机,就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的Inte
- 作为中国千千万万草根中的一个,我深感荣幸,因为这么多人参与,正说明了这个行业是如此的朝阳。哈哈废话少说。其实刚开始对地方分类网站了解不多,初
- 最近在优化韩国留学的网站,在讨论网站关键词时遇到一些技术以外的思维观念问题,拿出来与大家讨论。seoer都知道,优化网站在关键词的选择上是至
- 各位站长朋友们,你们是否长期做在电脑前,对着电脑忙碌着呢?下面介绍几种消除疲劳以及保护眼睛的方法,或者会有些帮助。菊花茶是保护眼睛的好饮料!
- 与以往版本相比,Discuz! 7.0.0 正式版的亮点之一是增加了任务系统。任务系统常见于各种计算机软件程序和大型网游。对于网游来说,游戏