Attacking the kernel via its command line
Attacking the kernel via its command line
Posted Jun 21, 2017 7:07 UTC (Wed) by thestinger (guest, #91827)In reply to: Attacking the kernel via its command line by marcH
Parent article: Attacking the kernel via its command line
It's certainly usable without them, but since it supports them the verified boot implementation is weakened to support them whether or not you use those features. The user having no extensions is something that depends on persistent state.
Posted Jun 21, 2017 7:27 UTC (Wed)
by marcH (subscriber, #57642)
[Link] (6 responses)
Posted Jun 21, 2017 7:36 UTC (Wed)
by thestinger (guest, #91827)
[Link] (5 responses)
Posted Jun 21, 2017 7:37 UTC (Wed)
by thestinger (guest, #91827)
[Link]
s/permit/persist/
Posted Jun 21, 2017 7:56 UTC (Wed)
by marcH (subscriber, #57642)
[Link] (3 responses)
So, sorry but I still can't see any security difference between the original ChromeOS design versus the current design used by a paranoid user who says away from apps etc. I'm not saying a persistent partition is good, I'm merely saying the design wasn't weakened by apps unless you use some.
Posted Jun 21, 2017 8:02 UTC (Wed)
by thestinger (guest, #91827)
[Link]
The topic is verified boot, not users exposing themselves to additional attack surface by using new features. In terms of impact on verified boot security, it doesn't matter whether you use the features. It only matters that the verified OS code supports those features via the persistent state. It doesn't support persistent privileged code (i.e. the persistent state is not trusted much) which is why it has a good / useful verified boot implementation, but not a fantastic one.
Look back at the context:
> 9) firmware / bootloaders / kernel / base OS / privileged code / data trusted by privileged code / all code / all data trusted by code
I only stated that it would be a stronger implementation of verified boot without any persistent code.
Persistent data without supporting persistent code would mean an attacker's persistence mechanism doesn't start off with (sandboxed) code execution.
Posted Jun 22, 2017 13:22 UTC (Thu)
by walters (subscriber, #7396)
[Link] (1 responses)
Posted Jun 22, 2017 13:36 UTC (Thu)
by thestinger (guest, #91827)
[Link]
The unfortunate reality of verified boot is that you can't improve it via settings. There cannot simply be a setting to disable attack surface or to implement more user control because an attacker that has gained root access can change any setting, install any app, grant any dynamic privilege that's possible to set for third party code, etc.
Now that ChromeOS is gaining Android app support (currently in the Beta channel), that all applies to ChromeOS within the Android userspace container. An attacker would need a kernel exploit to get at the non-Android OS, but they'll have control as system_server since it's just standard Android with /data/dalvik-cache and that gives them a huge amount of attack surface since it's near root (in this case, user namespace root, but that still exposes most kernel attack surface).
Attacking the kernel via its command line
Attacking the kernel via its command line
Attacking the kernel via its command line
Attacking the kernel via its command line
Attacking the kernel via its command line
> This would be ChromeOS if it didn't have extensions, apps and Android app support.
Attacking the kernel via its command line
Attacking the kernel via its command line
