![02命令執(zhí)行代碼注入漏洞(43頁)ppt課件_第1頁](http://file4.renrendoc.com/view/921f0f941887d0c5cfbff4559af0f812/921f0f941887d0c5cfbff4559af0f8121.gif)
![02命令執(zhí)行代碼注入漏洞(43頁)ppt課件_第2頁](http://file4.renrendoc.com/view/921f0f941887d0c5cfbff4559af0f812/921f0f941887d0c5cfbff4559af0f8122.gif)
![02命令執(zhí)行代碼注入漏洞(43頁)ppt課件_第3頁](http://file4.renrendoc.com/view/921f0f941887d0c5cfbff4559af0f812/921f0f941887d0c5cfbff4559af0f8123.gif)
![02命令執(zhí)行代碼注入漏洞(43頁)ppt課件_第4頁](http://file4.renrendoc.com/view/921f0f941887d0c5cfbff4559af0f812/921f0f941887d0c5cfbff4559af0f8124.gif)
![02命令執(zhí)行代碼注入漏洞(43頁)ppt課件_第5頁](http://file4.renrendoc.com/view/921f0f941887d0c5cfbff4559af0f812/921f0f941887d0c5cfbff4559af0f8125.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、命令執(zhí)行/代碼注入破綻王朋濤深服氣北京平安團(tuán)隊(duì)命令執(zhí)行/代碼注入破綻概述命令執(zhí)行/代碼注入破綻分類引見命令執(zhí)行/代碼注入破綻發(fā)掘方法命令執(zhí)行/代碼注入破綻攻擊防御總結(jié)培訓(xùn)提綱命令執(zhí)行/代碼注入破綻概述命令執(zhí)行/代碼注入破綻概述命令執(zhí)行/代碼注入破綻的出現(xiàn) 運(yùn)用程序直接/間接運(yùn)用了動態(tài)執(zhí)行命令的危險(xiǎn)函數(shù),并且這個(gè)函數(shù)的運(yùn)轉(zhuǎn)參數(shù)是用戶可控的。如php可動態(tài)執(zhí)行系統(tǒng)命令的函數(shù):system、exec、passthru等等,php可動態(tài)執(zhí)行php代碼的有eval;jsp可動態(tài)執(zhí)行系統(tǒng)命令的函數(shù)有: Runtime.getRuntime().exec(.);asp/aspx可動態(tài)執(zhí)行asp/aspx代碼
2、的有:eval等等。命令執(zhí)行/代碼注入破綻的本質(zhì) 程序設(shè)計(jì)違背了“數(shù)據(jù)與代碼分別的原那么。命令執(zhí)行/代碼注入破綻分類引見命令執(zhí)行/代碼注入破綻分類引見命令或代碼直接注入執(zhí)行破綻命令或代碼本地包含執(zhí)行破綻命令或代碼遠(yuǎn)程包含執(zhí)行破綻命令或代碼反序列化執(zhí)行破綻命令或代碼動態(tài)變量執(zhí)行破綻命令或代碼動態(tài)函數(shù)執(zhí)行破綻命令執(zhí)行/代碼注入破綻分類引見命令或代碼直接注入執(zhí)行破綻概述命令注入:運(yùn)用程序直接運(yùn)用了危險(xiǎn)的可執(zhí)行系統(tǒng)命令的函數(shù),比如php的system、exec函數(shù)等,并且這些函數(shù)的運(yùn)轉(zhuǎn)參數(shù)是用戶可控的,假設(shè)過濾不嚴(yán)厲,就會增大命令執(zhí)行破綻的概率。命令或代碼本地包含執(zhí)行破綻。代碼注入:運(yùn)用程序直接運(yùn)用了
3、危險(xiǎn)的代碼執(zhí)行函數(shù),如php/asp/aspx的eval函數(shù)等,并且這些函數(shù)的運(yùn)轉(zhuǎn)參數(shù)是用戶可控的,假設(shè)過濾不嚴(yán)厲,就會增大命令執(zhí)行破綻的概率。命令執(zhí)行/代碼注入破綻分類引見命令直接注入例如1(CGI)系統(tǒng)命令注入執(zhí)行破綻例如,就比如去年很火的Bash破綻,就屬于這類破綻,用戶可直接更改HTTP頭User-Agent的值,就可引發(fā)命令注入,如以下圖命令執(zhí)行結(jié)果將從效力器上下載一個(gè)php文件到本地:命令執(zhí)行/代碼注入破綻分類引見命令直接注入例如2(PHP)系統(tǒng)命令注入執(zhí)行破綻例如,如效力器端用php言語實(shí)現(xiàn),并且有個(gè)system.php文件的內(nèi)容含有如下片段eval(“$_GETarg;); ,
4、或類似的片段,就會存在此破綻。如以下圖:命令執(zhí)行/代碼注入破綻分類引見命令直接注入例如2假設(shè)用戶輸入的參數(shù)arg的值為精心組裝過的,如:IP/test.php?arg=cat /etc/passwd最后執(zhí)行的命令就變成了 system(cat /etc/passwd),輸出結(jié)果如以下圖顯示出了效力器機(jī)器上的用戶名等敏感信息:命令執(zhí)行/代碼注入破綻分類引見代碼直接注入例如1(PHP)代碼注入執(zhí)行破綻例如,如效力器端用php言語實(shí)現(xiàn),并且有個(gè)eval.php文件的內(nèi)容如以下圖:命令執(zhí)行/代碼注入破綻分類引見代碼直接注入例如1假設(shè)用戶輸入精心組裝過的數(shù)據(jù),如:/cmdcode/code/eval.p
5、hp?arg=phpinfo()那么將執(zhí)行php代碼命令phpinfo(),結(jié)果如以下圖:命令執(zhí)行/代碼注入破綻分類引見代碼直接注入例如2(Strust2)代碼注入執(zhí)行破綻例如,如之前紅極一時(shí)的Strust2破綻,也是由于未對用戶可控參數(shù)進(jìn)展有效的過濾引發(fā)的代碼注入執(zhí)行破綻,如用戶輸入:XXX/save.action?redirect:$%23a%3d(new java.lang.ProcessBuilder(new java.lang.Stringipconfig,/all).start(),%23b%3d%23a.getInputStream(),%23c%3dnew java.io.In
6、putStreamReader(%23b),%23d%3dnew java.io.BufferedReader(%23c),%23e%3dnew char50000,%23d.read(%23e),%23matt%3d%23context.get(com.opensymphony.xwork2.dispatcher.HttpServletResponse),%23matt.getWriter().println(%23e),%23matt.getWriter().flush(),%23matt.getWriter().close()命令執(zhí)行/代碼注入破綻分類引見代碼直接注入例如2命令執(zhí)行/代碼
7、注入破綻分類引見命令或代碼本地 /遠(yuǎn)程文件包含執(zhí)行破綻概述命令本地/遠(yuǎn)程包含破綻:運(yùn)用程序直接包含或執(zhí)行了用戶可控的上傳腳本文件或遠(yuǎn)程文件(URL援用文件),就會觸發(fā)此破綻。代碼本地/遠(yuǎn)程包含破綻:運(yùn)用程序直接包含了用戶可控的上傳文件或遠(yuǎn)程文件(URL援用文件),就會觸發(fā)此破綻,比如php/asp/aspx的include,以及php的include_once、require_once、require等,有些遠(yuǎn)程文件包含的有些限制條件,比如PHP的就必需翻開配置選項(xiàng):allow_url_fopen,才會勝利。命令執(zhí)行/代碼注入破綻分類引見命令本地文件包含例如1(360平安衛(wèi)士) 360平安衛(wèi)士
8、有個(gè)“360電腦專家功能,可以聊天,在聊天窗口中輸入如以下圖內(nèi)容,就會觸發(fā)本地包含破綻。這個(gè)破綻的原理是360會將聊天內(nèi)容寫入到文件中去,然后顯示的時(shí)候去讀取文件,執(zhí)行了包含的命令。命令執(zhí)行/代碼注入破綻分類引見命令本地文件包含例如1就會看到這奇觀的一幕,彈出命令行了.命令執(zhí)行/代碼注入破綻分類引見命令本地文件包含例如2(php) 假設(shè)效力端代碼文件中有個(gè)php文件的內(nèi)容包含有類似代碼【require($_GETp);】的片段,就會引發(fā)本地包含的破綻。其中參數(shù)p為用戶可控的,假設(shè)p指定為一個(gè)用戶上傳的文件cmd.txt,并且這個(gè)txt的內(nèi)容為 ,就會觸發(fā)此破綻命令執(zhí)行/代碼注入破綻分類引見命令
9、本地文件包含例如2命令執(zhí)行/代碼注入破綻分類引見代碼本地文件包含例如1(php) 假設(shè)效力端代碼文件中有個(gè)php文件的內(nèi)容包含有類似代碼【require($_GETp);】的片段,就會引發(fā)本地包含的破綻。其中參數(shù)p為用戶可控的,假設(shè)p指定為一個(gè)用戶上傳的文件code.txt,并且這個(gè)txt的內(nèi)容為 ,就會觸發(fā)此破綻命令執(zhí)行/代碼注入破綻分類引見代碼本地文件包含例如1命令執(zhí)行/代碼注入破綻分類引見命令或代碼反序列化執(zhí)行破綻概述有些動態(tài)腳本言語,如php支持實(shí)例對象的序列化傳輸,然后效力端將實(shí)例對象反序列化出來并執(zhí)行解析后實(shí)例的構(gòu)造函數(shù)、析構(gòu)函數(shù)或_wakeup()函數(shù),假設(shè)這些函數(shù)利用了用戶可控
10、的參數(shù),那么會觸發(fā)命令/代碼注入執(zhí)行破綻,原理和之前的直接注入一樣。命令執(zhí)行/代碼注入破綻分類引見反序列化破綻例如1假設(shè)效力端代碼文件中有個(gè)php文件的內(nèi)容包含有類似如以下圖代碼片段,就存在反序列化的破綻。命令執(zhí)行/代碼注入破綻分類引見反序列化破綻例如1訪問serialize.php可以獲取$class_ser的值為:O:1:a:1:s:4:test;s:19:;命令執(zhí)行/代碼注入破綻分類引見反序列化破綻例如1假設(shè)用戶提交如以下圖的序列化后的$class_ser的值給參數(shù)test,就會執(zhí)行phpinfo()代碼。命令執(zhí)行/代碼注入破綻分類引見命令或代碼動態(tài)變量/函數(shù)執(zhí)行破綻概述有些動態(tài)腳本言語
11、,如php,支持變量或函數(shù)的動態(tài)定義,即運(yùn)轉(zhuǎn)時(shí)可經(jīng)過參數(shù)名來動態(tài)組裝變量、變量值或函數(shù)。假設(shè)代碼中包含有類似如圖中類似代碼片段,就會存在動態(tài)變量/函數(shù)的執(zhí)行破綻。命令執(zhí)行/代碼注入破綻分類引見命令或代碼動態(tài)變量/函數(shù)執(zhí)行破綻例如當(dāng)用戶在閱讀器中輸入:/dynamic.php?dyn_func=system&argument=ipconfig,就相當(dāng)于執(zhí)行了系統(tǒng)命令ipconfig,如以下圖命令執(zhí)行/代碼注入破綻發(fā)掘方法命令執(zhí)行/代碼注入破綻發(fā)掘方法發(fā)掘方法從破綻的本質(zhì)以及前面的例如中可以明顯的看出,輸入點(diǎn)是一切注入的根源,發(fā)掘破綻就是尋覓這些輸入點(diǎn),尋覓方法主要有: - 白盒審計(jì) - 黑盒審計(jì)
12、 - 灰盒審計(jì) 命令執(zhí)行/代碼注入破綻發(fā)掘方法白盒審計(jì)概述白盒審計(jì),就是指手上曾經(jīng)有份完好的源碼,然后分析源碼,選擇一切用戶可控的輸入點(diǎn),然后分析這些輸入點(diǎn)能否未過濾或過濾不嚴(yán)厲,這些點(diǎn)是最易引發(fā)注入破綻,比如常見的XSS、SQL、命令以及代碼注入破綻等。白盒審計(jì)方法普通采用人工以及工具相結(jié)合的方法。純工具的相對一些有些邏輯跳轉(zhuǎn)的沒法發(fā)現(xiàn),純?nèi)斯さ男侍?,也容易脫漏,正常情況是運(yùn)用工具找到一切的輸入點(diǎn),然后人工依次跟蹤變量的處置流程。命令執(zhí)行/代碼注入破綻發(fā)掘方法白盒審計(jì)工具Fortify SCA Fortify SCA 是一個(gè)靜態(tài)的、白盒的軟件源代碼平安測試工具。它經(jīng)過內(nèi)置的五大主要分析引
13、擎:數(shù)據(jù)流、語義、構(gòu)造、控制流、配置流等對運(yùn)用軟件的源代碼進(jìn)展靜態(tài)的分析,分析的過程中與它特有的軟件平安破綻規(guī)那么集進(jìn)展全面地匹配、查找,從而將源代碼中存在的平安破綻掃描出來,并給予整理報(bào)告。掃描的結(jié)果中不但包括詳細(xì)的平安破綻的信息,還會有相關(guān)的平安知識的闡明,以及修復(fù)意見的提供。命令執(zhí)行/代碼注入破綻發(fā)掘方法白盒審計(jì)工具Fortify SCA 命令執(zhí)行/代碼注入破綻發(fā)掘方法白盒審計(jì)工具SeaySeay源代碼審計(jì)系統(tǒng),Seay源代碼審計(jì)系統(tǒng)目前只支持PHP,功能包括不斷在更新: - 高準(zhǔn)確度自動白盒審計(jì) ; - mysql數(shù)據(jù)庫管理 ; - 代碼高亮; - 黑盒敏感信息泄露一鍵審計(jì) ; - 函
14、數(shù)查詢 ; - 正那么調(diào)試; - 代碼調(diào)試 ; - 多種字符編碼轉(zhuǎn)換; - 函數(shù)/變量定位; - 暫時(shí)記錄可保管; - 審計(jì)報(bào)告; - 編輯保管文件; - 自定義規(guī)那么 ; - 自動晉級檢測; - 自定義編輯器 ; - POST數(shù)據(jù)提交;命令執(zhí)行/代碼注入破綻發(fā)掘方法白盒審計(jì)工具Seasy命令執(zhí)行/代碼注入破綻發(fā)掘方法黑盒審計(jì)概述黑盒審計(jì),就是指無法獲取到源代碼,只能經(jīng)過現(xiàn)有的WEB運(yùn)用,進(jìn)展摸黑測試,測試一切的輸入點(diǎn)。通用的方法是運(yùn)用掃描工具掃描WEB的目錄列表以及一切參數(shù)列表,并分析掃描報(bào)告,查看能否有可疑的輸入點(diǎn)。黑盒審計(jì)工具常用的有wvs、appscan、nessus、w3af等等,有
15、很多,就不一一列舉了,下面就簡單的引見下這幾個(gè)軟件。命令執(zhí)行/代碼注入破綻發(fā)掘方法黑盒審計(jì)工具WVS(Web Vulnerability Scanner)是一個(gè)自動化的Web運(yùn)用程序平安測試工具,它可以掃描任何可經(jīng)過Web閱讀器訪問的和遵照HTTP/HTTPS規(guī)那么的Web站點(diǎn)和Web運(yùn)用程序。適用于任何中小型和大型企業(yè)的內(nèi)聯(lián)網(wǎng)、外延網(wǎng)和面向客戶、雇員、廠商和其它人員的Web網(wǎng)站。命令執(zhí)行/代碼注入破綻發(fā)掘方法黑盒審計(jì)工具WVS命令執(zhí)行/代碼注入破綻發(fā)掘方法灰盒審計(jì)概述灰盒審計(jì),就是指結(jié)合前面引見的兩種方法白盒和黑盒審計(jì),邊黑盒掃描,邊白盒審計(jì),這樣就能快速的定位到哪個(gè)輸入點(diǎn)可疑,并且經(jīng)過白盒審計(jì),就可迅速的找到并編寫POC代碼?;液袑徲?jì)普通依賴閱歷,閱歷越豐富,普通就能很快的定位到問題所在點(diǎn)以及問題重現(xiàn),快速的編寫出exp代碼。命令執(zhí)行/代碼注入破綻攻擊防御命令執(zhí)行/代碼注入攻擊防御灰盒審計(jì)概述基于前面的分析,注入破綻的根源在于過分的置信了每一位用戶,總假設(shè)用戶的輸入是正常
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子圖書出版與運(yùn)營手冊
- 房屋租賃三方合同格式
- 焊接工藝與材料選擇作業(yè)指導(dǎo)書
- 成本合同管理大全
- 生物科技居間合同協(xié)議書
- 有關(guān)事業(yè)單位合同
- 2025年呼和浩特貨運(yùn)從業(yè)資格證模擬考試題下載
- 2025年南昌從業(yè)資格貨運(yùn)資格考試題庫答案解析
- 2025年龍巖a2駕駛證貨運(yùn)從業(yè)資格證模擬考試
- 電力市場策略合同(2篇)
- 【立高食品公司的償債能力現(xiàn)狀及問題分析(論文9000字)】
- 銷量返點(diǎn)合同范本
- 裝飾施工圖審查要點(diǎn)
- 家庭生活中的安全隱患及預(yù)防方法
- 食堂炊事員聘用合同
- 信用信息平臺建設(shè)方案
- 10.《運(yùn)動技能學(xué)習(xí)與控制》李強(qiáng)
- 大地保險(xiǎn)理賠標(biāo)準(zhǔn)
- 車險(xiǎn)經(jīng)營情況分析報(bào)告模板
- 農(nóng)業(yè)一張圖建設(shè)方案
- 冀教版數(shù)學(xué)七年級下冊綜合訓(xùn)練100題含答案
評論
0/150
提交評論