ルートの場合、同じローカルコンピュータで別のユーザーのファイルを表示できますか?それでは、どうすればいいですか?
答え1
$ sudo su これで実際にルートになることができます。そして/(root)に行き、/ homeフォルダを見て、そのマシン上のすべてのユーザーを見つけることができます。
答え2
デフォルトでは、ルートから別のユーザーアカウントに切り替えるのは安全ではありません。
ルートとして目的のディレクトリを直接閲覧することは、ユーザーを使用または切り替えるsu
よりもはるかに安全です。sudo
自動的にTIOCSTI ioctl 経由で root の tty にコマンドをプッシュし、root としてコマンドを実行します。
たとえば、TIOCSTI ioctlを使用するバイナリがあり、hacksu
侵入者が破損したユーザーアカウント[user]の.bashrcを変更して、シェルの起動時にバイナリを実行するとします。
$ tail -n3 /home/[user]/.bashrc
echo hi
/opt/hacksu -- $'echo "hello world" >> /tmp/file1\nfg'
echo bye
$ _
その後、su
破損したユーザーに対してrootを使用すると、破損したユーザーはrootとして任意のコマンドを実行できます。
root@host:~# su - [user]
.bashrc検索は自動的に行われるため、次の8行はユーザー操作なしで端末に印刷されます。
echo "hello world" >> /tmp/file
1
fg
[1]+ Stopped su - [user]
root@host:~# echo "hello world" >> /tmp/file1
root@host:~# fg
su - [user]
bye
ルートは問題が発生したことに気づき、[ユーザー]シェルを閉じて、[ユーザー]の.bashrcが何をしたかを確認します。
[user]@host:~$ logout
root@host:~# ll /tmp/file1
-rw-r--r-- 1 root root 12 Apr 15 00:47 /tmp/file1 # owned by root (!)
root@host:~# cat -v /tmp/file1
hello world
root@host:~# # oops ..
上記のシナリオでは、[user]は任意のファイルにrootとして作成しました。実際に実行されたコマンドは、rootができるすべての操作を実行できます。例えば。hacksu
/etc/shadow
POCのソースバイナリのソースコードは、hacksu
以下にあります。https://www.halfdog.net/Security/2012/TtyPushbackPrivilegeEscalation/。破損したユーザー アカウントの脅威を解決しない限り、root に別のユーザーに切り替えないでください。
答え3
次のようにすることもできます。
# su user
このユーザーをrootとしてログインし、そのファイルを表示します。