CVE-2026-40176
Composer는 악성 Perforce 저장소를 통한 Command Injection에 취약합니다
- 게시됨
- 2026. 4. 15.
- 업데이트됨
- 2026. 7. 15.
- CNA 할당 중
- GitHub_M
- 증거 관찰됨
- 2026. 8. 8.
기본 CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H낮음 · 다음 30일
- 백분위수
- 61.8%
- 모델 날짜
- 2026. 10. 13.
EPSS는 통계적 추정치이지 확실성이나 영향의 척도가 아닙니다. 이를 CVSS, KEV 상태, 노출 및 환경과 결합하세요.
요약
Composer는 PHP용 의존성 관리자입니다. 1.0부터 2.2.26까지, 그리고 2.3부터 2.9.5까지의 버전에는 Perforce::generateP4Command() 메서드에 명령 주입 취약점이 포함되어 있습니다. 이 메서드는 사용자가 제공한 Perforce 연결 매개변수(port, user, client)를 적절한 이스케이프 없이 보간하여 셸 명령을 구성합니다. 공격자는 Perforce VCS 저장소를 선언하는 악성 composer.json의 이러한 값을 통해 임의의 명령을 주입할 수 있으며, 이로 인해 Perforce가 설치되어 있지 않더라도 Composer를 실행하는 사용자의 컨텍스트에서 명령이 실행될 수 있습니다. VCS 저장소는 루트 composer.json 또는 Composer 구성 디렉터리에서만 로드되므로, 의존성으로 설치된 패키지의 composer.json 파일을 통해서는 악용될 수 없습니다. 사용자가 공격자가 제공한 composer.json 파일이 포함된 신뢰할 수 없는 프로젝트에서 Composer 명령을 실행하는 경우 위험에 노출됩니다. 이 문제는 Composer 2.2.27(2.2 LTS) 및 2.9.6(메인라인)에서 수정되었습니다.
소스
CVE-2026-40176에 대한 차등 개념 증명으로, 악성 저장소 URL을 통해 Composer의 Perforce 드라이버에서 OS 명령 삽입을 보여주며, 영향을 받는 버전과 패치된 버전에 대한 자동 A/B 테스트를 포함합니다.
Composer의 Perforce 드라이버에서 명령 주입 취약점을 입증하는 개념 증명으로, 두 가지 공격 벡터와 Docker 기반 테스트를 포함합니다.
개념 증명(PoC)으로, Composer의 Perforce 드라이버에서 명령 주입(CVE-2026-40176)을 시연하며, 조작된 저장소 구성을 통해 원격 코드 실행을 가능하게 합니다.
책임 있는 사용
귀하가 소유하고 있거나 테스트할 권한이 있는 시스템에 대해서만 취약점 정보를 사용하십시오. Kitploit은 공개 연구 메타데이터에 연결되며 익스플로잇 코드나 악성 페이로드를 저장하지 않습니다.