ClickCease 컬의 20년 된 버그 - 또 다른 수정을 위해 돌아왔습니다 | tuxcare.com

인기 뉴스레터 구독하기

4,500명 이상의 Linux 및 오픈 소스 전문가와 함께하세요!

한 달에 두 번. 스팸이 없습니다.

20년 된 Curl의 버그가 탄력적으로 수정되었습니다 - 또 다른 수정으로 돌아왔습니다 - CVE-2021-22925

by

2021년 7월 22일 TuxCare 홍보팀

몇 주 전에 CVE-2021-22898이 발표되었습니다. 이 취약점은 2001년 3월 22일에 배포된 버전 7.7의 curl/libcurl에 영향을 줍니다. 이 취약점은 거의 사용되지 않는 옵션인 curlopt_telnet옵션이 구문 분석되는 방식에 결함이 있어 데이터가 유출될 수 있다는 내용이었죠. 당시 수정 사항이 생성되어 curl/libcurl 코드베이스에 제출되었고 문제가 해결되었습니다. 즉, 7월 21일에 CVE-2021-22925가 나타나기 전까지는요. 이전 취약점에 대한 초기 수정이 문제를 올바르게 해결하지 못했기 때문에 새로운 수정이 생성된 것으로 보입니다.

이 문제는 curl 7.7부터 7.77.0까지, 즉 curl 7.78.0(또는 그 이상)을 제공하는 최신 배포 버전을 제외하고 지난 20년간 대부분의 Linux 배포판에 기본적으로 포함된 거의 모든 curl 버전에 영향을 미칩니다.

TuxCare의 Lifecycle 연장 지원 팀은 영향을 받는 모든 배포판, 즉 CloudLinux 6, CentOS 6, OracleLinux 6 및 Ubuntu 16.04에 대한 새 패치를 준비하여 제공하기 시작했습니다.

 

 

이전 취약점에 대한 패치는 CURLOPT_TELNETOPTIONS가 악용되어 의도하지 않은 데이터를 서버 외부로 전달하도록 만들 수 있는 상황을 해결했습니다. 그러나 이러한 상황이 발생할 수 있는 두 번째 상황을 놓쳤기 때문에 불완전했습니다.

새로운 수정 사항은 연결의 다른 쪽 끝으로 데이터를 보내기 전에 호출하는 애플리케이션에서 제공한 문자열을 처리할 때 sscanf()를 올바르게 호출하여 두 가지 상황을 모두 해결합니다.

현재로서는 이 결함에 대한 익스플로잇이 없는 것으로 알려져 있으며, 이 옵션은 거의 사용되지 않습니다. 그러나 다른 한편으로 curl과 libcurl은 항상 명시적으로 사용을 알리지 않는 많은 애플리케이션에서 사용됩니다. 따라서 이 옵션을 직접 사용하지 않는다고 해서 시스템의 다른 애플리케이션이 일부 백그라운드 작업에서 이 옵션을 사용할 수 있으므로 이 취약점을 무시해도 안전하다고 생각해서는 안 됩니다.

 

흥미롭게도, 정확히 동일한 코드에서 동일한 문제를 해결한 최초의 취약점인 CVE-2021-22898은 공개 당시에는 20년 2개월이 지난 코드를 수정하는 것이었습니다. 이 게시물에서 설명하는 현재 수정 사항은 정확히 동일한 코드를 수정하기 때문에 모든 의도와 목적을 고려할 때 20년 4개월이 지난 코드를 수정하는 것입니다. 만약 그런 콘테스트가 있었다면, 아마 이 두 가지가 '취약점이 가장 오래 존재한 취약점'이라는 상을 놓고 경합을 벌였을 것입니다.

TuxCare 팀은 Lifecycle 연장 지원 서비스가 적용되는 Linux 배포판에서 알려진 모든 취약점을 테스트하고 수정하기 위해 최선을 다하고 있습니다. 이 서비스 및 기타 TuxCare 서비스에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

Kernel 재부팅, 시스템 다운타임 또는 예정된 유지 보수 기간 없이 취약성 패치를 자동화하고 싶으신가요?

TuxCare 게스트 작가 되기

메일

Linux 환경을 이해하도록
도와주세요!

오픈소스 현황에 대한 설문조사를 완료하면 최고 상금 500달러를 포함한 여러 가지 상품 중 하나를 받을 수 있습니다!

엔터프라이즈 Linux의 미래를 만들기 위해서는 여러분의 전문 지식이 필요합니다!