战魂小筑

讨论群:309800774 知乎关注:http://zhihu.com/people/sunicdavy 开源项目:https://github.com/davyxu

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  252 随笔 :: 0 文章 :: 506 评论 :: 0 Trackbacks

     病毒,说白了就是可以做任意事情的破坏性程序,这不算什么,大不了只是一个地方黑社会。
木马,简而言之就是只要给我联网,我就可以黑掉你
     微软已经把Windows系统给做烂了。exe可以在管理员权限下任意运行,从而导致病毒木马的泛滥。其实转过头来看很多手机操作系统,例如Android,也是使用WindowsXP后为exe引入的manifest概念,但是却从根本上解决了很多安全性弊病
     Android中,每个运行入口,必须有一个manifest来让OS知道你这个程序需要做什么,由OS为你配备网络,磁盘读取等等需求。
     如果将病毒的访问权限降低,例如跑在虚拟机里面,病毒就没有毒了,木马即便能获取机密信息,也发不出了。
而Windows呢,由于本身概念设计的缺陷,一个程序写好后拥有完全权限进行访问,OS并不了解一个程序能做什么,只有当这个程序调用API时才知道,但有时也决定于调用时的数据,比如只有打开系统盘文件才受到限制。于是乎,很多商家看到了money,使用API HOOK,rootkit等等底层钩子来模拟出了一套超级虚拟机,妄想用一个软件控制住另外一个软件的访问,简直是痴人说梦。
     也许你会说,UNIX/Linux不是在这方面做的很好么?引入用户及权限,默认不在管理员下运行。这点Windows也做了,不过很好么?看看UAC,Linux下运行也很麻烦。 
     试想下,如果Windows也拥有和Android一样的manifest机制,那么病毒扫描也就仅仅需要检查manifest文件就可以。对于老的程序,可以开启一个权限自动检查模式进行运行,一段时间后,自动为这个老程序生成新的manifest,如果以后发现这个老程序有侵入系统的问题,马上修改这个manifest就可以解决问题。
     你可能要说,如果程序试图修改自己的manifest呢?这个可以在操作系统内核进行验证,没哪个程序能修改Windows内核吧?就是这个道理,如果manifest的checksum与以前的不一样,那就需要一些用户手动验证。

posted on 2009-08-10 17:57 战魂小筑 阅读(340) 评论(1)  编辑 收藏 引用 所属分类: 操作系统

评论

# re: 由Android想到的OS manifest机制 2009-08-10 19:12 陈梓瀚(vczh)
PC软件比手机多那么多,显然方便非常重要,安全不能通过给我们造成麻烦的方法来运作。UAC就算不关掉,也是可以不麻烦的。  回复  更多评论
  


只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理