Computer Systems Security: Winter 2018 Assignment 4: Difference between revisions
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
Due: April 9, 2018, 10 AM | Due: April 9, 2018, 10 AM | ||
<ol> | |||
<li>[1] When code runs in a "sandboxed environment" does this refer to a specific security technology? Explain briefly.</li> | |||
<li>[1] Why is it harder to implement protection boundaries within a process, as compared to having an operating system implement protection boundaries? Explain briefly.</li> | |||
<li>[1] Which is a better interface for implementing security restrictions, function/method calls or system calls? Why?</li> | |||
<li>[2] How do language runtimes (interpreted and just-in-time compiled) provide opportunities for enforcing security properties? Can these properties also be enforced when code is compiled (and at what cost)?</li> | |||
<li>[4] Choose a specific Chrome or Firefox extension. | |||
<ol> | |||
<li>[1] What does this extension do? | |||
<li>[1] What permissions does it need? | |||
<li>[1] Why does it need these permissions? | |||
<li>[1] Is it possible for the extension to perform actions unrelated to its purpose with these permissions? Explain briefly. | |||
</ol> | |||
</li> | |||
<li>[4] How is iOS runtime security (see [https://www.apple.com/business/docs/iOS_Security_Guide.pdf Apple's Security Whitepaper], p. 23-24) like OS virtualization, as implemented, for example, by Linux-VServer? How is it different? Explain each and compare/contrast.</li> | |||
<li>[8] Define whitelists, blacklists, anomaly detection, and virtualization. Explain how they are four fundamental strategies in computer security. For each, give an example of a security mechanism that makes use of the strategy.</li> | |||
</ol> |
Revision as of 06:02, 29 March 2018
This assignment is not yet finalized.
Due: April 9, 2018, 10 AM
- [1] When code runs in a "sandboxed environment" does this refer to a specific security technology? Explain briefly.
- [1] Why is it harder to implement protection boundaries within a process, as compared to having an operating system implement protection boundaries? Explain briefly.
- [1] Which is a better interface for implementing security restrictions, function/method calls or system calls? Why?
- [2] How do language runtimes (interpreted and just-in-time compiled) provide opportunities for enforcing security properties? Can these properties also be enforced when code is compiled (and at what cost)?
- [4] Choose a specific Chrome or Firefox extension.
- [1] What does this extension do?
- [1] What permissions does it need?
- [1] Why does it need these permissions?
- [1] Is it possible for the extension to perform actions unrelated to its purpose with these permissions? Explain briefly.
- [4] How is iOS runtime security (see Apple's Security Whitepaper, p. 23-24) like OS virtualization, as implemented, for example, by Linux-VServer? How is it different? Explain each and compare/contrast.
- [8] Define whitelists, blacklists, anomaly detection, and virtualization. Explain how they are four fundamental strategies in computer security. For each, give an example of a security mechanism that makes use of the strategy.