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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
Penetration-Testing-Walkthrough-Hacksudo-Thor — HackSudo Thor에 대한 블랙박스 침투 테스트: Apache mod_cgi를 통한 CVE-2014-6271 Shellshock RCE, sudo 잘못된 구성 및 bash eval 주입과 연결하여 전체 권한 상승을 달성합니다. CSRF 인식 맞춤 무차별 대입 도구 및 Metasploit RPC 자동화를 포함합니다. | Kitploit
도구/GitHubGitHub/heventafese/penetration-testing-walkthrough-hacksudo-thor
Privilege EscalationReconnaissancePassword AttacksVulnerability AnalysisExploitationWeb Application ExploitationPost-ExploitationCTFPenetration Testing

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
Learning & Education
Labs & Practice
GitHubheventafese/penetration-testing-walkthrough-hacksudo-thor

Penetration-Testing-Walkthrough-Hacksudo-Thor

HackSudo Thor에 대한 블랙박스 침투 테스트: Apache mod_cgi를 통한 CVE-2014-6271 Shellshock RCE, sudo 잘못된 구성 및 bash eval 주입과 연결하여 전체 권한 상승을 달성합니다. CSRF 인식 맞춤 무차별 대입 도구 및 Metasploit RPC 자동화를 포함합니다.

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

HackSudo Thor 전체 침투 테스트 워크스루

대상: HackSudo Thor (VulnHub)
목표: 루트 액세스 권한을 획득하고 /root/proof.txt 읽기
환경: pfSense 방화벽으로 분할된 격리된 VirtualBox 랩

목차

  • 개요
  • 네트워크 토폴로지
  • 공격 체인 요약
  • 1단계: 수동 정찰
  • 2단계: 네트워크 발견 및 pfSense
  • 3단계: 대상 스캐닝 및 열거
  • 4단계: 취약점 평가
  • 5단계: 액세스 획득
  • 6단계: 권한 상승
  • 7단계: 사후 침투
  • 8단계: 흔적 제거
  • 악용된 취약점
  • 사용된 도구
  • 권장 사항
  • 저장소 구조
  • 윤리적 고지

개요

이 저장소는 VulnHub에서 Vishal Waghmare가 게시한 의도적으로 취약하게 설계된 가상 머신 HackSudo Thor에 대해 수행된 부분 블랙박스 침투 테스트를 문서화합니다. 목표는 외부 공격자가 격리된 내부 시스템을 손상시키려는 실제 공격을 시뮬레이션하는 것이었으며, 주요 목표는 루트 액세스 권한을 획득하고 /root/proof.txt의 내용을 읽는 것이었습니다.

평가는 전체 침투 테스트 라이프사이클(수동 정찰, 네트워크 발견, 열거, 취약점 평가, 악용, 권한 상승, 사후 침투, 흔적 제거)을 따릅니다.

주요 사용 도구로는 네트워크 스캐닝을 위한 Nmap, 취약점 평가를 위한 Nessus, 주요 악용 및 사후 침투 플랫폼으로 Metasploit Framework가 사용되었습니다. John the Ripper, Hashcat, 온라인 Rainbow Table은 암호 크래킹 단계에서 사용되었지만, 모든 시도는 사용된 해싱 알고리즘의 강력함으로 인해 결국 실패했습니다.

네트워크 토폴로지

