AI 생성TeamCity로 CI/CD 돌리는 팀이라면 지금 업데이트하세요 — 무인증 RCE ‘CVE-2026-63077’

TeamCity로 CI/CD 돌리는 팀이라면 지금 업데이트하세요 — 무인증 RCE 'CVE-2026-63077

🤖 AI 생성 콘텐츠 — 이 글은 AI가 자료를 수집하고 초안을 작성했으며, 발행 전 누슘 운영자가 검수했습니다.

JetBrains가 CI/CD 도구 TeamCity 온프레미스(설치형)의 심각한 보안 취약점(CVE-2026-63077)을 공개했습니다. 로그인 없이도 서버를 통째로 장악할 수 있는 무인증 원격 코드 실행 문제입니다. 지금 바로 해야 할 조치를 정리했습니다.

TeamCity를 자체 서버에 깔아 쓰고 있나요? 그렇다면 이 글은 진짜 당신 얘기입니다. 결론부터 말하면 — 로그인도 하지 않은 공격자가 여러분의 빌드 서버에서 아무 명령이나 실행할 수 있는 취약점이 발견됐고, JetBrains는 “지금 업데이트하라”고 강하게 권고하고 있습니다.

2026년 7월 27일, JetBrains는 TeamCity 온프레미스에서 발견된 취약점에 CVE-2026-63077이라는 번호를 붙여 공식 발표했습니다. 심각도는 여러 보안 매체 기준 CVSS 9.8 — 10점 만점에 9.8이면 사실상 최상위 경보입니다.

목차

  • 이 취약점이 정확히 뭔가
  • 왜 CI/CD 서버가 뚫리면 더 위험한가
  • 지금 당장 해야 할 일
  • 자주 묻는 질문 (FAQ)

이 취약점이 정확히 뭔가

핵심만 뜯으면 이렇습니다.

  • 무인증(unauthenticated) — 로그인이 필요 없습니다. 서버 화면에 접근만 할 수 있으면 됩니다.
  • RCE(원격 코드 실행) — 남이 내 서버에서 원하는 명령을 실행할 수 있게 되는 상태입니다. 현관 비밀번호가 통째로 털린 것과 같습니다.
  • 경로 — TeamCity의 ‘에이전트 폴링 프로토콜(agent polling protocol)’을 통해 인증 검사를 우회합니다.

JetBrains 설명을 그대로 옮기면, HTTP(S)로 TeamCity 서버에 접근할 수 있는 공격자가 인증을 건너뛰고 TeamCity 서버 프로세스의 권한으로 운영체제 명령을 실행할 수 있습니다. 서버 프로세스가 강한 권한으로 돌고 있었다면 피해도 그만큼 커집니다.

그리고 무서운 한 줄. 모든 버전의 TeamCity 온프레미스가 영향을 받습니다. “우리는 옛날 버전이라 괜찮겠지”가 안 통합니다. 다만 클라우드(TeamCity Cloud) 사용자는 이미 조치가 끝나 별도로 할 일이 없다고 JetBrains는 밝혔습니다.

이 문제는 2026년 7월 10일 보안 연구자 안토니 트렘블레이(Antoni Tremblay)가 비공개로 제보했고, 조율된 공개 절차를 거쳐 7월 27일 발표됐습니다. 발표 시점 기준으로 실제 공격에 악용된 정황은 아직 없다고 합니다. 하지만 이건 좋은 소식이자 시한폭탄입니다 — 취약점이 공개된 순간부터 공격자들도 같은 정보를 보기 때문이죠.

로그인 없이 인증을 우회해 서버 명령을 실행하는 무인증 RCE 경로 개념도

왜 CI/CD 서버가 뚫리면 더 위험한가

여기가 이 글에서 제일 중요한 부분입니다. “빌드 서버 하나 뚫린 거 아냐?”라고 넘기면 안 됩니다.

CI/CD 서버는 개발 조직의 심장이자 금고입니다. 코드를 받아서, 빌드하고, 테스트하고, 실제 서비스로 배포까지 하죠. 그 과정에서 이 서버는 온갖 열쇠를 쥐고 있습니다. 소스 코드, 각종 설정, 그리고 배포에 쓰는 저장된 자격증명(비밀번호·토큰·키)까지요.

JetBrains도 짚습니다. 공격이 성공하면 TeamCity 데이터·설정·저장된 자격증명이 노출되고, 서버 상태가 조작될 수 있으며, 빌드 산출물(artifact)과 그 아래로 이어지는 CI/CD 파이프라인의 무결성까지 훼손될 수 있다고요.

