🇰🇷 한글 설명
Jenkins GitHub Plugin 1.46.0 이전 버전에서 GitHub hook trigger for GITScm polling 기능의 JavaScript 코드가 현재 job URL을 부적절하게 처리하여 저장된 XSS 취약점이 발생합니다. Overall/Read 권한을 가진 비익명 공격자가 악의적인 job URL을 설정하여 다른 사용자의 브라우저에서 임의의 JavaScript를 실행할 수 있습니다.
💡 쉬운 설명
Jenkins의 플러그인이 웹사이트 주소를 안전하게 처리하지 않아서, 특정 권한을 가진 사람이 숨겨진 악성 코드를 심을 수 있습니다. 이 코드는 다른 사용자들이 해당 페이지를 방문할 때 자동으로 실행됩니다.
🇺🇸 원문 (English)
Jenkins GitHub Plugin 1.46.0 and earlier improperly processes the current job URL as part of JavaScript implementing validation of the feature "GitHub hook trigger for GITScm polling", resulting in a stored cross-site scripting (XSS) vulnerability exploitable by non-anonymous attackers with Overall/Read permission.
📍 영향받는 시스템
Jenkins GitHub Plugin 버전 1.46.0 이하
⚔️ 공격 벡터
인증된 공격자가 job 설정 페이지에서 URL 필드에 JavaScript 페이로드를 삽입하면, 다른 사용자가 해당 job을 조회할 때 스크립트가 실행됨
🛡️ 대응 방법
Jenkins GitHub Plugin을 1.46.1 이상으로 업그레이드하거나 job URL 입력값의 HTML 인코딩을 확인하는 패치 적용
🔧 검증 코드
GitHub Plugin의 현재 설치 버전을 확인하여 1.46.0 이하이면 취약함. 버전 번호가 1.46.1 이상이면 패치됨
curl -s http://jenkins-host:8080/pluginManager/api/json?tree=plugins[shortName,version] 2>/dev/null | grep -i 'github' | head -1