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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Enigm-Writeup — Hack The Box - Enigma 머신에 대한 종합적인 침투 테스트 분석 및 익스플로잇 세부 정보로, 로컬 열거, OliveTin CVE-2026-27626 명령 주입, 그리고 루트 권한 상승을 다룹니다. | Kitploit
도구/GitHubGitHub/abdelhakimgafernetworksec/enigm-writeup
Privilege EscalationReconnaissanceVulnerability AnalysisExploitationWeb Application ExploitationPost-ExploitationCTFPenetration TestingLearning & Education

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
Labs & Practice
GitHubabdelhakimgafernetworksec/enigm-writeup

Enigm-Writeup

Hack The Box - Enigma 머신에 대한 종합적인 침투 테스트 분석 및 익스플로잇 세부 정보로, 로컬 열거, OliveTin CVE-2026-27626 명령 주입, 그리고 루트 권한 상승을 다룹니다.

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

Hack The Box: Enigma - 종합 모의 침투 테스트 및 분석 보고서

1. 요약

Enigma는 Hack The Box에서 호스팅되는 중급 난이도의 Linux 머신입니다. 평가 방법론은 표준 모의 침투 테스트 수명 주기를 따릅니다: 정찰, 열거, 자격 증명 수집을 통한 초기 접근, 로컬 열거, 그리고 서비스 계층 취약점(OliveTin의 CVE-2026-27626)을 통한 root 권한 상승. 이 분석 보고서는 대상을 완전히 장악하고 관리자 제어권을 확보하는 데 필요한 단계별 벡터 분석, 도구 세트, 코드 실행 전략, 그리고 교정 지침을 상세히 설명합니다.


2. 정보 수집 및 정찰

2.1 네트워크 포트 스캐닝 (Nmap)

평가는 대상 호스트에서 실행 중인 열린 포트와 서비스를 식별하기 위한 TCP SYN 스캔으로 시작되었습니다.

root@kitploit:~
nmap -p- --min-rate=1000 -T4 <TARGET_IP>

스캔 결과:

  • 포트 22/tcp (SSH): 열림, OpenSSH 데몬 실행 중.
  • 포트 80/tcp (HTTP): 열림, 웹 애플리케이션을 호스팅하는 Nginx/Apache 웹 서버.
  • 포트 2049/tcp (NFS): 열림, 네트워크 파일 공유 서비스.

2.2 웹 열거 및 디렉터리 무차별 대입

디렉터리 탐색 도구(gobuster / ffuf)를 사용하여 포트 80의 웹 서비스를 스캔하여 숨겨진 엔드포인트, 관리 포털 또는 구성 아티팩트를 찾아냈습니다.

  • 내부 인프라 구성 요소를 설명하는 공개 웹 존재 및 개발자 블로그 게시물을 발견했습니다.
  • 데이터베이스 구성 파일 및 자동화 스크립트와 관련된 잠재적 애플리케이션 경로를 식별했습니다.

3. 초기 접근 (사용자 수준 장악)

3.1 자격 증명 발견

웹 애플리케이션 파일과 보조 NFS 공유에 대한 상세 분석을 통해 유효한 개발자 자격 증명을 발견했습니다.

  • 사용자 이름: haris
  • 비밀번호: bestfriends

3.2 SSH를 통한 사용자 셸 확립

발견된 자격 증명을 사용하여 SSH 서비스에 인증하여 대상 시스템에서 대화형 저권한 셸을 확립했습니다:

root@kitploit:~
ssh haris@<TARGET_IP>
  • 대화형 셸 획득: haris@enigma:~$
  • 사용자 플래그(user.txt)를 성공적으로 찾아 획득했습니다.

4. 로컬 열거 및 권한 상승 발견

4.1 내부 서비스 감사

사용자 수준 셸을 확립한 후, 외부에 노출되지 않은 잠재적 공격 표면을 식별하기 위해 로컬 수신 포트와 활성 프로세스를 검토했습니다:

root@kitploit:~
ss -tulpn

주요 발견:

  • OliveTin 자동화 관리 웹 서비스가 root 권한으로 127.0.0.1:1337에서 로컬로 실행 중이었습니다.

4.2 OliveTin 구성 및 취약점 분석

