您当前位置: 首页  >  科学研究  >  学术动态  >  正文

学术动态

庆祝吉林大学计算机学科成立50周年系列暨 计算机科学技术专家讲座(十一)——Roland H. C. Yap

发布日期:2026-09-11 发布人: 点击量:

报告题目:Finding Bugs in Interpreters/Compilers - an Effective Fuzzer for PHP

报告时间:202691710:00

报告地点:吉林大学中心校区王湘浩楼A521

人:Roland H. C. Yap


报告人简介:

Roland Yap is an Associate Professor in the School of Computing, National University of Singapore, Singapore. He received his PhD from Monash University, Australia. He has pioneering work in the development of Constraint Logic Programming languages and the field of Constraint Programming. Together with Christian Bessiere, Jean-Charles Régin, and Yuanlin Zhang, their work on (Generalized) Arc Consistency was awarded the AI Journal Classic Paper Award in 2022. He has worked on the LowFat memory defence which is among the state-of-art defence for spatial memory errors in C/C++ programs. His current research interests include AI, Big Data, Constraints, Operating Systems, Programming Languages, Security and Social Networks.


报告内容简介:

Compilers/Interpreters are the software which execute a program written for a programming language. Fuzzing is generally the method of choice to find bugs in software, particularly since it can be used in a black-box/grey-box fashion. However, programming languages pose challenges: (i) the input must meet syntax and semantics constraints; and (ii) compilers/interpreters are complex so how to exercise

this complexity so that latent bugs show themselves. General purpose fuzzers such as those based on AFL do not deal with these challenges and such can only find few bugs and give low coverage of the underlying compiler/interpreter of the programming language.

In this talk, we wll address the problem of bug discovery from both a software engineering perspective and also a system security one.We show how to effectively fuzz PHP, it's interpreter and JIT engine. PHP runs most of the world's websites, thus, bugs in the underlying engine have the potential for serious consequences. We present a new fuzzer using dataflow, FlowFusion, which has found hundreds of bugs in the underlying PHP engine. FlowFusion has been mainly used to find memory errors and crash bugs. We will also briefly discuss how to find logic bugs in PHP. We will also discuss other programming languages and how to find bugs in their compilers/interpreters.

主办单位:符号计算与知识工程教育部重点实验室

吉林大学计算机科学与技术学院

吉林大学软件学院

吉林大学计算机科学技术研究所

仿真技术教育部重点实验室

网络技术及应用软件教育部工程研究中心

吉林大学国家级计算机实验教学示范中心