[차수영 교수] 소프트웨어분석 연구실(SAL), FSE 2026 논문 게재 승인
2026-04-07
소프트웨어 분석 연구실 (지도교수: 차수영)의 윤재한 학생 (박사과정)의 논문이 소프트웨어공학 분야 최우수 학회인 FSE 2026 (ACM International Conference on the Foundations of Software Engineering)에 게재 승인(Accept) 되었습니다. 본 연구는 고려대학교 서윤지 학생, 고려대학교 오학주 교수님과 공동으로 진행한 연구로, 2026년 7월에 캐나다 몬트리올(Montreal)에서 발표될 예정입니다. 본 논문 "Reducing Coverage-Equivalent Inputs in Grammar-based Fuzzing by Avoiding Recurrent Rule Sequences” 은 대표적인 소프트웨어 테스팅 방법론인 “문법-기반 퍼징 (Grammar-based Fuzzing)”의 성능을 높이기 위한 새로운 기술을 제안하였다. 본 논문의 동기는 최신 문법-기반의 퍼징 도구들이 테스트를 수행하는 동안 같은 코드 영역을 실행하는 Coverage-Equivalent 입력들을 반복해서 만들고 있다는 점이다. 이 문제를 해결하기 위해, 본 논문은 이러한 Coverage-Equivalent 입력의 생성 원인을 자동으로 추출하고 해당 입력들이 다시 만들어지지 않도록 하는 “생성 규칙들”을 자동 생성하는 기술을 만들었다. 본 논문은 연구 결과물(RSFuzz)을 기존의 최신 퍼징 도구들에 결합하고 다양한 입력 포맷을 갖는 12개의 실제 프로그램에서 성능을 평가했다. 실험 결과, RSFuzz를 세 가지 퍼징 도구에 통합함으로써 각각 121개, 46개, 17개의 추가적인 오류를 검출하였고, 코드 라인 커버리지를 각각 6.0%, 4.8%, 3.0% 향상시키며, Coverage-Equivalent 입력 생성을 각각 23.3%, 28.7%, 14.9% 감소시키는데 성공하였다. [논문 정보] - 제목: Reducing Coverage-Equivalent Inputs in Grammar-based Fuzzing by Avoiding Recurrent Rule Sequences - 저자: 윤재한, 서윤지, 오학주, 차수영 - 학회: ACM International Conference on the Foundations of Software Engineering (FSE 2026) Abstract: We present RSFuzz, a new technique to enhance grammar-based fuzzing by reducing the generation of coverage-equivalent inputs during testing. Grammar-based fuzzers apply production rules from a given grammar (e.g., forming a derivation tree) to generate well-structured inputs for the target program. However, a key limitation is that many existing fuzzers still produce a large number of "coverage-equivalent" inputs—those that revisit already explored program paths—thereby restricting their ability to uncover new bugs and improve coverage. To address this issue, RSFuzz automatically identifies recurrent sequences of production rules that lead to coverage-equivalent inputs and prevents their reuse during fuzzing. A key challenge in practice lies in the large number of coverage-equivalent input groups, each with many inputs and corresponding derivation trees, making it difficult to identify the underlying recurrent sequences. RSFuzz tackles this challenge with a customized algorithm that iteratively groups coverage-equivalent inputs, selects promising groups, and extracts recurrent sequences by abstracting derivation trees based on accumulated data while running any grammar-based fuzzer. We integrated RSFuzz with existing random, probabilistic, and grammar-coverage based fuzzers and evaluated it on 12 real-world programs using , JSON, CSV, and Markdown input formats. Experimental results show that incorporating RSFuzz into the three fuzzers detects 121, 46, and 17 additional crashes with distinct stack traces, increases line coverage by 6.0%, 4.8%, and 3.0%, and reduces duplicate-coverage input generation by 23.3%, 28.7% and 14.9%, respectively, compared to their performance without RSFuzz.