얼마 전 다른 포스트에서도 다뤘던, JetBrains의 TeamCity서버에서 치명적인 취약점 두 건이 추가로 발견되었다. 이 포스트에서는 TeamCity 및 새로 발견된 두 가지 인증 우회(Authentication Bypass) 취약점1,2 에 대해 알아본다.
목차
TeamCity에 대하여
JetBrains TeamCity3는 지속적 통합 및 배포(CI/CD, Continuous Integration and Deployment/Delivery) 서버로서 소프트웨어 개발 생명주기를 관리하며, 프로젝트 코드를 빌드, 테스트 및 배포하는 과정을 자동화한다. IntelliJ IDEA, PyCharm등 유명 소프트웨어를 제작한 JetBrains의 제품 중 하나로, 소프트웨어 개발 프로젝트 관리를 위해 많이 사용된다.
취약한 버전
이번에 공개된 취약점에 영향을 받는 서버는 자체 설치형(On-Premises) 서버다. 운영중인 서버의 릴리즈 번호(버젼)가 2023.11.3
버전 이하는 모두 취약하다. 새로 릴리즈 된 2023.11.4
버전에서 모든 취약점이 해결되었다.
취약점 정보
CVE-2024-27198
대체 경로(Alternative Path)를 통한 웹 컴포넌트의 인증 우회(Authentication Bypass) 취약점, 인증 받지 않은 공격자가 서버 전체 제어 권한 획득 가능 (CVSS 점수: 9.8)
CVE-2024-27199
경로 순회(Path Traversal)를 통한 웹 컴포넌트의 인증 우회 취약점, 서버 인증서 및 서비스 포트 번호 등 조작 가능 (CVSS 점수: 7.3)
예상 피해 범위
이 취약점들은 공격자가 인증을 우회하여 서버의 관리자 권한을 획득할 수 있게 하며, 이를 통해 서버 내의 프로젝트, 빌드, 에이전트 및 아티팩트를 완전히 제어할 수 있다. 공격자는 이를 이용하여 취약한 서버를 완전 장악하고, TeamCity 에서 관리되는 프로젝트에 대해 공급망 공격(Supply Chain Attack)을 수행할 수 있다.
취약 여부 확인 방법
실행 중인 서버의 버전 확인, 2023.11.3
이하인 경우 취약
패치 방법
JetBrains에서 2024년 3월 3일 두 가지 취약점 모두를 수정하는 TeamCity 2023.11.4
버젼을 릴리즈 하고, 관련 정보를 블로그에 공개했다4.
패치 방법은 두 가지로, 새로 릴리즈된 2023.11.4
버전으로 서버를 업그레이드하거나, JetBrains에서 제공하는 보안 패치 플러그인을 설치해 취약점을 해결할 수 있다.
만약 최신 버젼으로 서버를 업데이트 할 수 없을 경우, 보안 패치 플러그인 설치를 권장한다. JetBrains 블로그 포스트의 ‘Mitigation option 2: Apply the security patch plugin‘ 항목5을 참고하여 보안 플러그인을 설치 할 수 있다. 운영중인 서버 버젼에 따라 2018.1 포함 이전 버젼, 2018.2 포함 이후 버젼 두 가지가 제공되며, 자세한 플러그인 설치 방법은 JetBrains 홈페이지의 ‘플러그인 설치 도움말‘6 문서를 참고한다.
요약(TL;DR)
JetBrains TeamCity On-Premises 버전에서 서버 장악까지 가능한 취약점이 두 가지 발견되었다. 각각 CVE-2024-27198
, CVE-2024-27199
으로 공격자가 인증을 우회하여 서버의 관리자 권한을 획득하고 장악할 수 있다. 또한, TeamCity 내에서 관리되는 프로젝트에 접근해 공급망 공격(Supply Chain Attack)을 수행할 수 있다. JetBrains에서는 2024년 3월 3일에 두 가지 취약점이 수정된 2023.11.4
버전을 릴리즈 했다. 이전 버젼 사용자는 즉시 보안 패치 플러그인을 설치하거나, 2023.11.4
버젼으로 서버 업데이트를 진행할 것을 권장한다.
참고자료
- CVE-2024-27198
https://nvd.nist.gov/vuln/detail/CVE-2024-27198 ↩︎ - CVE-2024-27199
https://nvd.nist.gov/vuln/detail/CVE-2024-27199 ↩︎ - JetBrains TeamCity
https://www.jetbrains.com/teamcity/ ↩︎ - Additional Critical Security Issues Affecting TeamCity On-Premises (CVE-2024-27198 and CVE-2024-27199) – Update to 2023.11.4 Now
https://blog.jetbrains.com/teamcity/2024/03/additional-critical-security-issues-affecting-teamcity-on-premises-cve-2024-27198-and-cve-2024-27199-update-to-2023-11-4-now/ ↩︎ - Section – Mitigation Option 2
https://blog.jetbrains.com/teamcity/2024/03/additional-critical-security-issues-affecting-teamcity-on-premises-cve-2024-27198-and-cve-2024-27199-update-to-2023-11-4-now/#mitigation-option-2-apply-the-security-patch-plugin ↩︎ - TeamCity – Installing additional plugins – Installing Plugin via Web UI
https://www.jetbrains.com/help/teamcity/installing-additional-plugins.html#Installing+Plugin+via+Web+UI ↩︎