🇰🇷 한글 설명
Jenkins 1.638 이전 버전에서 CSRF 보호 토큰 생성 시 공개적으로 접근 가능한 솔트값을 사용하여, 원격 공격자가 브루트 포스 공격으로 토큰을 예측하고 CSRF 보호 메커니즘을 우회할 수 있는 취약점입니다. 이를 통해 인증된 사용자의 권한으로 악의적인 작업을 수행할 수 있습니다.
💡 쉬운 설명
Jenkins에서 보안 토큰을 만들 때 누구나 알 수 있는 정보를 사용했기 때문에, 공격자가 이를 추측하여 사용자를 속여 악의적인 명령을 실행시킬 수 있습니다. 마치 비밀번호로 너무 쉬운 문자를 쓰는 것과 같은 문제입니다.
🇺🇸 원문 (English)
Jenkins before 1.638 and LTS before 1.625.2 uses a publicly accessible salt to generate CSRF protection tokens, which makes it easier for remote attackers to bypass the CSRF protection mechanism via a brute force attack.
📍 영향받는 시스템
Jenkins 1.638 이전 및 Jenkins LTS 1.625.2 이전 버전
⚔️ 공격 벡터
브루트 포스 공격으로 CSRF 토큰을 예측하여 피해자의 세션에서 비인가 작업 실행
🛡️ 대응 방법
Jenkins를 1.638 이상 또는 LTS 1.625.2 이상으로 업그레이드
🔧 검증 코드
Jenkins 버전이 1.638 이상인지 확인; 1.638 미만이면 취약점 존재, 1.638 이상이면 안전
curl -s http://TARGET:8080/api/json | jq '.version' 2>/dev/null || grep -oP 'Jenkins.*?(?=</title>|\s)' /var/lib/jenkins/war/WEB-INF/classes/hudson/model/VersionNumber.properties 2>/dev/null