保护面向服务器的互联网ColdFusion

我需要做什么来收紧面向互联网的应用程序的ColdFusion服务器? 唯一特别想到的是将CFIDE和JRunScripts目录限制到本地子网。

我可以调整pipe理员的设置,使应用程序更安全吗?

  1. 确保closures生产环境的debugging
  2. 有一个站点范围的error handling程序来掩盖任何未处理的错误; 否则会显示来自CF的丑陋的灰色框错误消息,其中可能包含有关您的服务器设置的信息

更新2010年5月30日:

Adobe刚刚发布了ColdFusion 9 Lockdown Guide (PDF),其中包含各种信息,用于正确locking和保护ColdFusion服务器和应用程序。

原帖:

如果只有您自己的应用程序将在服务器上运行,请首先locking您select的Web服务器。 米尔纳的build议,把整个网站的error handling程序抓住任何期待是一个很好的防止数据泄露。 只要输出限制为您指定的特定IP地址,您就可以在生产环境中运行debugging。 至于CFIDE文件夹,真正需要locking的部分是“pipe理员”子文件夹。 如果您正在使用任何ColdFusion表单控件,则应用程序可能需要的CFIDE文件夹中有很多内容。

除了ColdFusion服务器本身之外,在代码中还有很多事情需要考虑,比如:

  1. 在您的查询中使用CFQUERYPARAM。
  2. 不要相信来自CGI,COOKIE,URL或FORM范围的用户input。 始终消毒input,不要采取任何的机会。
  3. 对于用户input的将显示图层的数据,请确保使用HTMLEditFormat()或JSStringFormat()函数来封装数据,以便呈现跨站点脚本攻击。

可能很明显,但是如果服务器是面向互联网的(可以通过公共IP直接访问),那么您肯定需要某种types的防火墙 – 至less在您的操作系统中有一个软件防火墙或硬件设备来保护服务器。

试试www.hackmycf.com,这是Foundeo制作的安全分析工具,效果不错!