[하루한줄] CVE-2020-15999: Chrome 0-day, Heap buffer overflow

URL

Heap buffer overflow due to integer truncation in Load_SBit_Png

Target

Google Chrome

Freetype

libpng

Explain

2020-10-21일 Chrome 긴급 패치가 릴리즈 됐습니다. CVE-2020-15999는 Chrome에서 폰트를 렌더링 할 때 사용하는 오픈소스 라이브러리 Freetype와 공식 PNG 라이브러리 libpng 사이에서 발생하는 이슈입니다. 각 라이브러리는 이미지로부터 32-bit integer크기의 width와 height값을 참조해 동작하는데, Freetype은 16-bit로 truncate(축소)한 뒤 bitmap 할당에 사용되는 size를 계산합니다. 이미지의 width와 height가 16-bit 보다 크다면 Freetype에서 할당된 bitmap이 실제 이미지보다 작겠죠? 이 bitmap을 libpng가 사용하면서 heap buffer overflow가 발생하게 됩니다.