Help in understanding Symbolic Execution I am an undergraduate CS student and currently reading on software security, particularly on static analysis of programs. I am particularly interested in understanding Symbolic Execution - an implementation technique under static analysis. 

So far, I am unable to understand some of the research papers on the same, because of the lack of deep understanding of Symbolic Execution and its applications and uses.

There aren't many resources on the web, and the ones that are, assume a considerable formal knowledge on this domain from the reader beforehand.

I would appreciate if somebody can explain in depth the concept of Symbolic Execution and how it can be possibly used in program analysis - identifying bugs/vulnerabilities in softwares. 
Any links to some helpful resources on the same that would enable a security enthusiast to get started would be highly appreciated.
Don't worry too much about understanding everything in one source. Try reading several different articles and from their summaries and technical details, you may build up your own understanding.


Symbolic Execution for Software Testing: Three Decades Later, Cristian Cadar and Koushik Sen, 2013.
All You Ever Wanted to Know about Dynamic Taint Analysis and Forward Symbolic Execution (but Might Have Been Afraid to Ask), Edward J. Schwartz, Thanassis Avgerinos, David Brumley, 2010.
Symbolic Execution for Software Testing in Practice – Preliminary Assessment, Cristian Cadar, Patrice Godefroid, Sarfraz Khurshid, Corina S. Pasareanu, Koushik Sen, Nikolai Tillmann, Willem Visser, 2011
From Program to Logic: An Introduction, Patrice Godefroid and Shuvendu Lahiri, 2012
Talk on concolic testing, Koushik Sen
Summary of DART, Koushik Sen
Summary of CUTE, Koushik Sen
Automated Whitebox Fuzz Testing with SAGE, Patrice Godefroid
A Lab exercise, Koushik Sen


If you are looking to develop your understanding by starting from a security context, I recommend this excellent summary of pointers to program analysis material from the Reverse Engineering reddit.