페이지에서 나갈까요?

지금 나가면 작성중인 내용은 저장되지 않아요

본인 인증을 완료하면
할인 혜택을 받을 수 있어요!
본인인증하면 받을 수 있는 할인이 있어요
그래도 페이지를 나갈까요?
SKT 통신사 할인
  •  · 결합 기준일 기준 M+2개월차 100%(월정료 할인), 13개월차 50%할인, 25개월차 50%할인(월10만원 이내)
취약점
[Top-CERT] REST API를 활용한 원격 명령 실행 취약점 분석 CVE-2023-42793
2023
.
11
.
19
CVE-2023-42793

[취약점 개요]

해당 취약점은 JetBrains TeamCity에서 사용하는 인증 예외처리 과정에서 발생한 인증 우회 취약점을 통해 원격명령실행(Remote Code Execution)이 가능한 취약점으로 예외 처리된 부분 중 경로가 와일드카드(/**)로 작성되어 의도하지 않은 경로까지 접근이 허용된 점을 이용하고 REST API를 활용하여 인증 우회 및 명령을 실행할 수 있습니다.

취약점이 발견된 JetBrains TeamCity는 Spring Framwork기반으로 제작되었으며 워크플로, 공동 작업이 가능한 프로그램으로 버전 관리와 이슈 트래킹이 가능한 통합 개발 환경을 제공합니다.

공격자는 특정 버전 이하의 JetBrains TeamCity가 설치된 경우 REST API를 사용하여 와일드카드로 예외 처리된 특정 경로에 접근함으로써 인증 우회 및 명령 실행이 가능합니다.

[영향 받는 소프트웨어 버전]

JetBrains TeamCity-2023-05.3이하

[테스트 환경 구성 정보]

OS : Windows 10

Application : JetBrains TeamCity-2023.05.3

[취약점 테스트 결과]

파이썬 코드를 통해 JetBrains TeamCity에 REST API로 작성된 Payload를 POST패킷으로 보내고, 취약한 모듈을 통해 피해 서버에서 명령을 실행하도록 합니다.

[CVE-2023-42793 POC – Python 코드 실행]

Python 코드 POC는 [서버IP]:8111 /app/rest/users/id:1/tokens/RPC2 경로에 접근하여 관리자 권한을 가진 토큰을 생성합니다. id가 1번인 이유는 초기 설치 시 관리자 id가 1번으로 설정되기 때문입니다. 그리고 /admin/dataDir.html?action=edit&fileName=config/internal.properties&content=에 접근하여 디버그 설정을 활성화 한 후 /app/rest/debug/processs?exePath=”[명령어]” Payload를 전달하여 명령을 실행합니다. 명령 실행 이후 공격에 사용된 토큰은 삭제합니다.

[공격 흔적]

CVE-2023-42793 취약점 공격을 확인할 수 있는 로그는 TeamCity 설치 경로의 Log\teamcity-activities.log 파일에서 확인이 가능합니다. RCE 명령 사용 시 config\internal.properties 접근해서 설정을 변경하고 명령어를 사용하므로, 필터 값으로 config\internal.properties 값이 변경되고 ‘Command line: [명령어]’ 로그가 발견되면 CVE-2023-42793 취약점 공격으로 의심해볼 수 있습니다.

[TeamCity 로깅 흔적]

[teamcity-activities - 설정 변경 및 명령 실행 흔적]

[토큰 생성 흔적]

[REST API - POST 패킷을 통해 토큰 생성]

[설정 변경 흔적]

[REST API - POST 패킷을 통해 디버깅 설정 변경]

[명령어 실행 흔적]

[REST API - POST 패킷을 통해 명령어 전달]

[토큰 삭제 흔적]

[REST API – DELETE 패킷을 통해 생성한 토큰 삭제]

[결론]

CVE-2023-42793 취약점은 REST API를 활용하여 쉽게 권한 상승 및 원격 명령 실행이 가능한 취약점입니다. 또한 로그인 페이지에서 버전 확인이 가능하여 낮은 버전인지 확인 후 바로 악용이 가능하기 때문에 공격자들이 활용할 가능성이 높은 취약점입니다. 따라서 낮은 버전의 TeamCity를 사용하고 있다면 취약점이 해결된 2023.5.4 버전으로 패치해야합니다.

취약점 공격 흔적 탐지 방안 정리

[출처]

https://nvd.nist.gov/vuln/detail/CVE-2023-42793

https://blog.jetbrains.com/teamcity/2023/09/cve-2023-42793-vulnerability-post-mortem

https://github.com/Zenmovie/CVE-2023-42793

디지털 보안 컨설턴트와 함께,
맞춤 서비스와 견적을 알아보세요
중소기업 맞춤형 정보보안
‘사이버가드’ 프로모션 진행 중
실시간 카카오 상담으로
쉽고 빠르게 안내받으세요
전문상담 예약
전화상담 연결
1800-6400

이름을 입력해주세요.

연락처를 입력해주세요.

상담 시간을 선택해주세요.

문의가 완료되었어요.

URL이 복사되었습니다.

구독신청이 완료되었습니다.

불편∙제안사항글 올리기 완료되었습니다