취약한 Curl 버전이 있는지 환경을 검색하는 방법

취약한 Curl 버전이 있는지 환경을 검색하는 방법

Curl PlatoBlockchain Data Intelligence의 취약한 버전을 찾기 위해 환경을 검색하는 방법 수직 검색. 일체 포함.

보안팀은 문제를 해결하기 위해 위기 모드로 전환할 필요가 없습니다. 명령줄 도구 컬 및 libcurl 라이브러리의 최근 수정된 취약점하지만 그렇다고 해서 영향을 받은 시스템을 식별하고 해결하는 데 대해 걱정할 필요가 없다는 의미는 아닙니다. 시스템을 즉시 악용할 수 없는 경우 보안 팀은 해당 업데이트를 수행할 시간을 갖습니다.

이 기술 팁은 보안 팀이 위험에 빠지지 않도록 하기 위해 수행해야 할 작업에 대한 지침을 집계합니다.

Unix 및 Linux 시스템을 위한 기본 네트워킹 도구인 cURL은 명령줄 및 스크립트에서 데이터를 전송하는 데 사용됩니다. 널리 사용되는 이유는 독립 실행형 유틸리티(curl)와 다양한 유형의 응용 프로그램에 포함된 라이브러리(libcurl)로 모두 사용되기 때문입니다. 개발자가 자신의 코드에서 컬 API에 액세스할 수 있게 해주는 libcurl 라이브러리는 코드에 직접 도입되거나, 종속성으로 사용되거나, 운영 체제 번들의 일부로 사용되거나, Docker 컨테이너의 일부로 포함되거나, Kubernetes 클러스터 노드.

CVE-2023-38545란 무엇입니까?

심각도가 높은 취약점 컬과 libcurl에 영향을 미칩니다 버전 7.69.0~8.3.0, 낮은 심각도 취약점은 libcurl 버전 7.9.1~8.3.0에 영향을 미칩니다. 그러나 기본 조건에서는 취약점을 악용할 수 없습니다. 취약점을 트리거하려는 공격자는 공격자의 제어 하에 있는 악의적인 서버에 컬을 지정하고, 컬이 프록시 확인자 모드를 사용하여 SOCKS5 프록시를 사용하고 있는지 확인하고, 자동으로 리디렉션을 따르도록 컬을 구성하고, 버퍼 크기를 더 작은 크기로 설정해야 합니다. 크기.

에 따르면 야이르 미즈라히JFrog의 수석 보안 연구원인 libcurl 라이브러리는 취약합니다. 다음 환경 변수가 설정된 경우: CURLOPT_PROXYTYPE  유형으로 설정 CURLPROXY_SOCKS5_HOSTNAME, 또는 CURLOPT_PROXY or CURLOPT_PRE_PROXY  구성표로 설정 양말5시간://. 프록시 환경 변수 중 하나가 다음을 사용하도록 설정된 경우에도 라이브러리는 취약합니다. 양말5시간:// 계획. 명령줄 도구는 다음과 같이 실행되는 경우에만 취약합니다. -socks5-호스트 이름 깃발, 또는 -대리 (-x) 또는 –프록시 구성표를 사용하도록 설정 양말5시간://. 영향을 받는 환경 변수를 사용하여 컬을 실행하는 경우에도 취약합니다.

“기계가 취약해지기 위해 필요한 사전 조건 세트(이전 섹션 참조)는 처음에 생각했던 것보다 더 제한적입니다. 따라서 우리는 대다수의 컬 사용자가 이 취약점의 영향을 받지 않을 것이라고 믿습니다.”라고 Mizrahi는 분석에 썼습니다.

취약한 시스템에 대한 환경 스캔

