安全沙箱程序:深度防御还是分层漏洞

互联网 | 编辑: 周黎俊 2012-10-26 00:00:00转载 一键看全文

沙箱的潜在漏洞

沙箱的潜在漏洞

沙箱可主要分成三个部分:核心语音解释器、标准函数库以及不受信任的应用程序代码。在这三部分中,标准函数库包含了执行路径——如网络通信和密码系统的路径——是最容易受到攻击的部分。这是使用Java或C#编写这些库直接导致的,使得标准库继承了这些语言的固有缺陷,如堆栈溢出漏洞。实际上,C#将部分代码标记为不安全的不仅会弱化系统的安全性,还会轻易允许对主机系统本地库的访问。

许多人会把沙箱和虚拟机(VM)混淆,这可能是因为许多公司将虚拟机当做沙箱来使用。在典型的家用计算机上,这么做可能是适宜的,可以增加Web浏览时的安全性;但不建议在保存有敏感数据的系统上测试可疑程序。

由于在个人电脑上使用越来越广泛,虚拟机常被用于产生蜜罐或被当做常用的网络安全手段,黑帽黑客们正在编写新的恶意代码。这种恶意代码可通过寻找虚拟机在系统内存、正在运行的进程、注册表和文件系统中留下的典型特征来检测是否有虚拟机正在运行。它甚至会寻找虚拟机硬件和处理指令。因此,使用虚拟机作为沙箱(或其他安全用途)要冒极大的风险,只能吓走低级的——或机会主义的——黑客。这些黑客往往不具备相应的能力或工具来检测是否有虚拟机在运行。

最后,安全沙箱程序不是万能的。沙箱的设计目的在于分隔代码和主机系统;然而,如上所述,沙箱会在无意中带来各种安全漏洞和问题。因此,正如对待其他安全措施那样,在决定使用何种安全功能时,风险评估和风险减低是至关重要的。沙箱技术的发展不仅能寻找到新的应用场景和提供多种多样的好处,也可能导致自满和系统已经完全安全的错觉。尽管深度防御是个好的策略,但同时我们需要谨记,每增加一个应用层,可利用的漏洞也会增加。

各种新式的安全措施都有意想不到的后果,沙箱也一样。因此,单独依靠沙箱来保证程序的完整性将是一个严重的错误。正确的应用程序安全措施要求多层次的安全防护,这些措施一起工作才能提供坚固的、多方面的应用程序防御体系。正确地使用沙箱能带来好处,但是要意识到危险的存在,否则,那些有效的应用程序,可能会像昔日童年的沙砾那样,从你的指尖滑落到地。

提示:试试键盘 “← →” 可以实现快速翻页 

总共 2 页< 上一页12
一键看全文

本文导航

相关阅读

每日精选

点击查看更多

首页 手机 数码相机 笔记本 游戏 DIY硬件 硬件外设 办公中心 数字家电 平板电脑