錄播課件8.2文件解析漏洞二_第1頁(yè)
錄播課件8.2文件解析漏洞二_第2頁(yè)
錄播課件8.2文件解析漏洞二_第3頁(yè)
錄播課件8.2文件解析漏洞二_第4頁(yè)
已閱讀5頁(yè),還剩7頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

掌控安全-Web安全微專業(yè)講師:聶風(fēng)8.2文件上傳解析漏洞(二)等待開課今日課程:文件上傳解析漏洞(二)等待其他同學(xué)入場(chǎng)(8.00-8.05)8.05準(zhǔn)時(shí)開講!#好課程幫忙推#快推薦同學(xué)、同事一起加入班級(jí),來學(xué)習(xí)課程啦!推薦人可以得到500元的福利,被推薦者購(gòu)買課程時(shí)可以享受折扣優(yōu)惠哦!#詳情聯(lián)系輔導(dǎo)員#微信公眾號(hào):掌控安全EDU#歡迎大家添加我的微信號(hào):zkaq-niefeng等待開課本章內(nèi)容文件上傳解析漏洞(二)#本節(jié)主要內(nèi)容總結(jié)一、%00截?cái)嗪?0截?cái)喽?、靶?chǎng)大闖關(guān)三、條件競(jìng)爭(zhēng)%00截?cái)嗪?0截?cái)?/p>

了解%00實(shí)際上我們要先了解0x00,0x00實(shí)際上是一個(gè)十六進(jìn)制表示方式,實(shí)際上就是表示ascii碼值為0,有些函數(shù)在處理這個(gè)字符的時(shí)候會(huì)把這個(gè)字符當(dāng)做結(jié)束符,他們就讀取到這里認(rèn)為這一段結(jié)束了這有什么用呢?在文件上傳時(shí),如果遇到了白名單機(jī)制只允許上傳jpg后綴的,在沒有解析漏洞的情況下我們?cè)撛趺崔k?JPG格式并不會(huì)被解析,那么我們需要繞過上傳過濾。假如我寫了1.php%00.jpg傳參之后,有些過濾都是直接匹配字符串,他強(qiáng)行匹配到了結(jié)尾是.jpg,然后允許上傳,但是php的函數(shù)去執(zhí)行的時(shí)候他讀取到0x00認(rèn)為結(jié)束了,那么這個(gè)文件就變成了1.php%00實(shí)際上和00截?cái)嗍且荒R粯拥脑?,只不過%00是經(jīng)過URL編碼的,%00解碼后就是0x00截?cái)嗟哪莻€(gè)字符

靶場(chǎng)大闖關(guān)Pass-11(%00截?cái)?:

前面講了%00截?cái)啵缓笪覀儸F(xiàn)在看題目,他會(huì)自動(dòng)重命名,這是個(gè)頭疼的問題,我們?cè)撊绾谓鉀Q這里很明顯使用了直接的拼接,然而我們對(duì)$_GET['save_path']卻沒有任何檢測(cè),那么我們是可以構(gòu)建的然后再%00,豈不是就可以繞過了。get提交1.php%00然后是不是最后就輸出了1.phpPass-12(%00截?cái)?二)):

這個(gè)東西和第一題很像,無非就是變成了POST方式提交save_path,問題在于POST方式我們用%00卻失效了,這是因?yàn)镻OST傳參并不會(huì)URL解碼,所以需要我們?cè)揌ex改為00Pass-13-16(圖片馬繞過)(getimagesize圖片類型繞過)(php_exif模塊圖片類型繞過)(二次渲染繞過):

這幾題目實(shí)際上不能利用,只是要你上傳一個(gè)圖片馬,必須配合文件包含使用條件競(jìng)爭(zhēng)首先了解一個(gè)定義——競(jìng)爭(zhēng)條件是什么?競(jìng)爭(zhēng)條件”發(fā)生在多個(gè)線程同時(shí)訪問同一個(gè)共享代碼、變量、文件等沒有進(jìn)行鎖操作或者同步操作的場(chǎng)景中。開發(fā)者在進(jìn)行代碼開發(fā)時(shí)常常傾向于認(rèn)為代碼會(huì)以線性的方式執(zhí)行,而且他們忽視了并行服務(wù)器會(huì)并發(fā)執(zhí)行多個(gè)線程,這就會(huì)導(dǎo)致意想不到的結(jié)果。線程同步機(jī)制確保兩個(gè)及以上的并發(fā)進(jìn)程或線程不同時(shí)執(zhí)行某些特定的程序段,也被稱之為臨界區(qū)(criticalsection),如果沒有應(yīng)用好同步技術(shù)則會(huì)發(fā)生“競(jìng)爭(zhēng)條件”問題。在我理解就是兩只哈士奇(線程)同時(shí)去搶一個(gè)丟出去的飛盤(資源),不知道到底哪只能搶到,此處便形成了競(jìng)爭(zhēng)。那我們上傳是和誰去競(jìng)爭(zhēng)?一般而言我們是上傳了文件,上傳了但是最后卻因?yàn)檫^濾或者因?yàn)槠渌虮粍h除了,那么我們可以使用條件競(jìng)爭(zhēng),我們實(shí)際上是和unlink,是和刪除文件的函數(shù)進(jìn)行競(jìng)爭(zhēng)。假如我不斷的上傳發(fā)包,然后我同時(shí)也不斷的訪問那個(gè)我們上傳上去的文件的地址,我們就開始和服務(wù)器的函數(shù)比手速了,函數(shù)執(zhí)行都是要時(shí)間的,如果我這邊上傳上去,且沒有刪除,那個(gè)時(shí)間可能很短,然后被我訪問到了,豈不是就可以執(zhí)行PHP了~我就比服務(wù)器手速快了~你可以上傳一個(gè)php然后訪問后,由這個(gè)php去寫一個(gè)馬<?php$a='<?php@eval($_REQUEST[\'a\'])?>';file_put_contents('1.php',$a)?>靶場(chǎng)大闖關(guān)Pass-17(條件競(jìng)爭(zhēng)):

開始和服務(wù)器比手速的時(shí)候到了,我們用burp模塊抓包然后去爆破就行,一個(gè)不斷上傳,一個(gè)不斷訪問Pass-18(條件競(jìng)爭(zhēng)2)(這題有Bug):

實(shí)際上還是條件競(jìng)爭(zhēng),只不過做了各種檢查,其實(shí)還是一樣的,只不過這次要上傳圖片馬。Pass-19(00截?cái)?:

這里又是一個(gè)00截?cái)啵龇ê椭暗?00截?cái)鄾]區(qū)別,第一開始也講了,這兩個(gè)其實(shí)原理一樣,這里主要是用到了move_uploaded_file(),這是移動(dòng)文件的函數(shù),上傳上去然后移動(dòng)到這邊重命名作業(yè)完成11-19關(guān)(第18關(guān)可以不做),靶場(chǎng)倒是沒什么flag好提交的,主要就是寫筆記,寫寫怎么做的和思路優(yōu)先使用傳送門,備用地址因?yàn)槭荓iunx所以有些漏洞不存在互動(dòng)答疑#同時(shí)歡迎大家添加我的微信號(hào):zkaq-niefeng提問時(shí)間到!課程回放會(huì)在一天內(nèi)上傳至騰訊課堂!本節(jié)課程到此結(jié)束,謝謝大家,下節(jié)見!#好課程幫忙推#快推薦同學(xué)、同事一起加入班級(jí),來學(xué)習(xí)課程啦

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論