조직에서 가장 먼저 해야 할 일은 환경 범위를 지정하여 컬 및 libcurl을 사용하여 모든 시스템을 식별하고 이러한 전제 조건이 존재하는지 평가하는 것입니다. 조직은 코드용 소프트웨어 구성 분석 도구, 컨테이너 검색, 애플리케이션 보안 상태 관리 유틸리티를 사용하여 시스템 목록을 작성하고 소프트웨어 제공 프로세스를 평가해야 한다고 Cycode의 보안 연구 책임자인 Alex Ilgayev는 말합니다. 취약점이 모든 컬 구현에 영향을 미치지는 않지만 팀이 조사할 잠재적 위치 목록부터 시작하면 영향을 받는 시스템을 식별하는 것이 더 쉬울 것입니다.

다음 명령은 설치된 컬 버전을 식별합니다.

리눅스/맥OS:

find / -name 컬 2>/dev/null -exec echo "발견: {}" ; -exec {} --버전 ;

윈도우 :

Get-ChildItem -경로 C: -Recurse -ErrorAction SilentlyContinue -Filtercurl.exe | ForEach-Object { 쓰기 호스트 "발견: $($_.FullName)"; & $_.FullName --version }

GitHub에는 Defender for Endpoint에서 실행할 쿼리 컬이 설치되었거나 컬을 사용하는 환경의 모든 장치를 식별합니다. Qualys는 규칙을 발표했습니다. 플랫폼을 사용하기 위해.

Docker 컨테이너 또는 기타 컨테이너 기술을 사용하는 조직은 이미지에서 취약한 버전도 검색해야 합니다. 특히 liburl 복사본을 통합하는 docker 이미지 및 유사한 엔터티에서 상당한 수의 재구축이 예상됩니다. Docker가 함께 모였습니다. 지침 목록 모든 이미지를 평가할 때.

기존 저장소를 찾으려면 다음을 수행하십시오.

docker scout repo 활성화 --org /스카우트-데모

로컬 컨테이너 이미지를 분석하려면 다음 안내를 따르세요.

도커 스카우트 정책 [IMAGE] --org [ORG]

Endor Labs의 보안 연구원인 Henrik Plate에 따르면 이번 문제는 조직에서 사용되는 모든 오픈 소스 소프트웨어를 꼼꼼하게 추적하는 것의 중요성을 강조합니다.

Plate는 "curl 및 libcurl의 모든 용도에 대해 아는 것은 실제 위험을 평가하고 컬 패치, 신뢰할 수 없는 네트워크에서 영향을 받는 시스템에 대한 액세스 제한, 기타 대책 구현 등의 문제 해결 조치를 취하기 위한 전제 조건입니다."라고 말했습니다.

응용 프로그램에 소프트웨어 자재 명세서가 함께 제공되는 경우 컬의 인스턴스를 찾기 시작하는 좋은 장소가 될 것이라고 Viakoo Labs의 부사장인 John Gallagher는 덧붙입니다.

결함을 악용할 수 없다고 해서 업데이트가 필요하지 않다는 의미는 아닙니다. 패치 사용 가능 컬 및 libcurl에 직접 적용, 그리고 많은 운영 체제(Debian, Ubuntu, Red Hat 등)도 수정된 버전을 출시했습니다. libcurl은 많은 운영 체제와 애플리케이션에서 사용되는 라이브러리이므로 다른 애플리케이션의 보안 업데이트를 주의 깊게 살펴보세요.

JFrog의 Mizrahi에 따르면 업데이트가 배포될 때까지 한 가지 해결 방법은 SOCKS5 프록시에 연결할 때 컬이 로컬 호스트 이름 확인을 사용하도록 강제하는 것입니다. 이 구문은 양말5h가 아닌 양말5 구성표를 사용합니다. 컬 -x 양말5://someproxy.com. 라이브러리에서 환경 변수를 바꾸십시오. CURLPROXY_SOCKS5_HOSTNAME 과 CURLPROXY_SOCKS5.

보안 엔지니어인 Benjamin Marr에 따르면 침입자, 보안 팀은 시스템이 손상되었음을 나타내는 너무 큰 문자열에 대한 컬 플래그를 모니터링해야 합니다. 플래그는 다음과 같습니다 –socks5-호스트 이름-대리 or –프록시 구성표를 사용하도록 설정 양말5시간://.

타임 스탬프 :

더보기 어두운 독서