IT圈的幽默:老婆對老公使用了sudo提權

今天朋友圈又被一張圖刷屏了,搞技術的看完會心一笑,圈外人看了估計一臉懵逼。圖中老婆對老公說想買鍋,老公抱怨家裡又不開伙,買鍋作甚。神奇的一幕來了,老婆對老公使用了sudo命令,老公像變了個人,立馬答應買。

IT圈的幽默:老婆對老公使用了sudo提權

首先可以確定的事情是圖中對話的兩夫妻都是技術人員,而且非常默契,老婆拋出的梗,老公馬上就能接住。整個對話關鍵就在於“sudo 買”。“買”是一個命令,老婆此時化身成為了用戶,把老公當成了linux系統,在之前對話中老婆權限不夠,“買”的命令沒有成功執行,使用sudo後,命令立馬執行。

IT圈的幽默:老婆對老公使用了sudo提權

我們把“買”這個命令換成cat /etc/shadow,就能完全轉換成linux理解的命令,看我操作。注意一個細節我們這裡輸入的密碼是本賬號的密碼,後面還會說到。

IT圈的幽默:老婆對老公使用了sudo提權

如果你自己賬號無法sudo提權,系統會顯示:Username is not in the sudoers file. This incident will be reported。Username是你當前賬號。

IT圈的幽默:老婆對老公使用了sudo提權

我們先來了解一下sudo命令在linux中的作用。linux最高權限是root,該命令允許特定用戶像root用戶一樣使用各種各樣的命令,而不需要root用戶的密碼,配置文件在/etc/sudoers中,只有root可操作。我們剛才的設置其實就是以root身份在這個文件裡面加上了一句話linuxvp ALL=(ALL) /usr/bin/cat。當然想要執行任意命令就是linuxvp ALL=(ALL) ALL。

IT圈的幽默:老婆對老公使用了sudo提權

很多初學者常常弄混了sudo和su,不考慮參數,sudo後面加的是命令,su後面加的是用戶名。考慮參數,就會出現兩個比較像的命令,都能切換到root用戶。

  • sudo -iu root
  • su - root

一個關鍵不同點,sudo輸入的密碼是當前用戶的密碼,su輸入的密碼是新用戶的密碼。su切換到root其實可以直接簡化成su,這樣就好理解下面這個圖為什麼要輸入當前用戶的密碼了。

IT圈的幽默:老婆對老公使用了sudo提權

sudo還可以設置免密執行命令,一個簡單的寫法,將之前的寫入/etc/sudoers中的最後一個ALL改成NOPASSWD:ALL

  • your_user_name ALL=(ALL) ALL
  • your_user_name ALL=(ALL) NOPASSWD: ALL
IT圈的幽默:老婆對老公使用了sudo提權

經過上面的解釋,就能很好理解我們開頭這個對話的評論了:

程序員A:難道老婆不是默認工作在root權限下的麼?

程序員B:最後一句老公應該說“Password:”

程序員C:那麼老婆應該說“******回車”

程序員D:不需要密碼,因為wife ALL=(ALL) NOPASSWD: ALL

程序員E:老公要硬氣一點,直接發送You are not in the sudoers file. This incident will be reported.

程序員F:敢不買就“rm -rf 老公”了

程序員G:其實老婆用“買 -f”就夠了


分享到:


相關文章: