연구 소식

Entropic: 정보이론에 기반한 퍼징의 새로운 스케줄링 알고리즘
작성일2020-12-04 03:29:20

퍼징 분야에서 오랫동안 풀리지 않던 문제는 퍼징을 얼마나 오랫동안 돌리면 충분한가에 대한 부분이다. 차상길 교수 연구진은 Monash 대학 연구진과 함께 이 문제에 답하기 위해 AFL, LibFuzzer 등에서 자주 사용되는 grey-box 퍼징 알고리즘을 수학적으로 모델링하고, 퍼징을 통해 새로운 seed를 찾을 수 있는 기대값이 정보이론에서 말하는 엔트로피와 동등하다는 사실을 증명하였다. 즉, 높은 엔트로피를 갖는 seed일수록 새로운 프로그램의 실행 특성을 찾아낼 확률이 높아짐을 알아낼 수 있었고, seed로부터 엔트로피를 계측할 수 있는 알고리즘의 제시를 통해 퍼징을 통해 새로운 버그를 찾아낼 확률을 직접적으로 계산가능함을 보였다. 또한 이를 활용해 퍼징 알고리즘의 효율을 극대화할 수 있는 스케줄링 알고리즘을 제안하였다.

 

 

 

제안된 퍼징 도구인 Entropic은 구글이 운영중인 퍼징 비교 플랫폼인 FuzzBench에서 최근 몇 달간 1위를 차지하기도 했다. 그 뿐 아니라 연구진은 구글 보안팀과 협업하여 LibFuzzer의 메인 코드에 Entropic알고리즘을 이식하는 성과를 이루어냈다.

 

본 연구 결과는 소프트웨어 공학 분야의 최고 학회인 ICSE 2020에 발표되었으며, 연구진은 해당 성과를 인정받아 ACM Distinguished Paper Award를 받기도 했다.