I made a tweet claiming that Linux is behind on security mitigations. This post is to outline mitigations added to platforms such as Windows, MacOS, and even ChromeOS that have yet to see the light of day on the linux desktop.
(Btw, Andrew Kelley is my hero!)
Linux distros are behind on implementing modern binary exploit mitigations. The last thing Linux userspace has done is ASLR/PIE and stack canaries: this hasen't changed for years. Windows and MacOS enforce signature checking on all binaries. glibc's allocator is primitive compared to LLVM's Scudo allocator, which mitigates use-after-frees and heap overflows.
Windows signs heap pages to ensure they're immutable, in addition to hardware-enforced control flow protection. Modern iOS does this too. Windows also implemented something exciting called a shadow stack, which stores return addresses in a secret, seperate stack from local variables. This is both faster and more secure than stack cookies.
Linux distros have no concept of sandboxing, or any meaningful application security model. Any app running under Xorg can see the contents of any other app runing under Xorg. Flatpack and snap are both security nightmares , fundamentally flawed and poorly implemented. The only good sandoxing API provided by the Linux kernel is seccomp-bpf, and the only program that uses it is Google Chrome/Chromium. To compare, ChromeOS requires every service to have its own seccomp filter .
Also a friendly reminder that Debian is always behind on CVEs, and I'm sure that most distros don't fare any better.
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Java编程思想 (第4版)
[美] Bruce Eckel / 陈昊鹏 / 机械工业出版社 / 2007-6 / 108.00元
本书赢得了全球程序员的广泛赞誉,即使是最晦涩的概念,在Bruce Eckel的文字亲和力和小而直接的编程示例面前也会化解于无形。从Java的基础语法到最高级特性(深入的面向对象概念、多线程、自动项目构建、单元测试和调试等),本书都能逐步指导你轻松掌握。 从本书获得的各项大奖以及来自世界各地的读者评论中,不难看出这是一本经典之作。本书的作者拥有多年教学经验,对C、C++以及Java语言都有独到......一起来看看 《Java编程思想 (第4版)》 这本书的介绍吧!