https://www.vulnhub.com/entry/digitalworldlocal-mercy-v2,263/
실습 환경 : VirtualBox
Reconnaissance
└─$ sudo nmap -sn 192.168.45.0/24 -oA ./recon/target-ip
...
Nmap scan report for 192.168.45.28
Host is up (0.00033s latency).
MAC Address: 08:00:27:26:9C:DE (Oracle VirtualBox virtual NIC)
...
└─$ cat ./recon/target-ip.nmap | grep -i 'for' | cut -d ' ' -f 5 | grep '28' > ./recon/target
192.168.45.28
imap과 pop이 있는걸 봐선 이메일과 관련된 서버도 구성을 해놓은 것으로 보입니다
SMB
enum4linux를 통한 정보 수집 진행
유저 목록 확보
# smb_credentials
pleadformercy
qiu
thisisasuperduperlonguser
fluffy
smbmap을 이용하여 null 세션 및 anonymous 세션 확인
authenticated 상태
anonymous 또한 마찬가지
일단 qiu 유저와 pleadformercy 유저는 account가 가능하니 다른 프로토콜의 정보 수집 마저 진행
WEB(8080)
apache tomcat의 기본 웹 화면, 페이지 소스 특이사항 없음
base64로 인코딩 된듯한,,,문자 디코딩 시켜본다
해석을 해보니 뭔가 보안에 대해서 경고를 하고있고 이전에 password 라는 비밀번호를 직원 책상 포스트잇에서 봤다고 하네요
Vulnerability
password 라는 비밀번호의 정보를 획득했습니다. 이전에 SMB에서 얻었던 정보를 토대로 한번 접속해봅니다
qiu 유저에 접근했습니다, 필요할 만한 정보를 수집합니다
아주 좋네요 히스토리를 보면 secrets 디렉터리에서 아무 작업도 하지 않고 openseame 에서 작업하는 것을 볼 수 있습니다
config 파일이 있었는데요 아주 아주 유용한 정보 들입니다 서버 셋팅에 관련된 설정파일들이 다!! 들어있네요
포트 노킹에 관련된것, 웹서버에 관련된 것, smb에 관련된 것 등등
Port Knocking_configuration
Nmap을 통한 정보 수집에서 찾진 못했지만 22번과 80번 이 필터링 되거나 닫겨있나봅니다
우선 두개다 열어보도록 합니다
이제는 열렸네요 80번 포트로 접속하기전 우선 config 파일을 계속 보도록 합니다
웹 configuration에서는 keepalive를 사용하는 것이 확인 되었고, smb의 qiu 유저에 대한 경로가 확인되었습니다
WEB(80)
페이지 소스에서는 별 다른 점 없네요
/nomercy 디렉터리에서는 RIPS라는 것이 발견되었는데 gobuster 툴을 이용하여 추가적인 디렉터리가 있는지 더 확인합니다
여러 파일들이 발견되었는데 디렉터리에 있는 정보도 좋지만 우선 RIPS 0.53 버전이라는 것을 아니깐 searchsploit 툴을 이용하여 공개 취약점을 검색합니다
LFI가 가능한 취약점 이라고 합니다 한번 확인해볼까요?
Exploitation
/windows/code.php?file 파라미터를 수정해 디렉터리 경로 순회 공격을 통해서 /etc/passwd 파일을 읽어 올 수 있었습니다
그렇다면 8080에서 톰캣을 사용하고 있었는데 그 경로를 다시 확인해봅니다
네 유저 정보 확인했습니다
# user_credentials
thisisasuperduperlonguser:heartbreakisinevitable
fluffy:freakishfluffybunny
그리고 초기 웹 사이트에서 확인할 수 있는 링크로 획득한 계정 정보로 로그인을 시도합니다
admin 권한을 가지고 있어서 배포까지 할 수 있도록 되어있군요 war file을 이용해서 배포를 할 수 있을 거같습니다
리버스쉘이나 공격을 하기 위해서 페이로드를 생성해야 하는데, msfvenom을 이용해서 한번 생성해보겠습니다
└─$ nc -nlvp 8888
listening on [any] 8888 ...
이후 파일을 업로드 한 다음 업로드한 파일을 클릭한다
대상 호스트에 초기 침투 완료
그렇다고 한다
Priviliage Escalation
이전에 획득했던 fluffy 유저로 로그인을 해봅니다
tomcat7@MERCY:/$ su fluffy
su fluffy
Password: freakishfluffybunny
Added user fluffy.
$ id; hostname
id; hostname
uid=1003(fluffy) gid=1003(fluffy) groups=1003(fluffy)
MERCY
$ sudo -l
sudo -l
[sudo] password for fluffy: freakishfluffybunny
Sorry, user fluffy may not run sudo on MERCY.
sudo -l 은 이용할 권한이 없군요 해당 유저의 홈 디렉터리로 가서 한번 확안해봅니다
그중에서 timeclock 라는 관리자 계정으로 동작하는 스크립트가 있습니다.
권한 상승을 위해서 관리자 권한으로 실행되는 스크립트에 한번 더 리버스쉘 페이로드를 생성해서 집어 넣을 것입니다
저는 revshells.com에서 mkfifo를 이용해서 리버스쉘을 획득하는 코드를 참고했습니다
이것을 그대로 스크립트에 추가하겠습니다
이후 nc 명령어를 이용하여 7777번 포트 리스닝
└─$ nc -nlvp 7777
관리자 권한 획득 완료!
root@MERCY:~# cat proof.txt
cat proof.txt
Congratulations on rooting MERCY. :-)
root@MERCY:~# cat author-secret.txt
cat author-secret.txt
Hi! Congratulations on being able to root MERCY.
The author feels bittersweet about this box. On one hand, it was a box designed as a dedication to the sufferance put through by the Offensive Security team for PWK. I thought I would pay it forward by creating a vulnerable machine too. This is not meant to be a particularly difficult machine, but is meant to bring you through a good number of enumerative steps through a variety of techniques.
The author would also like to thank a great friend who he always teases as "plead for mercy". She has been awesome. The author, in particular, appreciates her great heart, candour, and her willingness to listen to the author's rants and troubles. The author will stay forever grateful for her presence. She never needed to be this friendly to the author.
The author, as "plead for mercy" knows, is terrible at any sort of dedication or gifting, and so the best the author could do, I guess, is a little present, which explains the hostname of this box. (You might also have been pleading for mercy trying to root this box, considering its design.)
You'll always be remembered, "plead for mercy", and Offensive Security, for making me plead for mercy!
Congratulations, once again, for you TRIED HARDER!
Regards,
The Author
'Vulnhub' 카테고리의 다른 글
[Vulnhub] Prime: 1 Walkthrough (0) | 2024.06.29 |
---|---|
[Vulnhub] Digitalworld.local: Joy Walkthrough (0) | 2024.06.27 |
[Vulnhub] DC: 9 Walkthrough (0) | 2024.06.25 |
[Vulnhub] VulnOS: 2 Walkthrough (0) | 2024.06.24 |
[Vulnhub] LazySysAdmin Walkthrough (0) | 2024.06.23 |