curl에 `.netrc` 파일을 사용해 자격 증명을 찾도록 요청하는 동시에 `https://user@example.com/`처럼 사용자 이름은 있지만 비밀번호는 없는 URL을 지정할 경우, 해당 호스트의 `.netrc` 파일에 다른 사용자의 비밀번호가 존재하고 지정된 사용자와 일치하는 항목이 없으면 curl이 그 다른 사용자의 비밀번호를 잘못 가져와 사용할 수 있었습니다.
curl에 `.netrc` 파일을 사용해 자격 증명을 찾도록 요청하는 동시에 `https://user@example.com/`처럼 사용자 이름은 있지만 비밀번호는 없는 URL을 지정할 경우, 해당 호스트의 `.netrc` 파일에 다른 사용자의 비밀번호가 존재하고 지정된 사용자와 일치하는 항목이 없으면 curl이 그 다른 사용자의 비밀번호를 잘못 가져와 사용할 수 있었습니다.
한국어 설명은 영문 원문을 기준으로 제공됩니다. 제품명·버전·보안 식별자는 아래 원문과 함께 확인할 수 있습니다.
영문 원문 보기
When asking curl to use a `.netrc` file to find credentials and at the same time specifying a URL with a username(without a password), like `https://user@example.com/`, curl could wrongly get and use the password for *another* user set in the `.netrc` file for that host if such a one exists and there is no match for the specified user.
영향 제품·버전
제품 curl
영향 버전 curl 8.20.0, 8.19.0, 8.18.0, 8.17.0, 8.16.0, 8.15.0, 8.14.1, 8.14.0, 8.13.0, 8.12.1, 8.12.0, 8.11.1, >= 8.11.1 < 8.21.0
curl의 현재 전체 버전이 공식 영향 범위(curl 8.20.0, 8.19.0, 8.18.0, 8.17.0, 8.16.0, 8.15.0, 8.14.1, 8.14.0, 8.13.0, 8.12.1, 8.12.0, 8.11.1, >= 8.11.1 < 8.21.0)에 포함되는지 확인합니다. OS를 선택하면 해당 OS의 제품·패키지·KB·APAR 확인 명령만 표시됩니다.
조치방안
제3자 참조와 수정 버전 값(8.21.0)은 보조 근거로만 사용하고, 공급사 공식 보안 권고에서 조치 기준을 재확인합니다.
조치 후 확인사항
패치 후 같은 명령으로 전체 버전을 다시 확인해 curl 8.21.0 기준을 충족하는지 확인합니다. 이어서 자격증명 노출·하드코딩 관련 오류·공격 흔적이 새로 발생하지 않는지 확인합니다.