🇰🇷 한글 설명
FTP 와일드카드 LIST 작업 실패 시 libcurl이 쓰기 콜백 상태를 제대로 복구하지 못해 내부 파서가 남게 되는 결함입니다. 이로 인해 핸들을 재사용하면 크래시가 발생하거나, 핸들을 복제할 경우 힙 Use-After-Free(UAF) 및 타입 혼동(Type Confusion) 취약점이 유발될 수 있습니다.
💡 쉬운 설명
FTP 파일 목록을 가져오다 오류가 나면 프로그램 내부의 설정이 꼬이게 됩니다. 이 상태로 프로그램을 계속 사용하면 프로그램이 갑자기 꺼지거나, 해커가 메모리를 조작하여 공격할 수 있는 위험이 있습니다.
🇺🇸 원문 (English)
When an FTP wildcard `LIST` operation fails, libcurl omits the restoration
path meant for successful listings, leaving the write callback set to the
internal listing parser and the write callback data pointing directly to the
easy handle. Subsequent reuse of this handle triggers an immediate crash, and
cloning it via `curl_easy_duphandle()` copies this corrupted state into the
duplicate. If the original handle is subsequently freed, executing a transfer
on the cloned handle causes a heap use-after-free read against the dangling
handle reference; alternatively, reusing the original or cloned handle while
changing only `CURLOPT_WRITEDATA` (and omitting `CURLOPT_WRITEFUNCTION`)
results in type confusion, forcing the internal parser to interpret incoming
server response bytes into memory at the application-supplied write data
pointer.
📍 영향받는 시스템
libcurl (FTP wildcard LIST operation failure 관련 버전)
⚔️ 공격 벡터
실패한 FTP LIST 작업 후 핸들을 재사용하거나 복제하여 메모리 오류 유도
🛡️ 대응 방법
libcurl을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 libcurl 버전을 확인하여 해당 취약점이 해결된 최신 버전인지 확인
💻 영향받는 소프트웨어
IBM WebSphere Application Server