🇰🇷 한글 설명
Jenkins 2.73.1 및 2.83 이전 버전에서 에이전트를 생성하거나 구성할 수 있는 권한을 가진 사용자가 '마스터에서 명령 실행을 통한 에이전트 실행' 방식을 악용할 수 있습니다. 이를 통해 에이전트가 실행될 때 마스터 노드에서 임의의 셸 명령어를 실행할 수 있는 취약점입니다.
💡 쉬운 설명
Jenkins 관리 권한이 낮은 사용자가 마스터 서버에 직접 명령을 내려 서버를 마음대로 조종할 수 있는 보안 구멍입니다. 공격자가 이 권한을 이용하면 서버의 모든 데이터를 훔치거나 시스템을 망가뜨릴 수 있습니다.
🇺🇸 원문 (English)
Jenkins 2.73.1 and earlier, 2.83 and earlier users with permission to create or configure agents in Jenkins could configure a launch method called 'Launch agent via execution of command on master'. This allowed them to run arbitrary shell commands on the master node whenever the agent was supposed to be launched. Configuration of this launch method now requires the Run Scripts permission typically only granted to administrators.
📍 영향받는 시스템
Jenkins 2.73.1 이하 및 2.83 이하 버전
⚔️ 공격 벡터
에이전트 실행 설정 시 'Launch agent via execution of command on master' 옵션을 사용하여 악성 셸 명령어 주입
🛡️ 대응 방법
Jenkins를 최신 보안 패치가 적용된 버전으로 업데이트하고, 에이전트 구성 권한 및 'Run Scripts' 권한을 엄격히 제한
🔧 검증 코드
Jenkins 관리 페이지의 'About Jenkins' 메뉴에서 현재 설치된 버전을 확인하여 취약한 버전인지 대조
curl -s http://<JENKINS_URL>/jnlpJars/jenkins-cli.jar | java -jar - -version 2>/dev/null || echo 'Check Jenkins version via UI'