JavaScriptを有効にしてください

誤って編集してしまったsudoバイナリの権限をもとに戻す

 ·   ·  ☕ 1 分で読めます

やってしまった…

※以下のコマンドは絶対に実行しないでください。最悪復旧に物理アクセスが必要になる場合があります。

??@??? /v/l/machines> sudo chown root:root /usr/bin/sudo 
??@??? /v/l/machines> sudo machinectl login proxy
sudo: /usr/bin/sudo は所有者が uid 0 である必要があり、かつ setuid が設定されている必要があります

復旧

予めシェルのPIDを確認しておきましょう。

1
echo $$

別のセッションを立ち上げ、pkttyagentをアタッチ

1
pkttyagent --process 39318

もとのセッションに戻り、pkexecを経由してchmod

1
pkexec chmod a=rx,u+ws /usr/bin/sudo

画面に変化がないが、気にせず別に立ち上げたセッションの画面を確認すると

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ====
Authentication is needed to run `/usr/bin/chmod' as the super user
Authenticating as: root
Password:

パスワードを入力。

==== AUTHENTICATION COMPLETE ====

元のセッションを確認すると、シェルが戻っていることが確認できる。

sudo suなど実行してみて、昇格できたら成功。

共有

hayabusa2yk
著者
hayabusa2yk
Dev/Admin of servers