Vulnhub의 MoneyBox 리뷰입니다.
Vulnhub에서 ova 파일을 다운로드해서 VirtualBox에 import 하게 되면 스캔을 해야 될 대상의 IP 정보가 알 수 없는 경우가 있습니다. 이때 다음과 같이 netdiscover를 써서 대상 IP를 알아낼 수 있습니다. (가상 머신의 네트워크 환경을 잘 인지하고 시도합시다)
여기서 192.168.200.146이 침투를 시도해볼 내부 IP로 판단됩니다. 스캔을 시도해봅시다.
스캔 단계에서 FTP 서버에 Anonymous 로그인이 허용되어있고 trytofind.jpg 파일이 보입니다. 해당 파일을 FTP 서버에 Anonymous로 로그인 한 다음 잘 저장해둡시다. 이제 HTTP를 대상으로 정보를 얻어봅시다.
힌트가 될 만한 점은 간단하니 과하게 생각하지 말라는 멘트가 있습니다. ffuf로 hidden directory를 찾아봅시다.
ffuf 결과로 blogs라는 directory를 찾았습니다. blogs에 접속 후 페이지 소스보기로 HTML을 보게 되면 아래와 같이 힌트를 제공해주고 있습니다.
이후 다시 S3cr3t-T3xt 경로로 접속 후 페이지 소스보기를 하게 되면 아래와 같은 Secret Key를 얻을 수 있습니다.
어디에 써먹을 정보인지 생각해보면 FTP 서버에서 발견하고 잘 저장해둔 trytofind.jpg 파일을 스테가노 그래피의 패스워드로 입력해봅시다.
data.txt 파일이 튀어나옵니다. 해당 파일의 내용은 다음과 같습니다.
파일에서 얻을 수 있는 정보는 renu라는 id와 password가 약하니 바꾸라는 내용입니다. 의미인즉슨 hydra로 패스워드를 Brute Forcing 해봅시다.
패스워드는 987654321이었네요 이 정보를 토대로 ssh 접속을 시도하면 다음과 같이 user1.txt 파일에서 첫 번째 플래그를 얻을 수 있습니다.
moneybox라는 문제에서 설명을 보게 되면 플래그는 총 3개입니다 이제 첫 번째 플래그를 획득했으니 다음 플래그를 얻기 위해 /home 밑에 다른 유저가 있는지 보게 되면 lily라는 directory가 하나 보입니다.
user2.txt는 별문제 없이 읽을 수 있었습니다. 이제 남은 일은 root 계정의 권한을 얻어 세 번째 플래그를 얻어야 합니다. renu계정에서는 root 권한으로 실행할 수 있는 파일이 없어 보이니 lily로 로그인해봅시다.
lily로 로그인을 시도하게 될 경우 패스워드를 물어보게 됩니다. 그러나 아직 lily의 패스워드를 알지 못합니다. 정보를 얻기 위해 lily의 directory에서 ssh 공개키로 로그인이 가능한지 살펴봅시다.
공개키는 없어 보입니다. authorized_keys라는 파일만 보이는데 renu에서 lily로 ssh 로그인을 시도하게 될 경우 패스워드 없이 로그인이 성공하게 될 겁니다.
이후 sudo -l로 root 권한으로 실행이 가능한 프로그램을 보게 되면 다음과 같습니다.
이후 마지막 플래그는 root의 directory에서 .root.txt 파일을 읽으면 됩니다.
'Pentest > Vulnhub' 카테고리의 다른 글
[Vulnhub] DeathNote (0) | 2021.09.26 |
---|---|
[Vulnhub] Kioptrix Level 1 (0) | 2021.09.25 |
[Vulnhub] : y0usef (0) | 2021.03.01 |