4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

lessコマンドに関する面白い権限昇格

Last updated at Posted at 2022-05-09

Hack The Box Traverxecにて。

lessコマンドに関するとても面白い権限昇格があったのでメモっておきます。

現状

次のコマンドだけなにもパスワードを入力せずに実行できる:

sudo journalctl -n5 -unostromo.service

実行した様子:

execjctl.png

ゴールは、ユーザdavidからrootへ権限昇格すること(ただしdavidのパスワードは不明)。

実際に権限昇格してみる

以下のコマンドはどれも実行時にパスワードを求められる:

sudo journalctl -n3 -unostromo.service
sudo journalctl -n5
sudo journalctl -n 5 -unostromo.service
sudo journalctl

また、その結果をパイプに渡しても

sudo journalctl -n3 -unostromo.servic | less
sudo journalctl -n3 -unostromo.servic | cat

パイプより後のコマンドはdavid権限なのでprivescには無意味。



ふつうjournalctlコマンドを引数なしでやるとページャ(lessコマンドを使った状態)で表示される:
pajer.png

このlessコマンド実行状態で、!/bin/shと入力すればシェルが起動する。

これを念頭において、davidからrootへの権限昇格を考える。

改めて、今(root権限で)次が実行出来る:

sudo journalctl -n5 -unostromo.service

-n5というのは5行だけ表示という意味(上の画像参照)。

だから普通に実行すれば上の画像のようにただ結果が5行分表示されるだけ。

要は、このsudo journalctlをページャ表示(つまりroot権限でのlessコマンド実行)させて、そこで!/bin/shとすればrootシェルが得られる。

どうするか...

答えは、ウィンドウを小さくしてページャ表示されるようにする

つまり、ウィンドウの高さを5行分表示出来ない高さにしてやればページャ表示される:
getpajer.png

あとはこの状態で!/bin/shと打ち込んでroot権限のシェルがとれる。

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?