The jury is in: monolithic OS design is flawed

The security benefits of keeping a system’s trusted computing base (TCB)small has long been accepted as a truism, as has the use of internal protection boundaries for limiting the damage caused by exploits. Applied to the operating system, this argues for a small microkernel as the core of the TCB, with OS services separated into mutually-protected components (servers) – in contrast to “monolithic” designs such as Linux, Windows or MacOS. While intuitive, the benefits of the small TCB have not been quantified to date. We address this by a study of critical Linux CVEs, where we examine whether they would be prevented or mitigated by a microkernel-based design. We find that almost all exploits are at least mitigated to less than critical severity, and 40% completely eliminated by an OS design based on a verified microkernel, such as seL4.

86 Comments

  1. Drumhellar 2018-08-16 9:06 pm EST
    • sklofur 2018-08-16 10:11 pm EST
    • Alfman 2018-08-16 10:32 pm EST
      • panzi 2018-08-17 4:15 am EST
        • The123king 2018-08-17 9:20 am EST
          • Bill Shooter of Bul 2018-08-17 1:37 pm EST
          • jessesmith 2018-08-18 7:42 pm EST
          • Megol 2018-08-19 9:40 am EST
        • Alfman 2018-08-17 2:12 pm EST
      • ahferroin7 2018-08-17 12:29 pm EST
        • Alfman 2018-08-17 5:32 pm EST
    • devloop 2018-08-17 9:30 pm EST
    • Megol 2018-08-18 1:35 pm EST
      • tidux 2018-08-19 1:23 am EST
        • Alfman 2018-08-19 2:32 am EST
          • tidux 2018-08-19 9:06 am EST
          • Alfman 2018-08-19 2:41 pm EST
          • ssokolow 2018-08-21 1:49 am EST
        • Megol 2018-08-19 9:05 am EST
  2. terra 2018-08-16 9:09 pm EST
    • Drumhellar 2018-08-16 9:15 pm EST
      • BluenoseJake 2018-08-16 9:36 pm EST
        • panzi 2018-08-17 4:17 am EST
          • bert64 2018-08-17 6:45 am EST
          • ahferroin7 2018-08-17 12:21 pm EST
          • zima 2018-08-19 9:42 pm EST
          • grub 2018-08-17 7:55 am EST
          • Bishi 2018-08-17 4:29 pm EST
          • grub 2018-08-20 6:28 am EST
      • terra 2018-08-17 7:38 am EST
        • Brendan 2018-08-17 7:58 am EST
        • JMcCarthy 2018-08-20 9:09 pm EST
    • Carewolf 2018-08-17 12:52 pm EST
  3. ameasures 2018-08-16 10:20 pm EST
    • etrek 2018-08-17 11:20 am EST
  4. cb88 2018-08-16 10:25 pm EST
    • Brendan 2018-08-17 6:45 am EST
    • zima 2018-08-19 9:39 pm EST
  5. kwan_e 2018-08-16 10:33 pm EST
    • ssokolow 2018-08-16 10:42 pm EST
    • The1stImmortal 2018-08-17 4:35 am EST
      • Brendan 2018-08-17 6:50 am EST
        • The1stImmortal 2018-08-17 6:53 am EST
          • Brendan 2018-08-17 7:40 am EST
          • kwan_e 2018-08-17 7:54 am EST
          • Brendan 2018-08-17 8:08 am EST
          • kwan_e 2018-08-17 8:53 am EST
          • Brendan 2018-08-17 8:08 pm EST
          • Alfman 2018-08-18 1:39 am EST
          • kwan_e 2018-08-19 1:11 am EST
          • kwan_e 2018-08-19 1:00 am EST
    • grub 2018-08-17 8:01 am EST
      • grub 2018-08-17 8:50 am EST
      • kwan_e 2018-08-17 10:19 am EST
        • grub 2018-08-17 11:16 am EST
        • Bill Shooter of Bul 2018-08-17 1:48 pm EST
          • kwan_e 2018-08-17 3:21 pm EST
          • Bill Shooter of Bul 2018-08-17 3:37 pm EST
          • grub 2018-08-20 9:42 am EST
          • kwan_e 2018-08-20 10:29 am EST
          • grub 2018-08-20 11:26 am EST
          • kwan_e 2018-08-20 11:29 am EST
  6. bert64 2018-08-17 6:42 am EST
  7. ThomasFuhringer 2018-08-17 6:48 am EST
    • terra 2018-08-17 7:40 am EST
      • ThomasFuhringer 2018-08-17 9:05 am EST
    • Brendan 2018-08-17 8:41 am EST
      • ThomasFuhringer 2018-08-17 9:11 am EST
    • Alfman 2018-08-17 4:01 pm EST
    • zima 2018-08-19 9:50 pm EST
      • ThomasFuhringer 2018-08-20 7:23 am EST
        • Megol 2018-08-20 10:22 am EST
        • Alfman 2018-08-20 4:31 pm EST
          • kwan_e 2018-08-20 11:45 pm EST
          • Alfman 2018-08-21 1:44 am EST
          • zima 2018-08-21 11:22 pm EST
          • Megol 2018-08-21 10:03 pm EST
        • zima 2018-08-21 11:27 pm EST
      • Alfman 2018-08-20 5:46 pm EST
        • zima 2018-08-21 11:20 pm EST
  8. Nit.0 2018-08-18 7:18 pm EST
    • tidux 2018-08-19 1:27 am EST
    • zima 2018-08-19 9:44 pm EST
      • Megol 2018-08-20 10:24 am EST