가상 랩은 VirtualBox에서 전적으로 구축되었으며, pfSense 2.7.2 방화벽이 관리하는 세 개의 개별 보안 영역을 갖춘 현실적인 엔터프라이즈 네트워크를 시뮬레이션하도록 설계되었습니다. 세 개의 NAT 네트워크는 다음과 같이 구성되었습니다. Kali 공격자 머신이 있는 공용 인터넷을 시뮬레이션하는 WAN 영역, 대상 머신을 호스팅하는 DMZ 영역, 그리고 범위 외 머신이 포함된 내부 LAN 영역입니다.``` Internet Zone — NatNetwork (10.0.2.0/24) │ │ Kali Linux 2025.4 [attacker] — 10.0.2.9 │ pfSense WAN interface — 10.0.2.8 │ ├── pfSense Firewall (boundary device) │ ├── DMZ Zone — DMZnat (10.0.4.0/24) │ ├── HackSudo Thor [TARGET] — 10.0.4.3 │ └── DVWA — 10.0.4.4 (out of scope) │ └── LAN Zone — LANnat (10.0.3.0/24) ├── Metasploitable 2 — 10.0.3.5 (out of scope) └── Windows XP Cyberlab — 10.0.3.4 (out of scope)

![논리적 네트워크 토폴로지 다이어그램](https://assets.kitploit.com/production/public/readmes/36585/c827ed20ecf44ee4dad098bf9e027592664befa19581c4a9947368a33b245929.png)
*pfSense에서 관리하는 논리적 네트워크 토폴로지 보안 영역*

WAN 인터페이스는 DHCP에 의해 `10.0.2.8/24`로 할당되었고, LAN 인터페이스는 `10.0.3.1/24`로 설정되었으며, OPT1(DMZ) 인터페이스는 `10.0.4.1/24`로 설정되었습니다. 실습 환경에 의도적인 오구성을 도입하기 위해 pfSense WAN 인터페이스에 포트 80을 의도적으로 노출시켜, 내부 네트워크의 주요 진입점 역할을 하는 일반적인 실제 운영 관리자 패널 노출을 시뮬레이션했습니다.

---

## 공격 체인 요약```
[Kali Linux — 10.0.2.9]
        │
        │  CSRF-aware Python brute force → admin / pfsense
        ▼
[pfSense webConfigurator — 10.0.2.8:80]
        │
        │  Firewall rules disabled → DMZ and LAN now reachable
        ▼
[HackSudo Thor — 10.0.4.3]
        │
        │  Shellshock RCE (CVE-2014-6271)
        │  Apache mod_cgi → /cgi-bin/shell.sh
        ▼
[Meterpreter shell — www-data]
        │
        │  sudo -u thor /home/thor/hammer.sh
        │  Command injection via eval → bash -i payload
        ▼
[Interactive shell — thor]
        │
        │  GTFOBins: sudo service ../../bin/bash
        ▼
[Root shell]
        │
        ├── /root/proof.txt captured        ✅
        ├── /etc/shadow + /etc/passwd exfiltrated
        └── SSH RSA backdoor planted

1단계: 정찰 (수동)

표적 환경과 접촉하기 전에 공개 출처에서만 정보를 수집했습니다. 두 가지 주요 출처는 HackSudo Thor의 공식 VulnHub 등록 페이지와 작성자의 공개 GitHub 프로필이었습니다.

VulnHub 페이지에서는 표적이 Linux 기반 시스템이며 난이도가 쉬움~중간 정도이고 proof.txt 플래그를 찾는 것이 목표임을 확인했습니다. 작성자의 GitHub 프로필을 검토하여 추가 정보를 얻었습니다. Vishal Waghmare는 전체 HackSudo 시리즈에서 권한 상승을 핵심 과제로 하는 Linux 부트-투-루트 시스템을 일관되게 설계합니다. 이는 능동 단계에 진입하기 전의 위협 모델을 형성했습니다. HTTP와 SSH 서비스가 가장 유력한 공격 표면이었고, 권한 상승 경로는 sudo 설정 오류, SUID 바이너리 남용 또는 맞춤형 서비스 악용을 포함할 것으로 예측되었습니다.

이러한 작성자 패턴 분석은 실제 작업에서도 중요합니다. 시스템이 어떻게 설계되었을 가능성이 있는지, 관리자가 어떤 유형의 약점을 반복할 가능성이 있는지 이해하면 패킷을 하나도 보내지 않고도 방향을 잡을 수 있습니다.

필드세부 정보
표적HackSudo Thor
작성자Vishal Waghmare (@hacksudo)
출시일2021년 8월 3일
난이도쉬움~중간
OSLinux (Debian)
형식VirtualBox OVA
DHCP활성화됨
예상 공격 표면HTTP, SSH, sudo 설정 오류 가능성

