Wins Security Information

보안 정보

앞 내용 보기 다음 내용 보기
취약점 정보[CVE-2021-21669] Jenkins Plugin XXE Injection
작성일 2022-01-21 조회 5086

Jenkins] Jenkins와 Github로 CI 구성하기(Blue Ocean)

 

 

Jenkins의 Generic Webhook Trigger 플러그인에 XXE(XML External Entity Injection)취약점이 존재합니다. 

 

해당 취약점은 /generic-webhook-trigger/invoke 경로에서 XML 데이터에 대한 부적절한 유효성 검사로 인해 발생합니다. 원격의 공격자는 악의적으로 조작된 요청을 전송하여 공격할 수 있습니다.

 

공격 성공 시, 임의의 정보가 유출될 수 있습니다.

 

 

 

취약점 설명

 

NVD - CVE-2021-21669

CVSS v2.0 Severity and Metrics:

Base Score: 7.5 HIGH

 

 

 

[그림1. NVD 내역]

 

 

 

취약점 분석

 

해당 취약점은 /generic-webhook-trigger/invoke 경로에서 Jenkins 빌드를 요청할 때, 삽입된 XML 데이터에 대한 부적절한 유효성 검사로로 인해 발생합니다. 

 

 

[그림 2. Jenkins XXE Injection 공격 시도]

 


[그림 2]은 Jenkins Generic Webhook Trigger 플러그인을 이용하여 특정 프로젝트에 빌드를 요청하는 메소드를 Burp Suite를 이용해 잡은 화면입니다. Body 부분에 XML Entity를 활용하여 로컬에 있는 파일의 내용을 가져와 ent 객체 저장하는 것을 볼 수 있습니다. 이 때, ent 객체 있는 내용은 하단의 passwd 태그를 이용해 보여집니다. 

 

 

[그림 3. Jenkins XXE Injection 공격 실행 결과]
 

 

[그림 3] 와 같이 응답값으로 /etc/passwd에 있는 파일의 내용이 보여지는 것을 볼 수 있습니다. 

 

취약한 버전은 Generic Webhook Trigger 1.72 과 이전 버전이며 이후 버전에서는 패치가 되었습니다. 

 

 

 

공격 분석 및 테스트

 

CVE-2021-21669의 공격 패킷은 다음과 같습니다.

 

 

 

[그림 4. 공격 패킷]

 

 

 

취약점 대응 방안

 

1. 최신 버전 사용

 

해당 벤더사에서 발표한 최신의 버전으로 업데이트한다.
https://plugins.jenkins.io/generic-webhook-trigger/#releases

 

 

2. WINS Sniper 제품군 대응 방안

 

[11242] Jenkins Plugin Generic Webhook Trigger XXE
첨부파일 첨부파일이 없습니다.
태그 CVE-2021-21669  Jenkins   Generic Webhook Trigger