1. Reconnaissance
Result of NMAP
우선 22, 80/tcp 가 열려있습니다.
Result of Dirsearch to web server
2. Initial Access
웹서버에 접속 후 탐색 중 소스보기에 로그인 페이지 경로가 보입니다. [ /cdn-cgi/login/ ]
해당 경로로 접속하면 아래와 같이 로그인 폼이 존재합니다.
sqlmap을 시도해봤지만, sql injection이나 다른 구문은 먹히지 않았습니다.
하여 다시 메인 페이지 탐방 도중 맨 밑부분에 admin@megacorp.com 을 발견하고, 전에 풀었던 박스 비밀번호가 이것과 비슷하다는 것을 알았습니다.
위 사진은 전 단계의 박스 어드민 비밀번호입니다. --> MEGACORP_4dm1n!!
이 비밀번호를 이용해 admin으로 로그인하면, 각종 기능들이 있습니다.
이중 업로드 기능이 있길래 들어와봤더니 Super admin 권한이 필요하답니다.
Account 탭으로 가보면 해당 id의 번호마다 부여되어있는 user number 값을 출력해주는 페이지가 존재합니다.
http://10.10.10.28/cdn-cgi/login/admin.php?content=accounts&id=1
id가 1일 때 admin의 34322를 출력해주고 있으므로, 파이썬 코드를 통해 super admin이 나올때까지 요청을 보냈습니다.
우리는 다음과 같이 Super admin의 user number를 얻었습니다!!! --> 86575
쿠키값의 user 값을 86575로 바꾸고 다시 upload 탭으로 이동해보면, 업로드 기능이 열린 것을 확인할 수 있습니다.
3. Exploit
https://github.com/tutorial0/WebShell/blob/master/Php/php-reverse-shell.php
GitHub - tutorial0/WebShell: WebShell Collect
WebShell Collect. Contribute to tutorial0/WebShell development by creating an account on GitHub.
github.com
위의 리버스 쉘을 열어주는 php 파일을 업로드 하고, Dirsearch 결과로 찾아낸 /uploads 경로에 있는 악성 php파일을 요청했습니다.
web-server/uploads/~~~.php
웹쉘이 열렸습니다 !!
여러 디렉터리 탐색 도중, db connection 파일[db.php]에 username 과 password가 있는 것을 발견했습니다.
해당 비밀번호는 robert라는 유저가 사용하는 비밀번호 같습니다.
result of NMAP에서 22/ssh 포트가 열려있었으므로, robert 계정과 비밀번호를 이용해 ssh 접속을 했습니다.
일반 유저권한의 쉘을 얻었습니다!!
3. Privilege Escalation
id 명령어 결과, 그룹에 robert외에 bugtracker 라는 그룹이 보입니다. 해당 그룹권한의 파일을 찾아봤더니
/usr/bin/bugtracker 가 있었습니다.
해당 파일은 ELF파일로, strings /usr/bin/bugtracker 명령어를 통해 문자열을 탐색해봤더니,
cat /root/reports/라는 문자열이 존재합니다.
하지만 현재 cat에 대한 경로가 지정되어 있지 않은 상태입니다. (/root 속 파일에 접근하기 때문에 set uid가 설정되어 있을 것입니다.)
따라서 저 cat 파일을 내가 원하는 코드로 짜고, 경로를 내가 원하는 cat 파일로 바꾸고 난뒤
해당 bugtracker 파일을 실행하면, root 권한으로 실행된다는 뜻입니다.
아래와 같이 /bin/sh -> 즉 쉘을 실행하는 cat 파일을 /tmp 경로에 생성하고
환경 변수 PATH 맨앞에 /tmp를 추가해 cat /~~~ 명령어가 실행될 때 /tmp/cat 이 실행되도록 바꿨습니다.
그 다음 bugtracker를 실행시키면, /tmp/cat이 실행되고, 그 속의 내용은 /bin/sh 이므로, root shell 이 열립니다.
끝!
4. PS [ 추가 ]
/root 디렉터리에 .config 숨겨진 디렉터리안에 이런 파일이 있는데, 아마 다음 박스에 쓰일 것 같습니다.
진짜 아무생각 없이 뒤적뒤적하다 , 깜짝쿵 ><
'Hack_ing' 카테고리의 다른 글
[HTB]Hack The Box - Cat:: Write up [Mobile] (0) | 2021.10.08 |
---|---|
[HTB]Hack The Box - Vaccine:: Write up (0) | 2021.09.27 |
[HTB]Hack The Box - Archetype :: Write up (0) | 2021.09.15 |
[HTB]Hack The Box - Love :: Write up (0) | 2021.09.01 |
Wordpress 5.1 RCE(Remote Code Execution) (0) | 2021.07.08 |