在本地网络上引用网站图像会破坏网络安全吗?

时间:2012-03-25 15:14:34

标签: security networking

我管理的网站适用于拥有网络的组织,在任何给定的15分钟内,数百名用户都可以访问该网站。当用户打开浏览器时,将显示组织的主页。这个主页上有几张图片。为了尝试节省带宽到远程Web服务器(完全不隶属于本地网络),索引文件检查请求者的IP地址,如果它来自网络,它会显示修改后的网页图像从网络上的本地共享驱动器中提取。

基本上,代码是这样的:

<image src="file:\\\D:/hp/picture.jpg" />

网络管理员告诉我,这是不可接受的,因为它带来了很大的安全风险,必须立即删除该文件夹。

我很确定这不是风险,因为它是从本地网络而不是远程服务器请求文件的浏览器,如果请求来自所有用户的本地网络,则显示图片的唯一方式无论如何都可以访问有问题的驱动器。

我在这里有什么东西吗?这个单一图像标签是否会给网络带来“巨大的安全风险”?

一些背景可以防止出现明显的问题:

  1. 每次新用户登录计算机时都会清除浏览器缓存。新用户大约每15分钟登录500多台计算机。
  2. 我已要求为网络全局设置代理缓存服务器。网络管理员拒绝这样做
  3. 从网络内托管是不可能的(再次,通过网络管理员的法令)
  4. 我无法控制网络或参与决策。
  5. 每个用户都具有对此共享驱动器的读访问权限,并且他们都对其中的100个左右目录中的至少一些具有写访问权。
  6. 远程用户无法远程访问网络(您必须登录到物理上插入网络的计算机才能访问网络或其上的任何驱动器)

先谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

为什么不使用服务共享目录的同一台服务器通过HTTP共享图像,只需使用:

<image src="http://local-server/images/hp/picture.jpg" />

您已经拥有一台服务器,这是使用适当软件的问题。

关于你的另一个观点,可能是危险的。您允许浏览器访问远程网站请求的本地文件。我无法想到我头脑中的任何漏洞,但我宁愿避免这种不寻常的做法。在你确定它是安全的之前你不应该做某事(现在你只是不确定它是不安全的)。

答案 1 :(得分:0)

标签本身是否具有“巨大的安全风险”?当然不是 - 任何网站都可以这样做(正如你所说,IE8“很高兴打开你要求的一切”)。其中存在风险:应该允许任何网站强制客户打开任意网络文件?

从安全角度来看,这个问题很可能不是图像标签本身,而是这个功能需要互联网网站允许强制访问本地资源(通过文件:协议)客户端的安全上下文。即使采用同源策略,这也是有潜在危险的,因此现代浏览器不允许这样做。

从IE9开始,Microsoft不允许从Internet区域中的站点访问file:protocol,并且“strongly discourages”禁用此功能。其他现代浏览器具有类似的功能。

据推测,网络管理员最终需要从IE8升级。默认情况下,升级到较新的浏览器将阻止加载本地访问的图像。因此,组织最终会有一些选择:

  1. 关闭此安全设置,允许任何网站引用本地内容
  2. 不升级,永久使用IE8
  3. 在“受信任区域”中运行网站,默认情况下该网站允许网站执行用户可以执行的任何操作(启动进程,删除文件,读取数据等)。
  4. 开发自定义软件(BHO,自定义应用程序,HTA等)或使用COTS软件在本地加载图像,绕过默认的IE行为。
  5. 接受与不显示本地图像相关的可用性影响
  6. 选项(1)显然是一个安全问题,因为它需要禁用一个安全设置来阻止非本地网站读取本地内容。选项(2)提出了自己的安全问题,因为较旧的浏览器缺少新浏览器的一些安全功能(如阻止文件:来自Internet区域的协议访问)。选项(3)需要更改管理配置,违反最少访问原则,并且(特别是如果站点缺少服务器验证(SSL))会将组织打开到新的可能具有破坏性的攻击媒介。

    留下选项4 - 为此目的开发/部署软件;和选项5 - 阻止显示图像。

    在结束时,管理员将有可能从IE8移开强大的安全利益,而且采用的是行为的新的浏览器不支持可能妨碍这种升级的实现,而且可以合理地违背了组织的安全利益