lh-l4v/proof/access-control
Gerwin Klein 0e3016251f
lib+proof: proof updates for wpc change
Signed-off-by: Gerwin Klein <gerwin.klein@proofcraft.systems>
2023-06-15 09:52:15 +10:00
..
ARM arm access+infoflow: physBase abstraction 2023-03-29 11:05:26 +11:00
RISCV64 lib+proof+autocorres: consolidate when[E]/unless[E]_wp naming 2023-01-25 11:48:39 +11:00
ADT_AC.thy various: resolve some new fixmes 2021-11-12 09:39:16 +11:00
Access.thy various: resolve some new fixmes 2021-11-12 09:39:16 +11:00
Access_AC.thy access: constrain auto 2023-02-09 11:46:52 +11:00
Arch_AC.thy various: resolve some existing fixmes 2021-07-22 10:44:43 +10:00
CNode_AC.thy lib+proof: proof updates for wpc change 2023-06-15 09:52:15 +10:00
Deterministic_AC.thy access: Isabelle2020 update 2020-10-27 15:52:31 +10:00
DomainSepInv.thy lib+proof+autocorres: consolidate when[E]/unless[E]_wp naming 2023-01-25 11:48:39 +11:00
Finalise_AC.thy various: resolve some new fixmes 2021-11-12 09:39:16 +11:00
Interrupt_AC.thy riscv access: add proofs for Interrupt_AC 2021-07-22 10:44:43 +10:00
Ipc_AC.thy lib+proof+autocorres: consolidate when[E]/unless[E]_wp naming 2023-01-25 11:48:39 +11:00
README.md READMEs: use run_tests consistently in READMEs (#622) 2023-03-30 13:59:18 +11:00
Retype_AC.thy lib+proof+autocorres: consolidate when[E]/unless[E]_wp naming 2023-01-25 11:48:39 +11:00
Syscall_AC.thy proofs: hoare_pre_cont variable renamed 2023-02-09 11:46:51 +11:00
Tcb_AC.thy proof: remove is_thread_control and thread_control_target 2023-02-14 18:33:44 +11:00
Types.thy aspec+access: Access arch split 2021-06-21 20:10:32 +10:00

README.md

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.