 |
Programming languages and tools for program analysis • Static and dynamic analysis
techniques for bug detection • Static and dynamic analysis techniques for finding
security vulnerabilities in programs • Pointer analysis, its practical applications and precision • Role of
soundness and precision in static analysis tools • Failure and vulnerability recovery
in complex systems, especially Web services • Using alternative sources such as revision
histories for program understanding • Applying AI, data mining, and statistical
learning techniques to the discovery of correct and erroneous program behavior
Visit the Griffin Project page for more information on my Web application security work.
My research bio and a CV
are available.

- Improving Software Security with Precise Static and Runtime Analysis.
Benjamin Livshits, Doctoral dissertation
Stanford University, Stanford, California, December, 2006.
- Mining Additions of Method Calls in ArgoUML.
Thomas Zimmerman, Silvia Breu, Christian Lindig, and Benjamin Livshits.
International Workshop on Mining Software Repositories Challenge,
Shanghai, China, May, 2006.
- Reflection Analysis for Java.
Benjamin Livshits, John Whaley and Monica S. Lam
Presented at the Third Asian Symposium on Programming Languages and Systems,
Tsukuba, Japan, November, 2005.
- Finding Application Errors and Security Flaws Using PQL: a Program Query Language.
Michael Martin, Benjamin Livshits, and Monica S. Lam
Presented at the 20th Annual ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications,
San Diego, California, October 2005.
- DynaMine: Finding Common Error Patterns by Mining Software Revision Histories.
Benjamin Livshits and Thomas Zimmermann
Presented at the ACM SIGSOFT Symposium on the Foundations of Software Engineering (FSE 2005),
Lisbon, Portugal, September 2005.
- Defining a Set of Common Benchmarks for Web Application Security.
Benjamin Livshits
Position paper on Stanford SecuriBench for the Workshop on Defining the State of the Art in Software Security Tools,
Baltimore, August 2005.
- Finding Security Vulnerabilities in Java Applications with Static Analysis.
Benjamin Livshits and Monica S. Lam
In Proceedings of the Usenix Security Symposium, Baltimore, Maryland, August 2005.
- Locating Matching Method Calls by Mining Revision History Data.
Benjamin Livshits and Thomas Zimmermann
In Proceedings of the Workshop on the Evaluation of Software Defect Detection Tools, Chicago, Illinois, June 2005.
-
Context-Sensitive Program Analysis as Database Queries.
Monica S. Lam, John Whaley, Benjamin Livshits, Michael Martin, Dzintars Avots, Michael Carbin, Christopher Unkel.
In Proceedings of Principles of Database Systems (PODS), Baltimore, Maryland, June 2005.
-
Improving Software Security with a C Pointer Analysis.
Dzintars Avots, Michael Dalton, Benjamin Livshits, Monica S. Lam.
In Proceedings of the 27th International Conference on Software Engineering (ICSE), May 2005
-
Turning Eclipse Against Itself: Finding Bugs in Eclipse Code Using Lightweight Static Analysis.
Benjamin Livshits
In Eclipsecon '05 Research Exchange, March 2005.
I maintain a page devoted to Checklipse, the tool described in the paper.
-
Finding Security Errors in Java Applications Using Lightweight Static Analysis.
Benjamin Livshits.
In Annual Computer Security Applications Conference, Work-in-Progress Report, November 2004.
-
Tracking Pointers with Path and Context Sensitivity for Bug Detection in C Programs.
Benjamin Livshits and Monica S. Lam
In Proceedings of the 11th ACM SIGSOFT International Symposium on the Foundations of Software Engineering, September 2003.
- SecuriFly: Runtime Protection and Recovery from Web Application Vulnerabilities.
Benjamin Livshits, Michael Martin, and Monica S. Lam
A technical report, which describes the runtime system for vulnerability protection first described in the OOPSLA '05 paper.
- Reflection Analysis for Java.
Benjamin Livshits, John Whaley, and Monica S. Lam
A technical report, which represents an extended version of the paper above.
- Turning Eclipse Against Itself: Improving the Quality of Eclipse Plugins.
Benjamin Livshits
A technical report, which is an extended version of the paper above.
- Finding Security Vulnerabilities in Java Applications with Static Analysis.
Benjamin Livshits and Monica S. Lam
A technical report, which represents an extended version of the paper above.
-
Finding Application Errors and Security Flaws Using PQL: A Program Query Language.
Michael Martin, Benjamin Livshits, and Monica Lam.
Presented at the Dagstugl seminar on Runtime Verification (07011), January 2007.
- Reflection Analysis for Java.
Benjamin Livshits, John Whaley, and Monica S. Lam
Presented at the Third Asian Symposium on Programming Languages and Systems,
Tsukuba, Japan, November, 2005.
- Finding Application Errors and Security Flaws Using PQL: a Program Query Language.
Michael Martin, Benjamin Livshits, and Monica S. Lam
Presented at the 20th Annual ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications,
San Diego, California, October 2005 (slides and presentation by Michael Martin).
- DynaMine: Finding Common Error Patterns by Mining Software Revision Histories.
Benjamin Livshits and Thomas Zimmermann
Presented at the ACM SIGSOFT Symposium on the Foundations of Software Engineering,
Lisbon, Portugal, September 2005 (slides and presentation by Thomas Zimmermann).
-
Finding Security Vulnerabilities in Java Applications with Static Analysis.
Benjamin Livshits and Monica Lam.
In Usenix Security Symposium, Baltimore, Maryland, August 2005.
-
DynaMine: Finding Common Error Patterns by Mining Software Revision Histories.
Benjamin Livshits and Thomas Zimmermann.
In Dagstugl seminar 05261, June 2005.
- Locating Matching Method Calls by Mining Revision History Data.
Benjamin Livshits and Thomas Zimmermann
In the Workshop on the Evaluation of Software Defect Detection Tools, Chicago, Illinois, June 2005.
-
Using Static Analysis to Find Input Validation Errors in Java Programs.
Benjamin Livshits and Monica S. Lam.
In Stanford 7th Annual Security Workshop, May 2005.
-
Turning Eclipse Against Itself: Finding Errors in Eclipse Sources.
Benjamin Livshits.
In Eclipsecon '05 Research Exchange, March 2005.
-
Finding Security Errors in Java Applications Using Lightweight Static Analysis.
Benjamin Livshits.
Work-in-Progress Report, Annual Computer Security Applications Conference, November 2004.
-
Tracking Pointers with Path and Context Sensitivity for Bug Detection in C Programs.
Benjamin Livshits and Monica S. Lam
11th ACM SIGSOFT International Symposium on the
Foundations of Software Engineering, September 2003.
- Finding Security Violations by Using Precise Source-level Analysis.
Benjamin Livshits and Monica S. Lam
In Stanford 5th Annual Security Workshop, May 2003.
-
Static and Runtime Solutions for Web Application Vulnerabilities.
Benjamin Livshits.
A Poster Presented at a Trust Event, April 2006.
-
Using Eclipse to Detect Security Errors in Web Applications.
Benjamin Livshits.
A Poster Presented at Eclipsecon '05, March 2005.
-
Looking for Memory Leaks.
Benjamin Livshits
An article
on detecting memory leaks in Java for Oracle Developer Network as part of the
Mastering J2EE Application Development Series, 2005.
-
Unsupervised Web Page Clustering.
Paul Ruhlen, Husrev Tolga Ilhan, and Benjamin Livshits.
Report for a project in natural language processing at Stanford (CS 224N), Spring 2000.
-
Applications of Cache-conscious Data Layout to Copying Garbage Collection.
Benjamin Livshits and David Louie.
Report for a graduate project in compilers (CS 612) at Cornell University, May 1999.
-
Mostly copying garbage collector (MCC) for Java.
Benjamin Livshits.
MCC for Java, Undergraduate final project at Cornell, May 1999.
|
|