DocumentCode :
459458
Title :
Preventing Secret Leakage from fork(): Securing Privilege-Separated Applications
Author :
Shankar, Umesh ; Wagner, David
Author_Institution :
University of California at Berkeley. ushankar@cs.berkeley.edu
Volume :
5
fYear :
2006
fDate :
38869
Firstpage :
2268
Lastpage :
2275
Abstract :
If trusted processes´ secrets or privileged system objects such as file handles are leaked to an untrusted process, the result could be the loss of secrecy and integrity of the data produced by the program. The advent of privilege-separated programs has led to an additional risk: sensitive data or system objects may be leaked when the trusted process of the privilege-separated application forks an untrusted child process. We have identified several channels by which information may flow to the child process: memory, the environment, memory mappings, filesystem information, and file descriptors. We propose fixes for each of these leaks. Some are handled by a novel static source code analysis of the target privilege-separated application´s source code, but some require modifications to the kernel or compiler. As a proof of concept, we applied our technique to privilege-separated OpenSSH running on the Linux 2.6 kernel. Using our tools, we were able to verify easily that it does not leak secrets from its trusted components to its untrusted components; all sensitive data is erased or downgraded appropriately before being inherited by untrusted components. This suggests that our method is a useful way of reasoning about privilege-separated programs.
Keywords :
Authentication; Communications Society; Cryptography; Data analysis; Kernel; Linux; Risk analysis;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Communications, 2006. ICC '06. IEEE International Conference on
Conference_Location :
Istanbul
ISSN :
8164-9547
Print_ISBN :
1-4244-0355-3
Electronic_ISBN :
8164-9547
Type :
conf
DOI :
10.1109/ICC.2006.255108
Filename :
4024503
Link To Document :
بازگشت