当前位置:  开发笔记 > 前端 > 正文

IIS6或IIS7中的ColdFusion 8的Web文件安全性最佳实践

如何解决《IIS6或IIS7中的ColdFusion8的Web文件安全性最佳实践》经验,为你挑选了1个好方法。

假设我们有一个内部写有CF应用程序的网站.

假使,假设:

将使用Server 2003 IIS6或2008 IIS7

将使用ColdFusion 8

目录浏览被拒绝

连接需要SSL

帐户登录过程是安全的(是的,我知道这是一个完整的另一个蜡球,但这个概念在网络上讨论是偶然的).

假设我在https://domain.com/folder1/folder2/上有一个文件,其名称如picture92352.ext,可以将其想象为jpg或pdf等等.域名和文件之间的整个路径在命名结构,深度等方面差异很大.文件不会全部集中在一个文件夹中.

该应用程序限制用户的链接,以便用户必须首先访问该文件才能找到它,但现在如果一个人知道该文件的完整URL,他们可以在不登录应用程序的情况下检索该文件.这是默默无闻的经典安全状况.随机的人不太可能找到他们不应该找到的文件,但是一旦有人获得访问权限,他们就知道如何从另一台PC访问它,而他们的行为可能无法追溯到他们.

如何在有人登录之前限制对这些文件的访问,并且在登录后仍然可以让外部用户访问这些文件?有没有办法只使用权限,或者是在请求时让代码动态移动文件的唯一答案,还是有一些我甚至没想过的明显步骤?

让我稍微澄清一下.无论文件如何在页面上呈现,用户都可以使用浏览器IE,Firefox等来检查文件来自的URL.如果图像是链接,则IE的右键菜单中始终存在复制快捷方式,FF中的相同功能称为复制链接位置.如果图像以内嵌方式显示为页面的一部分,则IE用户可以右键单击并选择属性以查看URL,在FF中,相同的功能可用于查看属性,但有一个更方便的选项标记为复制图像位置.一旦用户知道文件的URL,如果位置或文件名没有改变,他们可以使用该URL而无需在CF应用程序中进行身份验证.

如果我更改NTFS /共享权限,以便IUSR无法看到内容,那么我的CF应用程序和IIS无法推送它.我使用什么策略在CF应用程序中提供不会打开此漏洞的文件?



1> Chase Seiber..:

您可以编写一个提供图像的CFM页面.然后,您只需确保它们在CFM中进行身份验证.


http://localhost/GetFile.cfm?file=foobar.jpg

在GetFile.cfm中,您可以执行以下操作:


 

看看各种MIME类型.

如果你想做类似的事情,但保留一个更自然的URL,我认为你需要利用ColdFusion的Java servlet基础为任何匹配某种模式的URL创建一个处理程序.

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有