男人的天堂一区二区视频在线观看-男人的天堂亚洲-男人的天堂天堂网-男人的天堂视频在线观看-91综合在线-91综合视频

EN

Linux權限提升:Python庫劫持

發布時間:2021-07-02
瀏覽量: 11500

在這篇文章中,我們將介紹一些在基于Linux的設備上通過利用Python庫和腳本提升權限的方法。

1.介紹

一般來說,當攻擊者處于有python文件的環境中,可以用來提升其訪問權限的方式比較有限。本文將介紹利用寫權限、sudo權限和編輯Path變量,這三種提權方式。

為了方便演示,我們先創建一個導入一些庫的示例腳本。在實際情況中,這可能是個一般的python腳本或是一個開發人員正在進行的項目。在CTF比賽中,可能很容易找到一個包含與此相類似的腳本。我們創建的示例腳本中,首先導入webbrowser模塊,然后使用open函數來運行設備上的默認web瀏覽器,來打開http://www.1218.com.cn/網頁(此處以任子行官網舉例),如圖1-1。

圖片1.png

                   圖1-1可以看到運行腳本程序會打開任子行官網

方法一:這個漏洞利用是基于我們導入的模塊文件要具有寫權限。當被導入的模塊文件具有允許任何用戶編輯的權限時,它就可能成為一個漏洞。在我們創建的python示例腳本中,調用了webbrowser.py模塊文件。為了更好地了解這種提權方式,我們將首先在ubuntu環境中創建脆弱性漏洞環境,然后使用另一個機器來攻擊利用這個漏洞。


漏洞創建:正如前文所講,在這種方法中,漏洞是基于模塊文件的權限。為了構造這個漏洞,我們首先需要找到模塊文件。我們可以用locate命令來找到它,當然也可以利用find之類的命令進行查找。我們可以看到它位于/usr/lib/python3.8/里面,然后我們可以看到,模塊文件的默認權限是:所有者有讀、寫、執行的權限,組有執行和讀的權限,其他用戶只有執行的權限。這意味著除非用戶是root權限,否則任何人不能編輯該文件。為了構造這個漏洞,我們需要用chmod命令改變一下權限,使每個用戶都可以讀取、寫入和執行。這從下圖1-2中可以看到。

圖片3.png

                  圖1-2可以看到所有用戶對文件具有讀,寫,執行權限。

