自从Windows也学UNIX和类UNIX系统开始分割管理员权限和用户权限之后,经典意义上的那种打开个文件没有任何提示就偷偷感染运行的病毒越来越少了。现在你说的“病毒”基本上是伪装欺骗用户授权管理员权限才能为所欲为的,比如冒充自己是Adobe flash要你安装更新或者网页弹窗警告你中了病毒要安装免费杀毒软件,其实它自己就是木马。严格意义上讲这些是恶意软件,而不是传统意义上的病毒,因为它们无法像病毒一样不受控地自我传播,能自主传播的经典病毒其实已经绝迹了。
然而这种玩意无论是在windows还是Linux都是有的,毕竟再NB的系统也架不住用户蠢,你一路输密码next下去有啥技术手段拦得住你?但恶意软件还是windows上多,一方面是windows占有率高,另一方面是windows用户不像类unix系统的用户有权限意识,还有就是windows的遗留设计问题,权限分割没有类Unix 系统做的彻底,绝大多数Unix软件都是天然绿色软件,无需安装,放哪里都能跑,所以哪个软件要求管理员权限就很容易引起警觉。windows则是随便什么阿猫阿狗软件都要系统权限,steam里下个游戏,首次启动几乎100%要系统权限,某些游戏每次启动都要系统权限,在这种情况下要求用户每次都输入管理员密码是不现实的,还不给人骂死,所以默认只好弹窗按确认就授权,几乎形同虚设。
如果没有的话,苹果搞gatekeeper机制,搞一个强制更新的应用hash黑名单,后面干脆默认禁止运行未签名应用,搞沙盒,这些措施是为了什么?还不是遇上了实际的威胁(比如外网上以前的恶意广告,什么伪装为flash player更新欺骗用户下载木马等等,还有不需要高权限就能搞大破坏的勒索软件等)才会有这些对策出现。
而且有一说一,历史上Mac OS Classic(二十多三十多年前不是Unix的古董Mac OS)时代病毒还是很猖獗的,举个例子:
666病毒,90年代末用Mac出图的平面设计工作室,只要用盗版,都可能遇到这个玩意。有几个变种,有一个变种发作会试图删除所有文件,主要是添加功能扩展以便开机加载,然后修改所有打开过的应用程序,修改其资源分支里面的MENU和MDEF,使得运行被感染的应用程序时一加载菜单就会运行该病毒。
我来试下一次过帮大家把这个问题给搞清楚吧。这里先说下我的相关背景,我从2013年至今一直都是用Macbook Pro作为我的主开发机器,虚拟机装Windows作为辅开发机器,2013年之前用的都是Windows,用过Dos,Windows Me,Windows Vista, Windows XP,Windows 7, 及现在一直在我虚拟机上的Windows 10。
这么多年来,我的Macbook Pro升级换过一次,但是从来没有安装过杀毒软件,也没有受到过病毒的困扰。此前我也没有对这个问题有进行深入的调研和思考,今天就借这个机会,好好的把这个问题搞清楚。
Windows相对macOS来说为什么这么容易中病毒,这里有好多个层面不同的因素,有些甚至可能已经成为历史,但确切切实为病毒的入侵提供了各种便利。
第一,管理员权限滥用。相信大家在Windows使用软件的时候都试过右键选择‘以管理员身份’运行吧?用起来是非常方便,甚至很多人将系统设置成默认用管理员权限跑所有软件,但这同时也是很多恶意软件获得你的管理员权限的罪恶之源。而在macOS上,因为是属于*nix系统系列,大家深谙rm -rf的破坏力之大,所以所有的需要权限的命令都需要sudo,而sudo的时候需要你输入管理员密码才能继续执行。
第二,对老版本的过度兼容。Windows对老版本应用的兼容是非常彪悍的,你现在装个Windows 10,还可以通过兼容模式跑老到掉牙的Windows XP的应用。这一方面对用户和开发者非常友好,但另外一个方面,因为战线拉得太长,所以就留给了居心叵测的人大量的可乘之机。相对来说,macOS对老版本软件抛弃之快简直是令人发指,你今天不小心升级了下系统,老的软件可能就没法用了。我不知道最近大家是否有升级到macOS big sur,大家去看下网上升级后的哀嚎一片吧。这虽然为用户带来更高的安全性,也强迫开发者要随着macOS的更新而升级以给用户带来更好的体验,但同时也给开发者和用户带来很大的负担。
第三,防火墙不是标配。这主要是windows xp时期的问题,防火墙一直都只是一个option,而不是一个must。
第四,各种端口城门大开。Windows为了方便大家共享文件,查看网络邻居,网络打印等,默认打开了很多端口,如TCP的139、445、593、1025,UDP的123、137、138、445、1900等端口,这往往就为网络攻击者和病毒提供了后门。
第五,安装来源不可控。Windows在这方便一直是饱受诟病的,从以前的exe到msi一直都没有彻底解决安装包受到病毒污染或者安装包本身就是个病毒的问题。后来推出了UWP和对应的Microsoft App Store,严格把关上传的应用,并把应用的运行困在自己的沙箱中,才使得这个问题得以缓解。其实微软本意是想和windows phone打通而做这一套的,可惜的是winphone不争气,现在基本已经难见踪影。所以很多开发者也不买单,为了不用用户的需求,还是往往会提供直装版和UWP版。比如我和朋友一起做的一款Windows下的小工具就同时提供了两个版本,一个放store上,一个放网站上。而在store上的版本来单是远远没有网站上的版本来得多,当然这也可能是我们SEO的功力不够,但这里重点是大伙不为store买单,不愿意只提供UWP版本,甚至很多没有精力搞两套的,往往只会提供直装版。而macOS这方面是做得很好的,基本上软件的来源都在app store上能找到。同时,如果你的软件缺乏相应的证书或者说来源不可靠,系统将不会允许其运行,需要你自己手动去设置中选择允许该应用运行并输入密码才能继续跑。
第六,文件系统层级的安全性问题。Windows长期以来都是支持不安全的FAT文件系统的,包括现在依然兼容,而NTFS作为系统分区是到了2005年的vista系统中才被强行定下来的。NTFS所以安全性强是因为可以和操作系统层级的复杂的NTFS ACL相搭配,限制只有授权的用户才能以指定的权限访问文件系统。而FAT没有这一套,所以网络上的黑客只要能访问到你的磁盘,基本上就是可以为所欲为了。反观macOS早在2000年就为其文件系统提供了复杂的访问权限逻辑,有兴趣的大家可以自行用搜索引擎查证。
第七,IE上的ActiveX的噩梦。我相信在Windows上很多病毒都来自网络。IE上很多的一些插件应用都是基于ActiveX来跑的,且ActiveX又是IE特有的。ActiveX漏洞长期以来被Windows用户视为眼中钉,各种使用ActiveX漏洞的间谍软件、恶意软件、病毒随处可见。相对来说,因为ActiveX是IE特有的,所以macOS下基于webkit的Safari不会有ActiveX带来的各种安全问题。
第八,用户基数。这个就不是技术层面的问题了,但我们也一并将其归纳进来。大家看下面最新的桌面操作系统市场份额图标吧,我相信如果你作为一名居心叵测的病毒开发人员,用脚指头都能想到我应该把主要精力放在哪个操作系统上。
以上大概就是为什么Windows相比苹果的macOS更容易中毒的原因了。我是有非常认真的为这个问题去找数据和做思考的,希望答案能够让大家满意吧。
最后,非常感谢大家宝贵的时间进行观看,如果喜欢的请不要吝啬你的点赞,点赞你还能提升知乎盐值哦,同时也希望大家能够关注我,我会用心的为大家提供更多的好回答。
---------追更----------
附视频版本如下:
经常有人问出一个蠢萌蠢萌,还有点大脑宕机才能问出的问题,你看了那么多书,为什么写的不咋地?
如果看点书就能写名著……这世上最应该成为大文豪的人,就是专业文字校对……
看多少书,只是入门,想要写点东西,还得多练,最后……决定成功的是天赋和运气。
缺一不可……
经常有人问,努力和天赋哪个重要?
可现实里是,努力是必须的,天赋也是必须的,你必须要同时做到,缺一条腿的人,不可能跑过刘翔。
看书只是门票,很多人以为拿到门票,就等于电影院都是他们家的了,这个……真没法跟这种智商的人解释,门票就是进门的票据而已。
电影是一门很贵很贵的艺术。
所以导演们是没有机会,太多次试错,如果能够让导演连续拍十部哪吒,我估计怎么也会成功了。
毕竟哪吒的导演,本身是具备各种成功元素的。
随便拉一个网文作者,失败二十次以上,只是小事一件而已,我披马甲写过,折戟沉沙的书,虽然没有确切统计,两百本总有了。
这几年沈腾和贾玲的成功,是无数小品,话剧一部一部喂出来的,哪里观众喜欢,哪个节点必须舍去,观众不喜欢,这种历经十年以上,具体多少作品的试错,是其他导演和演员都没有机会。
经常有人说,劝导演看看xx作品,好好学学……别闹了,如果仅仅看看电影,就能做导演,我挂个大饼都能行了!怎么可能?拉片是影视行业的基本功,就算资深影迷也绝无可能比得过这些导演,但真不是看看就能学。
不知道这个题材,影视行业还会不会给机会了!
希望哪吒的票房能更一些,让这个题材还有继续尝试,最终突破的机会。