🇰🇷 한글 설명
webhookd 1.22.0 미만 버전에서 htpasswd 인증 없이 사용될 경우, 모든 HTTP 헤더가 허용 목록 없이 쉘 스크립트 환경 변수로 전달되는 취약점이 존재합니다. 공격자가 X-WebAuthn-User와 같은 헤더를 조작하여 전달하면, 해당 변수를 신뢰하는 스크립트에서 사용자 신원을 위조하고 권한을 우회할 수 있습니다.
💡 쉬운 설명
웹훅 서버가 외부에서 들어오는 정보를 검증 없이 그대로 실행 프로그램에 전달하여 발생하는 문제입니다. 공격자가 이름표를 가짜로 만들어 보내면, 서버가 이를 진짜 사용자로 착각하여 허가되지 않은 동작을 수행할 수 있습니다.
🇺🇸 원문 (English)
webhookd is a minimalist webhook server that triggers shell scripts and external processes through HTTP requests. Prior to 1.22.0, webhookd deployments without htpasswd authentication forwarded all incoming HTTP headers through HTTPParamsToShellVars in pkg/api/index.go into the hook script environment without an allowlist. When an upstream reverse proxy did not strip a client-supplied X-WebAuthn-User header and a hook script trusted that variable for identity or privilege, a remote unauthenticated attacker could spoof another user, bypass script security controls, and access or modify resources available to the impersonated identity. This issue is fixed in version 1.22.0.
📍 영향받는 시스템
webhookd 1.22.0 미만 버전 (htpasswd 인증 미사용 시)
⚔️ 공격 벡터
조작된 HTTP 헤더(예: X-WebAuthn-User)를 포함한 요청을 전송하여 사용자 신원 위조
🛡️ 대응 방법
webhookd를 1.22.0 이상 버전으로 업데이트하거나 htpasswd 인증을 활성화하십시오.
🔧 검증 코드
명령어 결과에 1.22.0 미만의 버전 번호가 출력되면 취약한 버전이 설치된 것입니다.
webhookd --version 2>/dev/null | grep -E '1\.[0-1][0-9]\.'
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
💻 영향받는 소프트웨어
IBM Verify Identity Access