🇰🇷 한글 설명
curl이 .netrc 파일을 파싱할 때, 줄 끝에 공백 없이 4095개의 연속된 문자가 있고 줄바꿈이 없는 경우 스택 기반 버퍼의 범위를 초과하여 읽거나 쓸 수 있는 취약점입니다. 이로 인해 프로그램이 비정상 종료(Segmentation fault)될 수 있으며, 공격자가 .netrc 파일을 제어할 수 있다면 서비스 거부(DoS) 공격이 가능합니다.
💡 쉬운 설명
curl 프로그램이 사용자 인증 정보를 담은 파일을 읽을 때, 특정 규칙을 어긴 잘못된 파일 형식이 있으면 프로그램이 갑자기 멈춰버릴 수 있습니다. 공격자가 이 파일을 조작하여 프로그램을 강제로 종료시킬 수 있는 문제입니다.
🇺🇸 원문 (English)
curl can be told to parse a `.netrc` file for credentials. If that file endsin a line with 4095 consecutive non-white space letters and no newline, curlwould first read past the end of the stack-based buffer, and if the readworks, write a zero byte beyond its boundary.This will in most cases cause a segfault or similar, but circumstances might also cause different outcomes.If a malicious user can provide a custom netrc file to an application or otherwise affect its contents, this flaw could be used as denial-of-service.
📍 영향받는 시스템
curl (특정 버전 미만, .netrc 파싱 기능 사용 시)
⚔️ 공격 벡터
공격자가 조작된 .netrc 파일을 애플리케이션에 제공하거나 해당 파일의 내용을 수정할 수 있는 경우
🛡️ 대응 방법
curl을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 curl 버전을 확인하여 해당 취약점이 해결된 최신 버전인지 확인합니다.