2단계: 네트워크 발견 및 pfSense

이 단계에서는 환경과 직접적으로 능동적인 접촉을 시작했습니다. 목표는 모든 활성 호스트를 식별하고, 네트워크 경계를 이해하며, 주요 표적으로 초점을 좁히기 전에 전체 공격 표면을 파악하는 것이었습니다.

경계 장치 찾기

먼저 WAN 서브넷(10.0.2.0/24)에 대해 최소한의 소음을 발생시키는 Nmap 핑 스캔(-sn)을 실행하여 활성 호스트를 발견했습니다. 세 개의 호스트가 식별되었습니다. 10.0.2.1과 10.0.2.2는 표준 VirtualBox 인프라 주소였으므로, 10.0.2.8만이 유일한 비인프라 호스트로 남았습니다. 그 시스템이 즉시 초점이 되었습니다.

10.0.2.8에 대한 전체 SYN 은밀 스캔은 전혀 결과를 반환하지 않았습니다. 이는 오류가 아닌 예상된 동작이었습니다. 엔터프라이즈 방화벽은 포트 스캔에 응답하지 않도록 설계되어 있으며, 패킷을 응답하지 않고 자동으로 삭제합니다. 결과가 없다는 것은 그 자체로 이 시스템이 트래픽을 능동적으로 필터링하는 네트워크 경계 장치임을 확인시켜 주었습니다.

패킷 스캔에 의존하지 않고 실제 실행 중인 서비스를 확인하기 위해 curl을 사용하여 직접 HTTP 요청을 보냈습니다. 이 접근 방식을 선택한 이유는 일반 웹 요청이 스캐닝 도구보다 필터링될 가능성이 훨씬 낮기 때문입니다. 응답은 HTTP/1.1 200 OK와 Server: nginx 헤더, 그리고 pfSense라는 페이지 제목으로 돌아왔으며, 이는 WAN 인터페이스에서 웹 구성기가 포트 80에서 직접 접근 가능함을 확인시켜 주었습니다.

CSRF 우회를 통한 pfSense 무차별 대입

로그인 페이지가 확인되면 다음 단계는 자격 증명을 복구하는 것이었습니다. 처음에는 Hydra가 무차별 대입 도구로 선택되었으나, 두 가지 이유로 실패했습니다. 첫 번째는 실용적인 문제로 rockyou.txt에는 1400만 개 이상의 항목이 포함되어 있어 이 평가의 시간 범위 내에서는 비현실적이었습니다. 두 번째는 기술적이며 더 중요한 문제였습니다. pfSense 2.7.2는 CSRF 토큰 보호를 구현하여 모든 페이지 로드 시 고유한 암호화 토큰을 생성하며, 이 토큰은 자격 증명과 함께 제출되어야 합니다. Hydra의 HTTP POST 모듈은 정적 요청 본문을 제출하며 시도마다 새로운 토큰을 동적으로 가져오는 메커니즘이 없기 때문에 비밀번호를 확인하기 전에 모든 제출이 거부되었습니다.

이를 해결하기 위해 브라우저의 전체 로그인 프로세스를 재현하는 사용자 정의 Python 스크립트를 작성했습니다. 각 비밀번호 시도마다 스크립트는 새 세션을 열고 로그인 페이지를 로드한 후 HTML 양식에서 현재 CSRF 토큰을 추출하고 브라우저가 하는 것처럼 해당 토큰과 함께 자격 증명을 제출합니다. CeWL을 사용하여 pfSense 로그인 페이지를 크롤링하고 관련 용어를 추출한 후 fasttrack.txt로 보완하여 알려진 기본 자격 증명을 포함하는 사용자 정의 단어 목록을 구축했습니다.

스크립트는 자격 증명 admin / pfsense (변경되지 않은 기본값)을 복구했습니다.

pfSense 무차별 대입 출력 - 자격 증명 복구됨 pfSense 자격 증명을 복구하는 사용자 정의 Python 스크립트

내부 네트워크 매핑

