
HackTheBox Pterodactyl の walkthrough。CVE-2025-49132 のパストラバーサル、ハッシュクラッキング、そして root 取得のための CVE-2025-6018/6019 の PAM および XFS 競合状態を連鎖させる。
プラットフォーム: HackTheBox | OS: Linux
サブドメイン上に Pterodactyl Panel が公開されていた。CVE-2025-49132 のパストラバーサルにより、認証なしで Laravel アプリケーションキーとデータベース認証情報が漏洩する。抽出したハッシュをクラックすることで SSH アクセスを取得する。権限昇格は CVE-2025-6018(PAM 環境変数ポイズニングにより偽のグラフィカル polkit セッションを作り出す)と CVE-2025-6019(XFS リサイズの競合状態を利用して root 権限の SUID シェルを取得する)を連鎖させる。
VHost 列挙により Pterodactyl Panel インスタンスを発見した。panel.pterodactyl.htb を /etc/hosts に追加した。
CVE-2025-49132 は Pterodactyl Panel における認証不要のパストラバーサルである。/api/client/../../../../.env を読み取ることで、Laravel アプリケーションキーとデータベース接続文字列が漏洩する。
curl -s http://panel.pterodactyl.htb/api/client/../../../../.env
漏洩した DB 認証情報を使用して MySQL 経由でパスワードハッシュをダンプし、hashcat でクラックして SSH アクセスを取得した。
CVE-2025-6018 は PAM 環境変数を汚染し、polkit に呼び出し元セッションがグラフィカル(X11/Wayland)であると誤認させることで、コンソール限定の制限を回避する。これにより、ローカルユーザーは物理的にコンソールにいなくても、polkit を通じて任意の高権限アクションを認証できるようになる。
CVE-2025-6019 は XFS ファイルシステムのリサイズ処理における競合状態を悪用する。CVE-2025-6018 により PAM セッションをバイパスした状態で、XFS のエクステント割り当て競合を引き起こし、root 所有の SUID シェルバイナリをディスクに書き込む。
/tmp/.suid_bash -p
# euid=0(root)
root フラグは /root/root.txt にある。
教育目的のみ。所有している、または明示的なテスト許可を得たシステムのみをテストすること。