Validation. In Proceedings of the 42nd IEEE Sym-
posium on Security and Privacy (IEEE S&P), pages
1–17.
Coppit, D. and Lian, J. (2005). Yagg: an easy-to-use gen-
erator for structured test inputs. In Proceedings of
the 20th IEEE/ACM international Conference on Au-
tomated software engineering - ASE ’05, page 356,
New York, New York, USA. ACM Press.
for Standardization (ISO), I. O. (2008). ISO 32000-1: 2008
Document Management–Portable Document Format–
Part 1: PDF 1.7.
Godefroid, P., Kiezun, A., and Levin, M. Y. (2008).
Grammar-based whitebox fuzzing. In Proceedings of
the 29th ACM SIGPLAN Conference on Programming
Language Design and Implementation, pages 206–
215.
Godefroid, P., Peleg, H., and Singh, R. (2017). Learn&fuzz:
Machine learning for input fuzzing. In Proceedings
of the 32Nd IEEE/ACM International Conference on
Automated Software Engineering, ASE 2017, pages
50–59, Piscataway, NJ, USA. IEEE Press.
Gopinath, R., Mathis, B., and Zeller, A. (2020). Mining
input grammars from dynamic control flow. In Pro-
ceedings of the 28th ACM Joint Meeting on European
Software Engineering Conference and Symposium on
the Foundations of Software Engineering, pages 172–
183, New York, NY, USA. ACM.
Groß, S. (2018). Fuzzil: Coverage guided fuzzing for
javascript engines. Master’s thesis, TU Braunschweig.
Guo, R. (2017). MongoDB’s JavaScript fuzzer. Communi-
cations of the ACM, 60(5):43–47.
Harkous, H., Groves, I., and Saffari, A. (2020). Have Your
Text and Use It Too! End-to-End Neural Data-to-Text
Generation with Semantic Fidelity. COLING 2020 -
28th International Conference on Computational Lin-
guistics, Proceedings of the Conference, pages 2410–
2424.
Holler, C., Herzig, K., and Zeller, A. (2012). Fuzzing with
Code Fragments. In 21st USENIX Security Sympo-
sium (USENIX Security 12), pages 445–458, Belle-
vue, WA. USENIX Association.
Höschele, M. and Zeller, A. (2016). Mining input gram-
mars from dynamic taints. In Proceedings of the
31st IEEE/ACM International Conference on Auto-
mated Software Engineering, pages 720–725, New
York, NY, USA. ACM.
Lin, Z. and Zhang, X. (2008). Deriving input syntactic
structure from execution. In Proceedings of the 16th
ACM SIGSOFT International Symposium on Founda-
tions of software engineering - SIGSOFT ’08/FSE-16,
page 83, New York, New York, USA. ACM Press.
Lin, Z., Zhang, X., and Xu, D. (2010). Reverse Engineer-
ing Input Syntactic Structure from Program Execution
and Its Applications. IEEE Transactions on Software
Engineering, 36(5):688–703.
Maurer, P. M. (1990). Generating test data with enhanced
context-free grammars. IEEE Software, 7(4):50–55.
Ruderman, J. (2007). Introducing jsfunfuzz. URL
http://www. squarefree. com/2007/08/02/introducing-
jsfunfuzz, 20:25–29.
Sirer, E. G. and Bershad, B. N. (1999). Using production
grammars in software testing. ACM SIGPLAN No-
tices, 35(1):1–13.
Tillmann, N. and de Halleux, J. (2008). Pex–White Box
Test Generation for .NET. In Beckert, B. and Hähnle,
R., editors, Tests and Proofs, pages 134–153, Berlin,
Heidelberg. Springer Berlin Heidelberg.
Toffola, L. D., Staicu, C., and Pradel, M. (2017). Say-
ing ‘Hi!’ is not enough: Mining inputs for effective
test generation. In 2017 32nd IEEE/ACM Interna-
tional Conference on Automated Software Engineer-
ing (ASE), pages 44–49.
Valotta, R. (2012). Taking browsers fuzzing to the next
(dom) level. Proceedings of the DeepSec.
Veggalam, S., Rawat, S., Haller, I., and Bos, H. (2016).
IFuzzer: An Evolutionary Interpreter Fuzzer Using
Genetic Programming. In Askoxylakis, I., Ioannidis,
S., Katsikas, S., and Meadows, C., editors, Computer
Security – ESORICS 2016, pages 581–601, Cham.
Springer International Publishing.
Wang, J., Chen, B., Wei, L., and Liu, Y. (2017). Skyfire:
Data-Driven Seed Generation for Fuzzing. In IEEE
Symposium on Security and Privacy, pages 579–594.
IEEE.
Wang, J., Chen, B., Wei, L., and Liu, Y. (2019). Supe-
rion: Grammar-Aware Greybox Fuzzing. In 2019
IEEE/ACM 41st International Conference on Soft-
ware Engineering (ICSE), volume 2019-May, pages
724–735. IEEE.
Wu, Z., Johnson, E., Yang, W., Bastani, O., Song, D., Peng,
J., and Xie, T. (2019). REINAM: reinforcement learn-
ing for input-grammar inference. In Proceedings of
the 27th ACM Joint Meeting on European Software
Engineering Conference and Symposium on the Foun-
dations of Software Engineering - ESEC/FSE 2019,
pages 488–498, New York, New York, USA. ACM
Press.
Xie, T., Tillmann, N., de Halleux, J., and Schulte, W.
(2009). Fitness-guided path exploration in dynamic
symbolic execution. In IEEE/IFIP International Con-
ference on Dependable Systems Networks, pages 359–
368.
Yang, X., Chen, Y., Eide, E., and Regehr, J. (2011). Find-
ing and understanding bugs in C compilers. In Pro-
ceedings of the 32nd ACM SIGPLAN conference on
Programming language design and implementation -
PLDI ’11, page 283, New York, New York, USA.
ACM Press.
Zhong, R., Chen, Y., Hu, H., Zhang, H., Lee, W., and Wu,
D. (2020). SQUIRREL: Testing Database Manage-
ment Systems with Language Validity and Coverage
Feedback. In Proceedings of the 2020 ACM SIGSAC
Conference on Computer and Communications Secu-
rity, pages 955–970, New York, NY, USA. ACM.
Source Code Implied Language Structure Abstraction through Backward Taint Analysis
571