대시보드 접근이 설정되면 pfSense 인터페이스 구성을 검토하여 전체 내부 토폴로지를 이해했습니다. 이를 통해 WAN에서는 보이지 않았던 두 개의 서브넷이 드러났습니다. LAN(10.0.3.0/24)과 DMZ(10.0.4.0/24)입니다. 그런 다음 웹 인터페이스를 통해 WAN 방화벽 규칙을 비활성화하고 공격자의 IP에서 두 서브넷으로의 트래픽을 허용하는 두 개의 통과 규칙을 추가했습니다.

두 서브넷에 대한 Nmap 핑 스캔으로 6개의 활성 호스트가 식별되었습니다. 그중 4개는 더 자세히 열거되었으며, 10.0.4.1과 10.0.3.1(pfSense 게이트웨이 인터페이스에 속함)은 제외되었습니다. 버전 탐지, 기본 NSE 스크립트, OS 핑거프린팅을 포함한 결합 서비스 열거 스캔이 4개 호스트 모두에 대해 동시에 실행되었습니다. 결과를 수동 정찰과 교차 참조하여 토폴로지의 모든 시스템이 식별되었습니다.

IP 주소주요 서비스OS식별된 시스템
10.0.4.3SSH 7.9p1, Apache 2.4.38, FTPLinux (Debian)HackSudo Thor
10.0.4.4Apache 2.4.29, DVWA v1.10Linux (Ubuntu)DVWA
10.0.3.4Microsoft IIS 5.1Windows XP/2003WinXP Cyberlab
10.0.3.5vsftpd 2.3.4, SSH, Apache 2.2.8Linux (Ubuntu)Metasploitable 2

표적은 10.0.4.3으로 확인되었습니다. 이후의 모든 활동은 이 시스템에만 집중되었습니다.


3단계: 표적 스캔 및 열거

표적이 식별되면, 공격 표면을 매핑하고 실행 가능한 익스플로잇 경로를 결정하기 위해 해당 서비스에 대한 심층 분석이 수행되었습니다. 이 단계에서는 Metasploit Framework가 주요 플랫폼으로 사용되었으며, 특히 PostgreSQL 백엔드가 모든 스캔 결과(호스트, 서비스, 취약점)를 세션 간에 유지하여 이후 단계에서 다시 스캔하지 않고 참조할 수 있기 때문입니다.

시작하기 전에 msfdb init으로 Metasploit을 초기화하고, db_status로 데이터베이스 연결을 확인했으며, 이후 모든 작업은 msfconsole 내에서 수행되었습니다.

db_nmap 명령을 사용하여 10.0.4.3에 대한 전체 스캔(SYN 은밀 스캔, 서비스 버전 탐지, 기본 NSE 스크립트, OS 핑거프린팅, 모든 65,535 TCP 포트)이 실행되었습니다. 결과는 데이터베이스에 자동으로 저장되었고 hosts 및 services 명령으로 검색되었습니다. FTP(포트 21, Pure-FTPd), SSH(포트 22, OpenSSH 7.9p1), HTTP(포트 80, Apache 2.4.38)의 세 가지 서비스가 열려 있는 것으로 확인되었습니다.

그런 다음 각 서비스는 대상 Metasploit 보조 모듈을 사용하여 더 자세히 열거되었습니다. HTTP 서비스가 가장 많은 주목을 받았습니다. dir_scanner 및 http_crawler 모듈을 사용하여 웹 서버의 모든 접근 가능한 경로와 엔드포인트를 매핑했습니다. 여기서 가장 중요한 발견은 /cgi-bin/ 디렉토리와 shell.sh라는 스크립트였습니다. 별도로 news.php의 HTML 소스 코드를 수동으로 검토한 결과 작성자가 /cgi-bin/ 디렉토리를 참조하는 숨겨진 주석을 발견했으며, 이는 CGI 기반 취약점을 암시하는 의도적인 힌트였습니다. FTP 서비스는 익명 접근이 비활성화되어 있는지 확인되었고, 버전 문자열은 CVE 교차 참조를 위해 기록되었습니다. SSH 배너도 같은 목적으로 검색되었습니다.

4단계: 취약점 평가

도구 다운로드