본문 바로가기
인프라/젠킨스(jenkins)

[JENKINS] CENTOS 젠킨스 업그레이드 2.443

by IT맥구리나스 2024. 1. 31.

보안조치사항 요청으로 젠킨스  업그레이드 하라고 한다.

취약점 정보 (CVE-2024-23897)
- Jenkins에서 args4j 라이브러리를 사용하여 CLI 명령을 처리할 경우 원격 코드 실행, 임의 파일 읽기 취약점이 발생할 수 있음
- 임의 파일 읽기 취약점의 경우 권한이 없는 공격자는 파일의 처음 3줄을 읽을 수 있으며, Overall/Read 권한이 있는 경우 전체 파일을 읽을 수 있음
※ 원격 코드 실행 - 원격에서 서버의 시스템 명령어를 실행할 수 있으며, 서버를 장악 당할 수 있음
※ 임의 파일 읽기 - 원격에서 서버의 시스템 정보를 포함하는 파일들을 읽을 수 있음

심각도
- 현 시점으로 외부에 공개된 exploit 코드가 다수 존재하며, Jenkins 공식 홈페이지에서 최고 점수인 Critical로 책정 (취약점의 영향이 있는 버전 사용 시 최대한 빠르게 조치 부탁드립니다.)
 
영향받는 버전
- Jenkins 2.441를 포함한 이전 버전
- LTS 2.426.2를 포함한 이전 버전

취약점 조치 방안
- 취약점이 수정된 Jenkins 2.442, LTS 2.426.3으로 버전 업데이트를 권고
- 업데이트가 불가능할 경우 CLI에 대한 액세스 비활성화 권고

 

설치개요

젠킨스 업그레이드 전에 /usr/lib/systemd/system/jenkins.service 백업하기

젠킨스 업그레이드

젠킨스 설치시 java11이 적용되어야함, java구버전이면 실행이 안됨

 

 

 

젠킨스 버전 확인하는 방법

WEBUI에서 확인하는게 가장 간단하다.

로그인 후 화면 오른쪽 하단에 버전 표시가 되어있다.

 

YUM으로 설치했다면

yum info jenkins

 

 

젠킨스 업그레이드 하는방법

- 초기 구축시 YUM로 했기 때문에 YUM UPDATE로 진행하고자한다. 방법은 다음 과 같다

# 레파지토리 등록
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

# 젠킨스 버전 업그레이드
yum upgrade jenkins

 

 

업그레이드 자체는 쉽다 그런데 문제가 있으니...

버전 업그레이드 후  재구동하려고보니 아래와 같은 문제가 있었다.

 

디버깅 방법

보통은 systemctl status 서비스명을 치면 상단에 명확한 로그가 바로 나오는데 내 상황은 뜬구름 잡는 에러만 보였다.

자세히 확인하려면 서비스 구동을 시도한 직 후 아래 명령어로 확인하다

journalctl -xe

 

 

에러 내용중에 다음과 같은 에러가 눈에 띄었다.

젠킨스 최신버전은 java11이 필요하단 뜻이다

 

Running with Java 8 from /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.322.b06-1.el7_9.x86_64/jre, which is older than the minimum required version (Java 11).

 

java11 설치 및 적용

자바 최신버전을 설치한다고해도 기존버전이 적용되어있기때문에 alternatives명령어로 버전을 지정해야 한다.

#설치
yum install java-11-openjdk

# 적용
alternatives --config java
숫자로 최신버전 선택

java업글을 했는데 jenkins 실행이 안되서 봤더니 최신 java버전이 적용이 안되어, 버전 적용후 다시 jenkins를 구동함

 

 

그런데 하고 나서보니 jenkins 서비스 port와  https 설정이 날아가버렸다.

yum 업데이트를 하면서 설정파일을 덮어 씌운 모양이다 따라서 아래 설정파일은 젠킨스 업그레이드전 백업을 해두는게 좋다

/usr/lib/systemd/system/jenkins.service

 

 

젠킨스 버전 업그레이드 후 확인

 

centos jenkins 업그레이드

젠킨스 업그레이드

jenkins upgrade

젠킨스 취약점 조치

반응형

댓글