要想讓Linux機器變得易受攻擊,下一步要做的就是提供一個運行python腳本的方法。最簡單的方法是寫入sudoers文件中,這樣攻擊者(可以訪問用戶lele就可以執行我們創建的python腳本(hack.py)。如圖1-3.

圖片4.png 

圖1-3

以上就是一個完整使機器容易受到Python庫劫持的攻擊的過程,其余沒有提到的配置都為Linux的默認配置。

漏洞利用:該漏洞利用的前提是我們在目標機上已經獲得初始立足點。然后我們可以利用這種方法在獲得初始立足點后提升權限。為了模仿這種情況,我們先以用戶lele的身份連接到目標機。作為一個需要提升權限的攻擊者,我們運行sudo -l命令,看看哪些腳本或二進制文件是以提升的權限運行的。可以看到,我們能使用python3.8來運行hack.py。作為一個攻擊者,我們使用cat命令查看腳本內容,看到它導入一個名為webbrowser的模塊。我們使用locate命令找到該模塊的位置,發現它位于/usr/lib/python3.8中。然后我們還可以發現lele用戶擁有該模塊的寫權限如圖1-4,圖1-5所示。

圖片5.png

                     圖1-4可以看到哪些腳本擁有root權限

圖片6.png

                   圖1-5可以看到目標腳本所處位置

我們用vim編輯器打開該模塊文件,然后在被hack.py文件調用的函數里面加入了反彈shell的python腳本。在前面我們可以看到,它使用一個open函數在瀏覽器中打開了一個網頁。因此,我們將反彈shell的代碼添加到該模塊文件中,如下圖1-6所示。

vim /usr/lib/python3.8/webbrowser.py

圖片6.png

                      圖1-6將反彈shell的代碼寫入圖中位置

編輯完模塊文件后,我們保存并關閉編輯器。打開ctf機器的另一臺終端,我們在shellcode腳本中指定的端口上打開一個Netcat監聽器,然后以lele用戶回到終端,用sudo執行hack.py腳本,如圖1-7所示。

圖片7.png

                               圖1-7

當腳本運行時,我們就可以看到一個會話連接到了我們的Netcat監聽器。通過whoami命令和id命令可以看到我們已經成功地將Linux權限從lele用戶提升到了root權限用戶。

方法二:

這個漏洞是基于Python庫路徑的優先級順序,它適用于我們腳本正在導入的模塊文件。當一個模塊在腳本中被導入時,Python會以特定的優先順序在默認目錄中尋找特定的模塊文件。在我們創建的python腳本中,我們有webbrowser.py模塊文件被調用。因為如果在與原始腳本相同的目錄下存在一個Python模塊文件,它將獲得優先于默認路徑的地位。為了更好地了解背后發生了什么,以及怎么樣導致權限升級的,我們先在ubuntu環境中創建漏洞,然后使用另一個機器Linux來利用這個漏洞。

漏洞構建:

正如前面所討論的,在這種方法中,漏洞是基于模塊文件執行的優先順序。為了構造這個漏洞,首先,我們需要把方法一加入的反彈shell的代碼注釋掉或者直接刪掉(如圖2-1),避免產生干擾,然后恢復我們先前賦予文件的權限(如圖2-2)。這樣,這臺機器就不會在多個方面出現漏洞。

圖片9.png

圖2-1 注釋掉先前加的反彈shell代碼

圖片10.png

圖2-2恢復webbrowser.py的權限。

接下來,我們回到我們先前創建的python腳本。我們可以看到,它位于lele用戶的home目錄下,它仍然包含相同的代碼,需要導入 webbrowser模塊,如圖2-3所示。

圖片11.png

                             2-3

sudoers文件中與方法一中的編寫一致使其包含腳本hack.py的正確路徑,如圖2-4所示。

圖片12.png

圖2-4

以上是一個完整的使機器容易受到Python庫劫持的攻擊過程。其余沒有提到的配置都為Linux的默認配置。

漏洞利用:

同樣,該漏洞利用的前提是我們在目標機上已經獲得初始立足點。然后我們可以利用這種方法在獲得初始立足點后提升權限。為了模仿這種情況,我們以用戶lele的身份連接到目標機器。作為一個需要提升權限的攻擊者,我們運行sudo -l命令,看看我們可以用哪些腳本或二進制文件是以提升的權限運行的。我們看到,我們可以使用python3.8來運行hack.py。作為一個攻擊者,我們使用cat命令查看該腳本,看到它導入了一個名為webbrowser的模塊如圖2-5。

圖片13.png

圖2-5

由于 hack.py 位于 lele 用戶的主目錄內,而我們有 lele 用戶的訪問權限,我們可以在主目錄內創建一個文件。在這種情況下,需要注意的是我們不能編輯 hack.py 文件。在這種情況下,我們將創建一個webbrowser.py文件。然后在創建的webbrowser.py文件中添加反彈shell的代碼。如圖2-6

圖片14.png 

圖2-6 反彈shell代碼

接下來,我們需要運行一個Netcat偵聽器端口,我們提到在反向shellcode。然后我們將繼續使用sudo執行hakc.py腳本,如圖2-7。

圖片15.png

圖2-7

當腳本運行時,我們看到一個會話連接到Netcat偵聽器。會話的id命令證明在目標機器上已經是root權限。我們已經成功地把lele用戶提升特權為root用戶如圖2-8。

圖片16.png

圖2-8提權為root權限

方法3

這個漏洞是通過Python PATH環境變量進行搜索的Python庫來利用的。這個變量有一個目錄列表,在這個列表中,Python會搜索導入模塊的不同目錄。如果攻擊者能夠改變或修改該變量,那么他們就可以利用它來提升目標機器的權限。為了更好地了解是怎么樣導致權限升級的,我們和前面一樣先在ubuntu環境中創建漏洞,然后使用另一臺Linux來攻擊利用這個漏洞。

漏洞構建

正如前面所討論的,這個方法的漏洞利用是基于python環境path變量的。為了構造這個漏洞,首先,和前面一樣,我們需要恢復Linux環境到最初的配置。然后,在tmp目錄內創建hack.py腳本,我們可以驗證該腳本的內容與之前一樣,如圖3-1,圖3-2所示。

圖片17.png

圖3-1運行該腳本會打開任子行官網

圖片18.png 

圖3-2 可以看到腳本內容

接下來,我們需要在sudoers文件中做一些修改。首先,我們把文件的位置改為/tmp目錄,然后在文件中加入SETENV標記,如圖3-3所示。這意味著lele用戶可以使用具有sudo權限的SETENV命令,而無需輸入root密碼。SETENV是個可以改變Python PATH環境變量的值,并將任何位置納入我們在前面的方法中學到的執行順序的命令。

圖片19.png 

圖3-3給我們的文件加上SETENV標記配置環境變量

以上就是使機器容易受到Python庫劫持的完整過程。其余沒有提到的配置都被設置為Linux的默認配置。

漏洞利用

同樣,該漏洞利用的前提是我們在目標機上已經獲得初始立足點。然后我們可以利用這種方法在獲得初始立足點后提升權限。為了模仿這種情況,我們以用戶lele的身份連接到目標機器。作為一個需要提升權限的攻擊者,我們運行sudo -l命令,看看我們可以用哪些腳本或二進制文件是以提升的權限運行的。我們看到,我們可以用root權限使用SETENV,這意味著我們可以用它來改變導入模塊的優先順序。由于hack.py位于/tmp目錄內,我們進入其中并檢查hack.py腳本,如圖3-4所示。

圖片20.png 

圖3-4 可以看到已經以root權限進行設置環境變量

由于它需要導入webbrowser模塊,我們首先將創建一個名為webbrowser.py的惡意模塊文件,然后利用改變環境變量Python PATH的能力導入我們的惡意模塊文件,惡意模塊文件中包含反彈shell的代碼。如圖3-5接著在腳本中提到的同一端口上啟動一個Netcat監聽器,并繼續將/tmp目錄添加到Python路徑中,然后執行hack.py文件以提升我們的訪問權限。

圖片21.png

圖3-5惡意模塊文件里包含反彈shell的代碼

當腳本運行時,我們可以看到一個會話連接到了我們的Netcat監聽器。whoami和id命令表明了我們已經成功地將權限從lele用戶提升到了root權限用戶如圖3-6。

圖片22.png 

圖3-6已經從普通訪問權限提權為root權限

在這篇文章中,我們通過人為的為Python庫的環境設置三個真實的場景,然后介紹了一些錯誤的配置可能導致攻擊者將其訪問權限提升到root權限級別的方法。


熱點內容

開始試用任子行產品
申請試用

20年公安服務經驗

7*24小時應急響應中心

自主知識產權的產品裝備

專家級安全服務團隊

網絡空間數據治理專家

榮獲國家科學技術二等獎

置頂
電話

400-700-1218

官方熱線電話

咨詢
留言
二維碼
微信公眾號
公司微博
亚洲精品成人久久久998| 欧美国产一区二区在线| 久久一区免费| 亚洲在线不卡| 免费在线成人av| 欧美人与性禽动交精品| 成人久久18免费网站漫画| 亚洲图片小说在线| 精品国产一区二区三区免费 | 精品一区二区久久久久久久网站| 亚洲视频在线二区| 96成人在线视频| 国产精品sss| 久久免费看av| 亚洲亚洲精品三区日韩精品在线视频| 亚洲精品日韩在线观看| 高清视频在线观看一区| 久久精品成人一区二区三区蜜臀| 美媛馆国产精品一区二区| 日韩精品电影网站| 精品网站在线看| 一区二区三区四区五区精品 | 亚洲成人av动漫| 成人欧美一区二区三区黑人免费| 久久波多野结衣| 91精品黄色| 先锋影音网一区| 欧美18视频| 好吊妞www.84com只有这里才有精品 | 欧美日韩电影一区二区| 自拍视频一区二区三区| 欧美精品中文字幕一区二区| 超碰97在线人人| 亚洲欧洲日韩综合二区| 久久综合伊人77777麻豆| 国产精品久久久久久久久久久久午夜片 | 国模一区二区三区私拍视频| 亚洲精品日韩在线观看| 激情视频一区二区| 日本一区视频在线| yy111111少妇影院日韩夜片| 久久国产精品 国产精品| 视频一区二区在线| 国产精品日韩欧美一区二区三区| 欧美亚洲免费在线| 欧美h视频在线| 国产精品二区三区| 97超级碰碰| 国产精品露出视频| 国产日韩欧美二区| 精品欧美一区二区在线观看视频| 国产一区二区无遮挡| 精品不卡在线| 欧美日韩综合另类| 亚洲欧美在线网| 岛国视频一区免费观看| 在线天堂一区av电影| 日韩欧美在线观看强乱免费| 日本在线观看一区二区三区| 亚洲精品乱码久久久久久蜜桃91| 99在线视频首页| 免费在线成人av| 亚洲电影一二三区| 国产精品免费一区二区三区在线观看| 高清国产一区| 亚洲精品一区二区三区樱花| 动漫美女被爆操久久久| 人偷久久久久久久偷女厕| 亚洲一区二区在线免费观看| 国产视色精品亚洲一区二区| 日韩高清在线播放| 久久精品国产第一区二区三区最新章节 | 97视频中文字幕| 欧美精品一区二区三区久久| 91丨九色丨国产| 亚洲视频电影| 一本色道久久综合亚洲精品婷婷| 精品不卡一区二区三区| 国产专区一区二区| 精品一区二区三区免费毛片| 好看的日韩精品视频在线| 黄色国产精品一区二区三区| 精品视频导航| 欧美人xxxxx| 午夜精品区一区二区三| 日本在线播放一区| 亚洲韩国在线| 国产精品自拍首页| 久久久综合亚洲91久久98| 午夜精品区一区二区三| 欧美日韩精品免费观看 | 久久久久久国产精品mv| 激情久久av| 日韩少妇中文字幕| 亚洲欧洲精品一区二区| 成人自拍爱视频| 久久综合九九| 一区二区三视频| 极品校花啪啪激情久久| 亚洲va韩国va欧美va精四季| 成人免费在线一区二区三区| 精品免费国产| 99超碰麻豆| 日韩精品久久一区| 国产伦精品一区二区三毛| 日本一区二区免费看| 伊人久久av导航| 欧美精品一区二区三区四区五区| 亚洲国内在线| 欧美精品中文字幕一区二区| 影音先锋欧美资源| 日韩av电影免费播放| 91久久偷偷做嫩草影院| 国产精品一区二区欧美黑人喷潮水| 欧美深深色噜噜狠狠yyy| 国产欧美日韩伦理| 成人高清在线观看| 在线成人性视频| 亚洲三区视频| 91久久精品国产91久久性色tv| 日韩欧美精品久久| 日韩在线三级| 椎名由奈jux491在线播放| 中文字幕色一区二区| 亚洲午夜在线观看| 中国一区二区三区| 国产精品v欧美精品∨日韩| 国产成人免费观看| 精品无人区一区二区三区| 国产免费一区| 神马影院我不卡| 永久域名在线精品| 国产精品裸体一区二区三区| 国产精品.com| 日韩欧美亚洲日产国产| 成人av蜜桃| 欧美综合激情| 亚洲一区二区三区免费看| 99理论电影网| 日产精品高清视频免费| 在线码字幕一区| 久久精品日产第一区二区三区乱码| 国产日韩二区| 美女黄毛**国产精品啪啪| 色就是色欧美| 欧美日韩一区二区三区在线视频 | 国产66精品久久久久999小说| 99伊人久久| 婷婷四房综合激情五月| 国产精品久久7| **亚洲第一综合导航网站 | 麻豆精品蜜桃一区二区三区| 日韩欧美视频一区二区| 国产日韩精品久久| 正在播放一区二区三区| 五月天亚洲综合情| 日本在线视频不卡| 欧美日韩精品免费在线观看视频| 国产精品一 二 三| 国产精品国产三级欧美二区| 成人h在线播放| 国产66精品久久久久999小说| 91传媒在线免费观看| 91视频免费进入| 国产日韩欧美亚洲一区| 激情一区二区三区| 日本欧美色综合网站免费| 欧美日韩精品一区| 日韩精品伦理第一区| 人偷久久久久久久偷女厕| 日韩中文不卡| 成人免费看片网址| 久久大片网站| 亚洲一区二区免费视频软件合集 | 91免费版黄色| 中文字幕久精品免| 加勒比在线一区二区三区观看| 欧美精品亚洲精品| 亚洲一区二区精品在线| 美女精品国产| 国产66精品久久久久999小说| 欧美日韩一区在线视频| 亚洲欧美日韩在线综合| 久久精品五月婷婷| 亚洲一区二区三区加勒比| 久久久久久久久久久久久久一区 | 成人h视频在线观看| 国产偷久久久精品专区| 日韩欧美亚洲在线| 精品国产二区在线| 福利视频一区二区三区| 国产女主播一区二区| 国产专区一区二区| 在线综合视频网站| 欧美日本国产精品| 99高清视频有精品视频| 午夜精品视频在线观看一区二区| 国产在线观看一区| 99国产在线视频| 岛国一区二区三区高清视频|