외로운 Nova의 작업실

HTB - Stocker 본문

Server Penetesting/Hack-The-Box

HTB - Stocker

Nova_ 2023. 5. 13. 19:25

 

- 환경

공격자 : 10.10.14.27

타겟 : 10.10.11.196

 

- 스캔

 

nmap -Pn -n -p- -sV -sC -v --min-rate 5000 --max-retries 4 -oA nmap 10.10.11.196

웹페이지에 접속해보겠습니다. /etc/hosts 파일에 ip를 넣어주고 웹사이트에 접속해보겠습니다. nginx 웹서버이기때문에 가상호스트가 있을 확률이 높습니다.

가상 호스트를 한번 검색해보겠습니다.

gobuster vhost -w /usr/share/wordlists/domain/subdomain-top10million-5000.txt -u http://stocker.htb --append-domain

dev.stocker.htb를 hosts파일에 넣어놓고 접속해보겠습니다.

이제 공격을 해보겠습니다.

 

- 침투

먼저, 히드라로 딕셔너리 공격을 해보겠습니다.

hydra -l admin -P /usr/share/wordlists/rockyou.txt dev.stocker.htb http-post-form "/login:username=^USER^&password=^PASS^:login-error" -V

히드라로 돌려 놓고 sql injection 공격을 해보겠습니다.

실패했습니다. nosql을 사용할 수도 있으니 nosql injection을 해보겠습니다. 아래 사이트를 참조하면됩니다.

https://book.hacktricks.xyz/pentesting-web/nosql-injection

 

NoSQL injection - HackTricks

pr = requests.post(url, data=params, headers=headers, cookies=cookies, verify=False, allow_redirects=False) pr = requests.post(url, data=params, headers=headers, cookies=cookies, verify=False, allow_redirects=False) if int(requests.post(url, data=params, h

book.hacktricks.xyz

버프 스위트로 패킷을 잡고 content-type을 application/json으로 변경해주고 $ne 값을 이용해서 injection 해줍니다.

패킷을 보내면 로그인이 가능합니다.

 

이제 무슨 기능이 있는지 봐보겠습니다.

구매를 한번 해보겠습니다.

here를 클릭해보겠습니다.

이건 서버쪽에서 구매에대한 정보를 서버쪽에 넘기고 html만들고 그것을 pdf로 변환해서 보여주는 것 같습니다. 패킷을 한번 봐보겠습니다.

이런식으로 패킷을 넘겨주는 것을 확인할 수 있습니다. 이때, xss 인젝션을 실행할 수 있습니다. CVE-2020-24815 아래 링크로 접속해보시면 알 수 있습니다.

https://www.triskelelabs.com/blog/extracting-your-aws-access-keys-through-a-pdf-file

 

Extracting your AWS Access Keys through a PDF file

Do you know your AWS access keys could be extracted by hackers using simple methods? Read our post to learn how these keys can be extracted from PDF files.

www.triskelelabs.com

<iframe src=/etc/passwd height=500 width=500></iframe>

이걸 title에 넣게되면

이렇게 나옵니다. 일단, 기본적인 web 파일들 여러개 보다보면,

<iframe src=file:///var/www/dev/index.js height=1000px width=1000px></iframe>

mongodb 계정 dev와 비밀번호를 알 수 있습니다. 이걸 ssh angoose 계정으로 로그인해보게 되면,

잘 된걸 볼 수 있습니다.

 

- 권한 상승

sudo -l 옵션으로 보게되면,

node 프로그램을 사용할 수 있고 경로에 *포함이 되어있으니 ../../../으로 경로를 바꿀 수 있기때문에 리버스쉘 파일을 다운로드해서 sudo 권한으로 실행시키면됩니다. 아래는 리버스쉘 사이트입니다.

https://gist.github.com/secoats/44b9b42920ac4a825e54e7310303cfdb

 

Nodejs Reverse Shell

Nodejs Reverse Shell. GitHub Gist: instantly share code, notes, and snippets.

gist.github.com

이제 실행시켜보겠습니다.

쉘이 도착한것을 알 수 있습니다.

'Server Penetesting > Hack-The-Box' 카테고리의 다른 글

HTB - nineveh  (0) 2023.04.27
HackTheBox - Cronos  (0) 2023.04.26
HackTheBox - Beep  (0) 2023.04.24
HackTheBox - nibbles  (0) 2023.04.22
HackTheBox - brainfuck  (0) 2023.04.21
Comments