lh-l4v/proof/access-control/README.md
Gerwin Klein 0cf64b5498
READMEs: use run_tests consistently in READMEs (#622)
Avoid mixing `isabelle`, `make`, and `run_tests` invocations.
Standardise on `run_tests` and mention `L4V_ARCH` each time to
indicate that you can and should set `L4V_ARCH`.

Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2023-03-30 13:59:18 +11:00

1.3 KiB

Access Control Proof

This proof establishes that seL4 enforces the security properties of authority confinement and integrity. These are essential correctness properties of its capability-based access control system: authority confinement means that authority propagates only in accordance with capabilities, and integrity means that data cannot be modified without possession of an appropriate write capability to the data. These properties and proofs are described in detail in an ITP 2011 paper. These properties are phrased over seL4's abstract specification and this proof builds on top of the Abstract Spec Invariant Proof.

Building

To build for the ARM architecture from the l4v/ directory, run:

L4V_ARCH=ARM ./run_tests Access

Important Theories

The top-level theory where these two properties are proved for the kernel is Syscall_AC; the bottom-level theory where the properties are defined is Access.