首页 > 互联资讯 > 建站教程  > 

为什么,Linux,如此安全,却不把,Linux,设计成像,Windows,一样的图形界面来使用?

让普通用户用使用 Windows 的方式用 Linux:

百度搜索 “如何取消用户密码”百度搜索 “如何默认使用 root 用户”百度搜索 “Chrome 浏览器 Linux 版本”,然后在某软件下载站找到了个 deb百度搜索 “如何安装 deb”,然后跳转到了一个博客让他 sudo apt install安装了前面搜到的 deb我怎么一开机就 CPU 占用 100% 了/我怎么开不了机了/我怎么文件被加密了......

Linux 的安全是针对外部攻击而言的,这恰好适用于服务器市场,因为大部分 Linux 都是躺在网关后面甚至在容器里面运行着单一程序作为服务器来运行的,除了外部攻击之外有个 p 的安全威胁。然而 Linux 对用户操作的完全信任导致完全不适合大众市场,因为根据 Windows 上的反病毒经验来看,绝大多数的中毒都是因为用户自行运行了恶意软件,Linux 对此几乎没有防御能力。

有的人可能会说强制不给 root 权限不就好了吗?强制不给 root 权限只能保证计算机不被破坏,可不能保证用户数据不被破坏。

Windows 上好歹国内外几十个厂商都有各自的反病毒设施,从反恶意软件到隐私和数据保护到防火墙再到密码防窃取等等覆盖的非常齐全,哪怕用户把反病毒软件关了运行病毒发现不对劲,再打开都极大可能可以给你救回来,相比之下 Linux 有个 p 的反病毒设施。

一篇打着清理电脑垃圾名号的博客里面写着(以下代码为删除 C 和 D 盘所有文件):

del /f /s /q C:\*.* del /f /s /q D:\*.*

然后让你保存为 垃圾清理.bat 文件运行,就这都能骗到大量的用户。即使在非管理员账户上都能导致所有用户数据被删掉,如果要是在管理员账户上运行那就更可怕了。于是怎么办呢?当然是杀毒软件来擦屁股,提前拦截掉此类代码的运行。

你试图让这些用户去用 Linux?明天改成 垃圾清理.sh,然后里面写一个:

rm -rf /usr /home

就能骗到一大堆用户去自己执行这个脚本导致所有用户数据被删除。

家用市场的反病毒反的主要是恶意攻击和入侵吗?当然不是,反的主要是用户自己的作死操作。把基于完全信任用户操作这一逻辑而设计的 Linux 系统下放给完全不具备任何专业知识的普通用户来使用,结果只能是灾难,放到公司里就是大幅增加 IT 运维成本。

就算是专业用户甚至是从事相关工作的,也逃不过供应链污染带来的威胁,例如此前 pypi、npm 被上传恶意软件的事件,大量用 Linux 的专业用户中招,不少用 Windows 开发的用户反而没事,为什么?因为在 npm install 的时候杀毒软件就把恶意程序给你删掉了。

有人可能提到一些开源的杀毒引擎,例如 ClamAV 等等,但是相对于 Windows 上的反病毒软件只能说是完全不具备可比性,除了恶意软件检出能力低下之外,防护功能也非常欠缺,来看看 Windows 上今天的反病毒软件普遍都具备什么样的功能:

静态查杀防护:这个就是单纯的扫描内存和硬盘中的文件,对恶意软件进行删除。然而为了加强检出能力,一般都有脱壳解压和虚拟机模拟执行等反混淆技术文件和行为防护:在运行、加载、创建和修改文件时对文件进行扫描,防止用户执行或者存储恶意程序;并且监控正在运行中的进程,记录并分析程序行为,发现恶意行为时结束进程并回滚该进程对电脑进行的恶意更改,另外还会拦截可移动设备(U 盘、DVD 等等)上可疑程序的自动执行Web 防护:拦截用户通过浏览器访问恶意网址的操作,另外再利用流量扫描技术,扫描 HTTP/HTTPS/FTP 等协议传输的流量,发现恶意 payload 时将连接阻断。你可能好奇是如何扫描加密流量的,方法就是替换掉根证书为杀毒软件厂商自己的证书邮件防护:扫描 POP3/SMTP/IMAP 等协议,发现传输内容中有恶意附件/脚本时将邮件删除网络攻击防护:对各种常见网络攻击行为的防护(洪水攻击、DoS 攻击、IPS 攻击、ARP 攻击等等),并阻断与攻击来源机器的连接,同时也防止自身成为攻击来源(肉鸡),另外也防止网络入侵行为。你们天天担心的服务器被 DoS/DDoS 攻击怎么办,在 Windows 上不少反病毒软件自带有类似的防护,智能分析传入连接的行为,对疑似有 DoS 行为的连接进行阻断,虽然这并不能阻止带宽被填满,但起码不会导致应用负载爆满防火墙:监视网络数据包,根据规则进行数据包过滤脚本保护:对执行中的哪怕是混淆过的脚本利用行为分析、内存检测等技术进行防护,发现恶意行为时直接阻断云防护:本地更新特征库肯定有时效性问题,通过接入云防护就可以做到反病毒厂商实时下发恶意软件特征,发现可疑行为时也能上传到厂商进行分析,更快发现新恶意软件勒索软件防护:近几年新增的防护类型,针对进程的行为特征来判断程序是否是勒索软件,如果判定为是的话,就结束掉进程并回滚掉进程的恶意行为,哪怕是已经被加密的文件也能被回滚为未加密之前的,因为这项防护功能还会在发现可疑行为时开始自动备份进程试图访问的文件数据窃取保护:防止键盘输入被其他进程监听,防止密码输入窗口/屏幕被其他程序截屏,防止浏览器进程被注入,防止系统凭据被不可信进程访问等等输入设备保护:防止摄像头、麦克风等未经允许被打开应用控制:对应用自动进行分级,限制不同分级下的应用能够访问到的计算机资源,例如阻止非可信进程直接访问底层硬盘 API,阻止非可信进程添加开机启动项等等漏洞缓解措施:任意代码防护、数据执行保护、强制映像随机化、随机内存分配、空页安全环节、模拟执行、API 调用方验证、异常链验证、堆栈完整性校验、导入地址筛选等等虚拟化防护:利用虚拟化技术将核心进程隔离防止未经验证的外部注入自我保护:防止反病毒软件自己被 kill 了,防止自己的程序文件和数据文件被其他进程篡改,并且利用系统接口抢先于任何驱动程序最先加载,来最大化确保安全性广告和弹窗防护:这个懂得都懂安装防护:从双击启动杀毒软件的安装程序开始,就加载了自身的防护驱动,防止被计算机上已经存在和运行的恶意软件破坏杀毒软件的安装过程,确保即使在中毒环境下安装杀毒软件也没问题

最重要的是,以上全部功能都是自动化的,规则也会利用自带的规则行为模板或者各种机器学习等方法自动添加,完全不需要用户干预就能应对各种威胁。大量的防护功能都是基于“用户会自己运行恶意程序、电脑上已经存在恶意程序运行”的假设前提条件下设计的,如果把这个假设条件去掉你会发现上面绝大多数防护并没有必要。然而即使都到了这个地步每年还是能遇到大量的中毒案例,绝大部分都用户自己作死,例如为了运行某来源不明的程序选择把 UAC 和杀毒软件全都关闭或者添加信任等等。

这些都是从上世纪 90 年代开始反病毒厂商和恶意软件作者长达二三十年的斗智斗勇积累出来的东西,再对比一下,Linux 上的反病毒技术积累是不是几乎为 0?这种情况下把 Linux 放给普通用户使用,结果会有多灾难想都不敢想。

当然 Windows 这么做也有自身的代价,为什么 Windows 上文件 I/O 操作比 Linux 慢?问题根本不在文件系统上,NTFS 自身效率很高,然而在 Windows 随便一个 I/O 操作都需要过十几个过滤器,包括不限于杀毒软件的过滤器、各种云盘的按需存储过滤器等等,相比 Linux 那种直接的 I/O 访问能不慢吗?

为什么,Linux,如此安全,却不把,Linux,设计成像,Windows,一样的图形界面来使用?由讯客互联建站教程栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“为什么,Linux,如此安全,却不把,Linux,设计成像,Windows,一样的图形界面来使用?