[talks] S Ghosh general exam

Melissa M. Lawson mml at CS.Princeton.EDU
Mon Oct 8 16:02:48 EDT 2012

Soumyadeep Ghosh will re-present his research seminar/general exam on 
Monday October 15 at 8AM in Room 402.  The members of his committee 
are:  David August (advisor), Andrew Appel, and Margaret Martonosi.
Everyone is invited to attend his talk, and those faculty wishing to 
remain for the oral exam following are welcome to do so.  His abstract 
and reading list follow below.


A Low-Overhead Framework for Partial Memory Safety

Attacks that violate memory safety to corrupt program state form a large class of security threats. In a type-unsafe language such as C, such attacks can be used to cause program crash, leak privileged information, and inject malicious code. These vulnerabilities often stem from exploitation of program behavior that is undefined in the C standard. Write Integrity Testing (WIT) is a technique that provides partial memory safety, by inserting low-cost runtime checks to enforce only those program behaviors that are defined by the C standard. In this work, we present modifications that extend WIT’s coverage to protect both integrity and confidentiality of memory accesses, at minimal performance costs. We evaluate the performance of the modified framework and also demonstrate the effectiveness of our system in detecting a number of real-world attacks.

Reading List:


[1] A. W. Appel. Modern Compiler Implementation in C. Cambridge University Press, 1998.

[2] J. L. Hennessy and D. A. Patterson. Computer Architecture, Fourth Edition: A Quantitative Approach. Morgan Kaufmann Publishers Inc., 2006.


[1] P. Akritidis, C. Cadar, C. Raiciu, M. Costa, and M. Castro. Preventing memory error exploits with WIT. In Proceedings of the 2008 IEEE Symposium on Security and Privacy, 2008.

[2] D. Avots, M. Dalton, V. B. Livshits, and M. S. Lam. Improving software security with a C pointer analysis. In ICSE, 2005.

[3] S. Chen, J. Xu, E. C. Sezer, P. Gauriar, and R. K. Iyer. Non-control-data attacks are realistic threats. In Proceedings of the 14th conference on USENIX Security Symposium - Volume 14, 2005.

[4] D. Dhurjati, S. Kowshik, V. Adve, and C. Lattner. Memory safety without runtime checks or garbage collection. In LCTES, 2003.

[5] M. Hind. Pointer analysis: Haven’t we solved this problem yet? In 2001 ACM SIGPLAN-SIGSOFT Workshop
on Program Analysis for Software Tools and Engineering (PASTE’01), 2001.

[6] T. Jim, J. G. Morrisett, D. Grossman, M. W. Hicks, J. Cheney, and Y. Wang. Cyclone: A safe dialect of C. In USENIX Annual Technical Conference, 2002.

[7] S. Nagarakatte, J. Zhao, M. M. Martin, and S. Zdancewic. Softbound: highly compatible and complete spatial memory safety for C. In Proceedings of PLDI, 2009.

[8] G. C. Necula, S. McPeak, and W. Weimer. Ccured: type-safe retrofitting of legacy code. In Proceedings of POPL, 2002.

[9] E. Suh, J. W. Lee, and S. Devadas. Secure program execution via dynamic information flow tracking. In Proceedings of ASPLOS, 2004.

[10] E. Witchel, J. Cates, and K. Asanovic. Mondrian memory protection. In Proceedings of ASPLOS, 2002.

More information about the talks mailing list