OliveTin 애플리케이션 구성 파일(/opt/OliveTin/config.yaml)을 추가로 검사한 결과, 데이터베이스 백업 작업이 셸 래퍼를 통해 실행되는 것을 확인했습니다. 구체적으로, 구성은 mysqldump 명령 문자열 내에서 db_pass 매개변수를 사용했습니다:

root@kitploit:~
shell: "mysqldump -u {{ db_user }} -p'{{ db_pass }}' {{ db_name }} > /opt/backups/backup.sql"
arguments:
  - name: db_pass
    type: password

이 구성은 db_pass 매개변수가 셸 컨텍스트 내에서 작은따옴표로 묶여 있지만 셸 제어 연산자(예: 세미콜론 ;, 파이프 |, 백틱)를 포함하는 입력을 적절히 정제하지 않기 때문에 치명적인 명령 주입 취약점(CVE-2026-27626)을 도입합니다.


5. 익스플로잇 전략 및 실행 (CVE-2026-27626)

5.1 SSH 포트 포워딩 터널 설정

취약한 OliveTin 서비스가 127.0.0.1:1337에 엄격히 바인딩되어 있기 때문에, Kali 공격 머신에서의 외부 요청은 Connection refused 오류로 차단됩니다. 서비스와 인터페이스하기 위해 SSH를 통한 로컬 포트 포워딩 터널을 설정했습니다:

root@kitploit:~
ssh -L 1337:127.0.0.1:1337 haris@<TARGET_IP>

5.2 익스플로잇 페이로드 제작 및 실행

OliveTin API 엔드포인트(/api/olivetin.api.v1.OliveTinApiService/StartAction)를 대상으로 하는 Python 익스플로잇 스크립트를 사용하여 취약한 매개변수 벡터에 임의의 시스템 명령을 주입했습니다.

원래 mysqldump 명령 래퍼의 엄격한 셸 구문 및 디렉터리 종속성으로 인해, 직접 파일 생성이 때때로 종료 상태 오류(예: 대상 디렉터리 누락 또는 권한 제약)를 초래할 수 있었습니다. 정확한 실행 문자열을 작성하거나 API 취약점을 통해 파일 시스템을 직접 쿼리함으로써 실행 장애물을 우회했습니다.

익스플로잇 인터페이스를 통해 명령 페이로드 실행:

root@kitploit:~
python3 CVE-2026.27626.py -u http://127.0.0.1 -x "cat /root/root.txt"

실행 출력:

root@kitploit:~
[+] Execution ID: 7fd15259-3996-4e03-9ebd-329034ee4e0d
======================================================================
Command Output
======================================================================
exit status 127
Usage: mysqldump [OPTIONS] database [tables]
...
ae9306f5690c4812c6f9445027d0d060
sh: 1: : Permission denied
======================================================================

root 플래그가 명령 출력 스트림을 통해 직접 성공적으로 추출되었습니다.


6. 침투 후 활동 및 침해 증거

  • Root 플래그 획득: ae9306f5690c4812c6f9445027d0d060
  • 관리자 지속성: 대체 지속성 메커니즘은 명령 주입 벡터를 통해 /root/.ssh/authorized_keys에 SSH 공개 키를 추가하여 원활한 관리자 터미널 접근을 부여하는 것입니다.

7. 교정 및 방어 권장 사항

  1. 입력 정제 및 매개변수화: 시스템 명령에 전달되는 애플리케이션 매개변수(예: OliveTin의 데이터베이스 비밀번호)가 영숫자 문자 집합에 대해 엄격히 검증되어 원시 셸 메타문자를 금지하도록 보장합니다.
  2. 최소 권한 원칙: 절대적으로 필요한 경우가 아니면 OliveTin과 같은 관리 자동화 소프트웨어를 root 보안 컨텍스트에서 실행하지 않도록 합니다. 최소 권한을 가진 전용 서비스 계정으로 서비스를 실행합니다.
  3. 소프트웨어 업데이트: 템플릿 매개변수를 통한 명령 주입 취약점이 완화된 패치 버전으로 OliveTin 및 관련 자동화 래퍼를 업그레이드합니다.
  4. 네트워크 분할: 관리 감독에 다중 인증 또는 네트워크 수준 접근 제어 목록(ACL)이 필요한 경우 관리 인터페이스가 루프백 인터페이스에 바인딩되지 않도록 제한합니다.
도구 다운로드