-
Notifications
You must be signed in to change notification settings - Fork 2
PLDI 2013
ztatlock edited this page Nov 6, 2012
·
3 revisions
- Access control for pseudo terminal: never exec pseudo terminal process until user has authenticated.
// c is password checking component (chan to System)
(.*[recv c (Auth user "true")])?[^spawn AllocPTY user]*
- Limit password checking attempts: slave cannot attempt authentication more than 3 times.
// c is password checking component (chan to System)
(.*[send c (Auth user pass)]
.*[send c (Auth user pass)]
.*[send c (Auth user pass)]
.*[send c (Auth user pass)]
.*)!
- Tab non-interference : a tab cannot affect the way that the kernel interacts with other tabs.
???
- Cookie confidentiality & integrity : cookies for a domain can only be accessed by tabs of that domain.
This will depend on per-component state.
Can we use ImmBefore and ImmAfter for this?
Should we stick with regular expression?
// Don's first draft of this property
(^.*(Exec "tab.py" ?tdomain ?tchan).*
(Exec "cookie.py" ?cdomain ?cchan).*
(RecvMsg ?tchan ?str).*
(SendMsg ?cchan ?str)) ==> (?tdomain = ?cdomain)
- Address bar correctness : the address bar cannot be modified by a tab without the user being involved, and always displays the correct address bar.
This will depend on per-component state.
Can we use ImmBefore and ImmAfter for this?
Should we stick with regular expression?
// Don's first draft of this property
^.*(Exec "stdout.py" ?achan).*(Exec "stdin.py" ?uchan).*
[^ SendMsg ?achan ?]*(RecvMsg ?uchan ?)