이게 왜 무섭냐면 — 빌드 서버가 뚫리면 거기서 만들어져 배포되는 모든 것이 의심스러워집니다. 공격자가 빌드 과정에 악성 코드를 슬쩍 끼워 넣으면, 그 소프트웨어를 받는 고객·사용자에게까지 피해가 번집니다. 이걸 ‘공급망 공격(supply chain attack)’이라고 부릅니다. 우물 하나에 독을 타면, 그 물을 마시는 온 마을이 당하는 구조죠.

지금 당장 해야 할 일

JetBrains가 제시한 조치는 두 갈래입니다.

방법 내용
① 업데이트 (권장) TeamCity 서버를 2025.11.7 또는 2026.1.3으로 올린다. 이 버전에 패치가 들어 있다.
② 보안 패치 플러그인 당장 업그레이드가 어려우면, 2017.1 이상용으로 배포된 보안 패치 플러그인을 설치한다.
TeamCity 업데이트 권장 버전과 보안 패치 플러그인 대응 방법

가능하면 무조건 ①번입니다. 플러그인은 이 특정 취약점만 막아주는 응급조치일 뿐, 최신 버전에 담긴 다른 보안 개선은 못 받거든요.

추가로 JetBrains가 권하는 장기 습관도 있습니다. 인터넷에 그대로 노출된 TeamCity 서버라면 VPN 뒤에 두거나 접근을 신뢰된 네트워크로 제한하고, 서버 프로세스는 꼭 필요한 최소 권한으로만 돌리고, 빌드 에이전트와는 별도 호스트에서 운영하라는 겁니다. 로그인 화면이나 REST API가 외부에 열려 있는 것만으로도 공격의 발판이 될 수 있으니까요.

자주 묻는 질문 (FAQ)

Q. TeamCity Cloud만 쓰는데 저도 조치해야 하나요? A. 아니요. JetBrains는 TeamCity Cloud에는 이미 필요한 조치를 적용했고, 클라우드 환경이 이 취약점으로 악용된 정황은 없다고 확인했습니다. 이번 경보는 직접 설치해 운영하는 온프레미스 사용자를 위한 것입니다.

Q. 우리 서버는 사내망에만 있는데 그래도 위험한가요? A. 외부 인터넷에 노출된 서버보다는 위험이 낮습니다. 하지만 사내에서 접근 가능한 누군가나, 내부망에 이미 침투한 공격자에게는 여전히 통합니다. ‘모든 온프레미스 버전이 영향’을 받으므로, 노출 여부와 무관하게 패치가 정답입니다.

Q. 어떤 버전으로 올려야 하나요? A. 2025.11.7 또는 2026.1.3입니다. 둘 중 하나로 업데이트하면 CVE-2026-63077이 해결됩니다. 즉시 올리기 어렵다면 2017.1 이상에서 쓸 수 있는 보안 패치 플러그인을 먼저 적용하세요.

Q. 이미 공격당했는지 어떻게 아나요? A. 발표 시점 기준 공개된 악용 사례는 없지만, 방심은 금물입니다. 서버·에이전트 로그에서 낯선 명령 실행, 예상 못 한 설정 변경, 알 수 없는 접근 기록을 점검하고, 자격증명이 유출됐을 가능성에 대비해 토큰·비밀번호 교체(로테이션)를 검토하는 게 안전합니다.

마치며

CVE-2026-63077은 “심각도 숫자가 높다”는 것보다 “내 손이 닿는 조치가 명확하다”는 점이 핵심입니다. 업데이트 한 번, 혹은 플러그인 설치 한 번으로 막을 수 있습니다. 문제는 미루는 겁니다. 취약점은 공개되는 순간 공격자에게도 지도가 쥐어지니까요.

TeamCity나 다른 CI/CD 도구를 직접 운영해 보신 분 계신가요? 이번 같은 보안 공지가 떴을 때 사내에서 얼마나 빨리 대응하는지, 업데이트를 미루게 되는 현실적인 이유는 뭔지, IT·컴퓨터 게시판에서 경험을 나눠 주세요. 다음 글에서는 CI/CD 서버를 안전하게 두는 기본 체크리스트를 따로 정리해 보겠습니다.

참고자료


태그: #TeamCity #JetBrains #CVE_2026_63077 #RCE #CICD #보안취약점 #공급망보안 #데브옵스

이 게시판의 글

개발 뉴스