天天看點

CTFHub RCE(指令執行、檔案包含) WriteUP

CTFHub RCE(指令執行、檔案包含) WriteUP

點選"仙網攻城獅”關注我們哦~

不當想研發的滲透人不是好運維

CTFHub RCE(指令執行、檔案包含) WriteUP

讓我們每天進步一點點

簡介

CTFHub 為網絡安全工程師提供網絡安全攻防技能教育訓練、實戰、技能提升等服務。

「賽事中心」提供全網最全最新的 CTF 賽事資訊,關注賽事定制自己專屬的比賽月曆吧。

「技能樹」提供清晰的 CTF 學習路線,想要變強就加點,哪裡不會點哪裡。

「曆年真題」提供無限次賽後複盤,邊學邊練。

「工具」提供各類常用工具,打仗沒有一把趁手的武器怎麼行。

CTFHub RCE(指令執行、檔案包含) WriteUP

實戰

應用有時需要調用一些執行系統指令的函數,當伺服器沒有經過嚴格過濾使用者的參數,這時候就可能導緻指令執行,進而導緻指令執行漏洞

本章将講解下面三個内容比較實用,eval執行、檔案包含(讀取源代碼)、綜合過濾。

CTFHub RCE(指令執行、檔案包含) WriteUP

一、eval執行

eval() 函數可将字元串轉換為代碼執行,并傳回一個或多個值,在進行源代碼審計時可以直接搜尋eval來進行分析是否安全。

1.運作靶機,輸入靶機位址後傳回一段源代碼,說明參數的處理邏輯。

CTFHub RCE(指令執行、檔案包含) WriteUP
CTFHub RCE(指令執行、檔案包含) WriteUP

2.分析後發現cmd參數使用eval進行傳參,參數沒有經過任何的處理,在url後面加入cmd=system(“ls”); 發現傳回目前目錄下檔案。

CTFHub RCE(指令執行、檔案包含) WriteUP

3.接着加../查找到flag檔案

CTFHub RCE(指令執行、檔案包含) WriteUP
CTFHub RCE(指令執行、檔案包含) WriteUP

4.使用cat ../../flag_946獲得flag

CTFHub RCE(指令執行、檔案包含) WriteUP

二、讀取源代碼

1.運作靶機檢視源代碼中處理邏輯發現使用php僞協定。

CTFHub RCE(指令執行、檔案包含) WriteUP

2.最下面告訴我們了flag的位址,我們可以嘗試利用php://filter去嘗試讀取一下這個檔案,建構payload:?file=php://filter/read/resource=/flag成功擷取flag

CTFHub RCE(指令執行、檔案包含) WriteUP

三、綜合過濾

1.運作靶機發現正則過濾,過濾了目錄操縱符、運算符、分号、空格、cat、flag、ctfhub字元

CTFHub RCE(指令執行、檔案包含) WriteUP

2.可以使用%0a換行進行繞過,空格可以用${IFS}、cat可以用more、flag可以用正則f***,%0a因為是url編碼是以需要寫在url中,如果寫在輸入框中會被再次編碼而注入不成功。

建構payload:127.0.0.1%0als 檢視目錄

CTFHub RCE(指令執行、檔案包含) WriteUP

3.檢視檔案夾内容127.0.0.1%0acd${IFS}f***_is_here%0als

CTFHub RCE(指令執行、檔案包含) WriteUP

4.檢視flag、127.0.0.1%0acd${IFS}f***_is_here%0amore${IFS}f***_31393309531738.php

CTFHub RCE(指令執行、檔案包含) WriteUP

總結:

    漏洞成因:

1.代碼過濾不嚴格
2.系統的漏洞造成指令執行
3.調用的第三方元件存在代碼執行漏洞
           

    常用指令執行函數:

system():  該函數會把執行結果輸出。
passthru():  該函數隻調用指令,并把運作結果原樣地直接輸出沒有傳回值
exec():  不輸出結果,傳回執行結果的最後一行
shell_exec():  不輸出結果,傳回執行結果
           

    修複建議:

1. 盡量少使用執行指令的函數或者直接禁用
2.參數值盡量使用引号包括
3.在使用動态函數之前,確定使用的函數是指定的函數之一
4.在進行執行指令的函數|方法之前,對參數進行嚴格過濾,對敏感字元進行轉義
           

往期内容

ATT&CK實戰-紅隊評估之二

簡單講解一下什麼是ATT&CK架構

CTF學習和比賽平台簡介

CTFHub RCE(指令執行、檔案包含) WriteUP
CTFHub RCE(指令執行、檔案包含) WriteUP

更多資訊長按二維碼 關注我們

覺得不錯點個“贊”呗

CTFHub RCE(指令執行、檔案包含) WriteUP