관리 메뉴

Information Security

MORIA 1.1 본문

VulnHub

MORIA 1.1

HackingPractice 2021. 7. 31. 21:44

MORIA 1.1의 시나리오 내용을 보면 root 권한을 얻는 것이다.

그림 1-1 시나리오

공격자의 칼리 리눅스의 IP 주소를 확인한다.

그림 1-2  ifconfig

IP 주소 192.18.123.111, 서브넷 마스크는 255.255.255.0이다. 공격자의 IP 주소 기반으로 192.168.123.0/24 nmap을 이용하여 스캔한다. 4대의 host가 발견되고 192.168.123.134가 MORIA 1.1의 IP주소다.

그림 1-3 nmap

192.168.123.134 IP주소로 접속하면 웹 페이지를 확인할 수 있다.

그림 1-4 웹 페이지

웹 콘텐츠 스캐너인 dirb를 이용하여 디렉터리 및 숨겨진 콘텐츠를 스캔하면 /w 디렉터리의 존재를 확인할 수 있다.

그림 1-5 dirb

/w 디렉터리로 접속했다.

그림 1-6 디렉터리

웹 페이지 접속을 계속하면 아래와 같은 메시지를 확인할 수 있다.

그림 1-7 접속 결과

접근할 때마다 메시지가 달라지는 것을 알 수 있다.

그림 1-8 메시지

다시 dirb 명령어를 통해 메시지의 소스가 되는 파일을 찾기 위해 -X 옵션 (확장자를 통한 검색)을 사용하면 random.txt를 확인할 수 있다.

그림 1-9 X 옵션

random.txt을 보면 아래와 같은 정보를 획득할 수 있다.

그림 1-10 random.txt

와이어샤크 프로그램을 이용하여 1337 포트만을 필터링했다. 포트를 보면 77, 101, 108, 111, 110, 54, 57로 설정되어 있는 것을 알 수 있다. ACSII 코드로 변환해보면 Mellon69라는 것을 알 수 있다.

그림 1-11 와이어 샤크

ftp로 접속을 시도하면 Balrog!라는 사용자를 알 수 있다.

그림 1-12 ftp 접속

사용자 Balrog! 비밀번호 Mellon69 입력하면 ftp 접속이 되는 것을 알 수 있다.

그림 1-13 ftp 접속 성공

웹의 기본 경로인 /var/www/html 이동하여 파일을 확인하면 아래와 같은 파일을 확인할 수 있다. 

그림 1-14 /var/www/html

새로운 디렉터리 이동을 하면 아래와 같은 이름과 암호를 확인할 수 있다.

그림 1-15 디렉터리 접근

페이지 소스코드를 확인하면 아래와 같이 패스워드가 MD5라는 정보를 알 수 있다.

그림 1-16 소스코드

MD5를 복호화하기 위해 John the Ripper 양식으로 passwd.txt 파일을 만들었다.

그림 1-17 passwd.txt

John the Ripper를 사용하여 패스워드가 복호화된 것을 알 수 있다. (dynamic_6 -> MD5)

그림 1-18 복호화

Balin 계정으로 SSH 접속 시 로그인이 안되는 것을 알 수 있다.

그림 1-19 SSH 접속

Ori 계정으로 SSH 접속 시 로그인이 되는 것을 알 수 있다.

그림 1-20 Ori 계정

ls -al 파일을 보면 .ssh 숨겨진 폴더와 poem.txt 내용을 확인할 수 있다.

그림 1-21 숨겨진 파일

.ssh 숨겨진 폴더로 이동하여 아래와 같은 파일들을 확인할 수 있다.

그림 1-22 .ssh 디렉터리

RSA 개인키 id_rsa와 SSH 서버 공개키로 추측되는 id_rsa.pub 파일과 know_hosts 파일을 확인할 수 있다.

그림 1-23 파일 내용

개인키 파일을 참조하는 -i 옵션을 이용하여 127.0.0.1 접속을 하면 root로 로그인되는 것을 알 수 있다.

그림 1-24 root 로그인

root 유저의 홈 디렉터리에 있는 flag.txt 파일 내용을 확인할 수 있다.

그림 1-24 flag.txt