はじめに
今回は特権昇格についての章になります。
The Rogue Gnome
What type of privilege escalation involves using a user account to execute commands as an administrator?
管理者としてコマンドを実行するためにユーザーアカウントを使用する場合、どのような種類の特権昇格が必要ですか?
特権昇格には主に2つの種類があります。
- Horizontal Privilege Escalation
- Vertical Privilege Escalation
Holizontal Privilage Escalationでは、自分と同等の権限を持つ別のユーザのリソースにアクセスするために脆弱性を悪用します。
この2つのユーザの違いはアクセスできるデータにあるため、権限を上位に移動させているわけではありません。
Vertical Privilage Escalationでは、管理者のような高い権限を持つアカウントとして実行するために脆弱性を悪用します。
今回の問題では、管理者としてコマンドを実行するための特権昇格の種類を聞いているため、Vertical Privilege Escalationが正しいです。
What is the name of the file that contains a list of users who are a part of the sudo group?
sudoグループに属しているユーザーのリストを含むファイルの名前は何ですか?
sudoはユーザが別のユーザの権限レベルでプログラムを実行するためのコマンドです。
sudoを利用できるユーザは「sudoers」と呼ばれ、/etc/sudoers
にリストアップされています。
What are the contents of the file located at /root/flag.txt?
/root/flag.txtにあるファイルの内容は何ですか?
まずはssh
でマシンに接続します。
パスワードは本文中に載っているものを使用します。
|
|
SUID権限が設定されている実行可能ファイルを列挙します。
|
|
これでSUID権限が設定されているファイルを洗い出すことができました。
ここで、GTFOBinsを使ってSUIDを用いて特権昇格できるものがないか確認していきます。
先程のSUIDがセットされているものと見比べると、/bin/bash
を悪用することができそうだとあたりをつけます。
sshで接続したマシン上で以下のコマンドを実行します。
|
|
無事rootユーザになることができたので、flag.txtを読み取って終了です。
おわりに
今回は特権昇格について学びました。
マシンを攻略していく中で特権昇格は必須事項となってくるので、今回の回答をもとに他のマシン攻略もして、GTFObinsの使い方や列挙の方法を少しずつ学んでいけるといいと思います。