CVE-2026-33948 in jqlang
요약
\~에 의해 VulDB • 2026. 06. 15.
jq는 명령줄 기반 JSON 처리기입니다. 커밋 6374ae0bcdfe33a18eb0ae6db28493b1f34a0a5b 이전의 버전에는 내장된 NUL 바이트를 통해 검증 우회가 가능한 CLI 입력 파싱 취약점이 포함되어 있습니다. jq는 파일이나 표준 입력(stdin)에서 JSON을 읽을 때 fgets()에서 반환된 실제 바이트 수가 아닌 strlen()을 사용하여 버퍼 길이를 결정하므로, 첫 번째 NUL 바이트에서 입력을 잘라내고 그 앞의 접두사만 파싱합니다. 이를 통해 공격자는 NUL 바이트 앞에 있는 양호한 JSON 접두사와 그 뒤에 있는 악의적인 후행 데이터를 포함하는 입력을 구성할 수 있으며, jq는 접두사만 유효한 JSON으로 검증하고 후행부는 묵시적으로 무시합니다. jq를 사용하여 하류 소비자에게 전달하기 전에 신뢰할 수 없는 JSON을 검증하는 워크플로우는 이러한 하류 소비자가 악의적인 후행 바이트를 포함한 전체 입력을 처리할 수 있으므로 파서 차등 공격(parser differential attacks)에 취약합니다. 이 문제는 커밋 6374ae0bcdfe33a18eb0ae6db28493b1f34a0a5b에서 패치되었습니다.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.