【发布时间】:2015-07-10 10:41:29
【问题描述】:
我负责我们的公司应用程序菜单页面(仅限 Intranet)。它包含许多资源链接(网页和已安装的应用程序),并针对当前用户量身定制。
过去,我使用小程序允许直接从浏览器启动已安装的应用程序。
公司网站正在进行改造,有人告诉我要找到一个不需要任何插件的解决方案。
我的第一次尝试是注册一个自定义协议处理程序。菜单提供程序包含所有链接和应用程序命令的定义,每个用户都有不同的权限。我可以想象,当为用户创建菜单时,可以将命令编码并添加为custom://base64encodedcommand 之类的东西。处理程序将解码命令、执行检查并执行它。
这在 IE、FF 和 Chrome 中运行良好。目前,我们主要有 Windows 工作站,它只会在公司内部网中使用。
这是一种可行的方法吗?是否存在安全问题?
【问题讨论】:
-
是的 - 恶意网站可以通过将它们重定向到
custom://+ 命令来指定客户端计算机执行的任何命令。不要依赖没有人知道这个协议的事实。始终假设任何攻击者都比自己聪明。 -
@SilverlightFox - 但是编码呢?我在测试阶段使用 base64,这可以轻松升级到不同的安全级别。我们还考虑了一个闭环,其中菜单提供程序添加了一个在命令执行之前检查的键。只是想弄清楚什么是太多,什么是太少......