Critical Jenkins Server Vulnerability Could Leak Sensitive Information
인기있는 오픈 소스 자동화 서버 소프트웨어인 Jenkins가 지난 월요일 메모리 충돌 및 기밀 정보 유출로 이어질 수 있는 Jetty 웹 서버에 존재하는 치명적인 취약점을 알리는 권고를 발표했습니다.
CVE-2019-17638로 등록된 이 취약점은 CVSS 점수 9.4를 기록했으며 소프트웨어 프레임워크에 사용하는 Java HTTP 서버 및 웹 콘테이너를 제공하는 전 기능 도구인 Eclipse Jetty 버전 9.4.27.v20200227 ~ 9.4.29.v20200521에 영향을 미칩니다.
“Jenkins는 java -jar jenkins.war를 통해 시작될 때 HTTP와 servlet 서버로 동작하기 위해 Jetty를 둘러싼 래퍼인 Winstone-Jetty와 번들로 제공됩니다. 이를 통해 Jenkins가 어떤 인스톨러와 패키지를 통해서도 실행되지만 Tomcat과 같은 servlet 콘테이너를 사용하여 열 때는 실행되지 않도록 할 수 있습니다.”
“이 취약점은 인증받지 않은 공격자가 다른 사용자를 위한 민감 정보를 포함한 HTTP 응답 헤더를 얻도록 허용할 수 있습니다.”
Jetty와 Jenkins Core에 영향을 미치는 이 취약점은 Jetty 버전 9.4.27에서 대규모 HTTP 응답 헤더를 처리하고 버퍼 오버플로우를 예방하는 메커니즘이 추가되었을 때 함께 추가된 것으로 보입니다.
Jetty의 프로젝트 담당자인 Greg Wilkins는 아래와 같이 밝혔습니다.
“이 이슈는 버퍼 오버플로우로 헤더 버퍼를 릴리즈 했지만 필드에 null 처리를 하지 않아 발생했습니다.”
이를 처리하기 위해 Jetty는 HTTP 응답 헤더가 버퍼 풀에 두 번 릴리즈되어 결국 메모리 충전과 정보 공개가 발생하는 HTTP 431 에러를 발생시키는 예외를 만들었습니다.
이 이중 릴리즈를 통해 스레드 2개가 동시에 해당 풀의 동일한 버퍼를 획득하여 하나의 요청을 통해 세션 식별자, 인증 크리덴셜, 기타 민감 정보를 포함했을 가능성이 높은 다른 스레드에서 작성한 응답에 접근할 수 있게 됩니다.
즉 “스레드 1이 응답 1 데이터를 쓰기 위해 ByteBuffer를 사용하는 동안, 스레드 2는 ByteBuffer를 응답 2 데이터로 채울 수 있게 됩니다. 이로 인해 요청 1을 발행 후 응답을 기다리는 클라이언트 1이 클라이언트 2를 위해 작성된 민감 정보를 담고 있을 가능성이 있는 응답 2를 열람할 수 있게 되는 것입니다.”
한 경우에는, 클라이언트가 세션 사이를 이동할 수 있도록 허용하는 메모리 충돌이 발생했습니다. 이로 인해 계정간 액세스가 가능했습니다. 한 사용자의 응답 내 인증 쿠키가 또 다른 사용자에게 전송되었기 때문에 사용자 A가 사용자 B의 세션으로 점프할 수 있게 되었습니다.
이 보안 권고가 발행된 후, 해당 취약점은 지난 달 공개된 Jetty 9.4.30.v20200611에서 수정되었습니다.
명령줄 인터페이스를 통해 Jetty를 번들로 제공하는 Winstone은 어제 공개된 Jenkins 2.243 및 Jenkins LTS 2.235.5를 통해 이 취약점을 패치했습니다.
Jenkins를 사용할 경우 버퍼 충돌 취약점을 완화하기 위해 최신 버전으로 소프트웨어를 업데이트할 것을 권장합니다.
출처:
https://thehackernews.com/2020/08/jenkins-server-vulnerability.html
https://www.jenkins.io/security/advisory/2020-08-17/
https://nvd.nist.gov/vuln/detail/CVE-2019-17638
https://bugs.eclipse.org/bugs/show_bug.cgi?id=564984
WannaRen 랜섬웨어 제작자, 보안 업체에 복호화 키 공개해 (0) | 2020.08.20 |
---|---|
크립토재킹 웜, Docker 시스템에서 AWS 크리덴셜 훔쳐 (0) | 2020.08.19 |
화웨이 금지령, 미국 기술을 사용한 외산 칩까지 확대돼 (0) | 2020.08.18 |
연구원들, Emotet의 취약점 활용하여 확산 막아 (0) | 2020.08.18 |
FBI와 NSA, 러시아 해커들이 사용하는 새로운 리눅스 악성코드인 Drovorub 공개 (0) | 2020.08.14 |
댓글 영역