Maxwell N. Krohn
Massachusetts Institute of Technology
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Maxwell N. Krohn.
symposium on operating systems principles | 2007
Maxwell N. Krohn; Alexander Yip; Micah Z. Brodsky; Natan Cliffer; M. Frans Kaashoek; Eddie Kohler; Robert Tappan Morris
Decentralized Information Flow Control (DIFC) is an approach to security that allows application writers to control how data flows between the pieces of an application and the outside world. As applied to privacy, DIFC allows untrusted software to compute with private data while trusted security code controls the release of that data. As applied to integrity, DIFC allows trusted code to protect untrusted software from unexpected malicious inputs. In either case, only bugs in the trusted code, which tends to be small and isolated, can lead to security violations. We present Flume, a new DIFC model that applies at the granularity of operating system processes and standard OS abstractions (e.g., pipes and file descriptors). Flume was designed for simplicity of mechanism, to ease DIFCs use in existing applications, and to allow safe interaction between conventional and DIFC-aware processes. Flume runs as a user-level reference monitor onLinux. A process confined by Flume cannot perform most system calls directly; instead, an interposition layer replaces system calls with IPCto the reference monitor, which enforces data flowpolicies and performs safe operations on the processs behalf. We ported a complex web application (MoinMoin Wiki) to Flume, changingonly 2% of the original code. Performance measurements show a 43% slowdown on read workloadsand a 34% slowdown on write workloads, which aremostly due to Flumes user-level implementation.
symposium on operating systems principles | 2005
Petros Efstathopoulos; Maxwell N. Krohn; Steve Vandebogart; Cliff Frey; David A. Ziegler; Eddie Kohler; David Mazières; M. Frans Kaashoek; Robert Tappan Morris
Asbestos, a new prototype operating system, provides novel labeling and isolation mechanisms that help contain the effects of exploitable software flaws. Applications can express a wide range of policies with Asbestoss kernel-enforced label mechanism, including controls on inter-process communication and system-wide information flow. A new event process abstraction provides lightweight, isolated contexts within a single process, allowing the same process to act on behalf of multiple users while preventing it from leaking any single users data to any other user. A Web server that uses Asbestos labels to isolate user data requires about 1.5 memory pages per user, demonstrating that additional security can come at an acceptable cost.
ieee symposium on security and privacy | 2004
Maxwell N. Krohn; Michael J. Freedman; David Mazières
The quality of peer-to-peer content distribution can suffer when malicious participants intentionally corrupt content. Some systems using simple block-by-block downloading can verify blocks with traditional cryptographic signatures and hashes, but these techniques do not apply well to more elegant systems that use rateless erasure codes for efficient multicast transfers. This paper presents a practical scheme, based on homomorphic hashing, that enables a downloader to perform on-the-fly verification of erasure-encoded blocks.
ieee symposium on security and privacy | 2009
Maxwell N. Krohn; Eran Tromer
The Flume system is an implementation of decentralized information flow control (DIFC) at the operating system level. Prior work has shown Flume can be implemented as a practical extension tothe Linux operating system, allowing real Web applications to achieve useful security guarantees. However, the question remains if the Flume system is actually secure. This paper compares Flume with other recent DIFC systems like Asbestos, arguing that the latter is inherently susceptible to certain wide-bandwidth covert channels, and proving their absence in Flume by means of a noninterference proof in the Communicating Sequential Processes formalism.
operating systems design and implementation | 2004
Jinyuan Li; Maxwell N. Krohn; David Mazières; Dennis E. Shasha
operating systems design and implementation | 2004
Michael Walfish; Jeremy Stribling; Maxwell N. Krohn; Hari Balakrishnan; Robert Tappan Morris; Scott Shenker
ACM Transactions on Computer Systems | 2007
Steve Vandebogart; Petros Efstathopoulos; Eddie Kohler; Maxwell N. Krohn; Cliff Frey; David A. Ziegler; M. Frans Kaashoek; Robert Tappan Morris; David Mazières
usenix annual technical conference | 2007
Maxwell N. Krohn; Eddie Kohler; M. Frans Kaashoek
international conference on mobile systems, applications, and services | 2009
Yue-Hsun Lin; Ahren Studer; Hsu-Chun Hsiao; Jonathan M. McCune; King-Hang Wang; Maxwell N. Krohn; Phen-Lan Lin; Adrian Perrig; Hung-Min Sun; Bo-Yin Yang
usenix annual technical conference | 2004
Maxwell N. Krohn