Web安全漏洞及代碼審計(第2版)(微課版)課件 【ch05】靶機跨站腳本攻擊漏洞與審計_第1頁
Web安全漏洞及代碼審計(第2版)(微課版)課件 【ch05】靶機跨站腳本攻擊漏洞與審計_第2頁
Web安全漏洞及代碼審計(第2版)(微課版)課件 【ch05】靶機跨站腳本攻擊漏洞與審計_第3頁
Web安全漏洞及代碼審計(第2版)(微課版)課件 【ch05】靶機跨站腳本攻擊漏洞與審計_第4頁
Web安全漏洞及代碼審計(第2版)(微課版)課件 【ch05】靶機跨站腳本攻擊漏洞與審計_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

靶機跨站腳本攻擊漏洞與審計項目5Web安全漏洞及代碼審計(第2版)(微課版)01項目知識準備項目知識準備01跨站腳本攻擊即XSS攻擊,是Web應用中出現(xiàn)次數(shù)較多的漏洞。它主要是由于網(wǎng)站對用戶輸入的內容過濾不嚴格而導致的,可以使用戶提交的惡意代碼直接顯示在頁面上。XSS攻擊一般有兩種類型。一種是反射型XSS,它通過GET或POST方式向服務端輸入數(shù)據(jù)。用戶輸入的數(shù)據(jù)通常被放置在URL的querystring或者form表單數(shù)據(jù)中。如果服務端沒有對用戶輸入的數(shù)據(jù)進行過濾、校驗或編碼將這些數(shù)據(jù)直接呈現(xiàn)給用戶,則可能會造成反射型XSS。漏洞介紹一另一種是存儲型XSS因為服務端沒有對用戶輸入的惡意腳本進行校驗就將其直接存儲到數(shù)據(jù)庫中,并且每次都通過調用數(shù)據(jù)庫的方式將數(shù)據(jù)呈現(xiàn)在瀏覽器上,所以該XSS攻擊將一直存在。若其他用戶訪問該頁面,則惡意腳本會被觸發(fā),這就是存儲型XSS。實際上,還有一種XSS攻擊,即DOM型XSS,它是一種特殊類型的XSS攻擊,是基于文檔對象模型的一種漏洞。項目知識準備01XSS攻擊的審計關鍵點是一些輸出函數(shù),如print()、print_r()、sprintf()、printf()、echo()、die()等,所以主要查找輸出函數(shù),之后判斷輸入的參數(shù)是否可控,是否經過編碼、過濾等。總體來說,出現(xiàn)XSS漏洞的場景比出現(xiàn)SQL注入漏洞的場景多。出現(xiàn)XSS漏洞的主要場景包括搜索內容、發(fā)布文章、在留言板留言、回復評論、設置資料等。審計思路三XSS漏洞的危害還是非常大的,它不僅可以簡單地彈出一個窗口,還可以在Web應用中注入代碼。攻擊者可以利用XSS漏洞獲取Cookie信息、劫持賬戶、釣魚、爆發(fā)Web2.0蠕蟲、進行蠕蟲式掛馬攻擊、刷廣告、刷瀏覽量、破壞網(wǎng)上數(shù)據(jù)、執(zhí)行ActiveX、執(zhí)行Flash內容、強迫用戶下載軟件,以及對硬盤和數(shù)據(jù)進行操作等,而這些對前端做的事都可能造成危害,所以XSS攻擊的本質是執(zhí)行腳本,而一個JavaScript腳本就可以嚴重破壞網(wǎng)絡。漏洞危害二02任務1跨站腳本攻擊漏洞分析任務1跨站腳本攻擊漏洞分析02能夠進行跨站腳本攻擊漏洞的分析了解網(wǎng)絡安全等級保護制度中安全定級環(huán)節(jié)的基本內容。任務目標一任務實施二1.反射型XSS反射型XSS是比較普遍的XSS攻擊,雖然其危害程度通常較小,但是最好不要輕易放過任何一個漏洞。低危害的漏洞只是沒有嚴格的觸發(fā)流程,當很多種低危害的漏洞被組合在一起時,它們的危害程度不低于注入漏洞的危害程度。反射型XSS有三種常見的場景:第一種是將前端獲取的內容直接輸出到瀏覽器頁面中;第二種是將前端獲取的內容輸出到HTML中;第三種是將前端獲取的內容直接輸出到<script>標簽中。任務1跨站腳本攻擊漏洞分析02任務實施二(1)將前端獲取的內容直接輸出到瀏覽器頁面中,測試代碼如下:(2)將前端獲取的內容輸出到HTML中,測試代碼如下:(3)將前端獲取的內容輸出到<script>標簽中,測試代碼如下:在白盒審計中,只要找到帶有參數(shù)的輸出函數(shù),并根據(jù)輸出函數(shù)對輸出的內容進行回溯,即可判斷輸入的參數(shù)中是否包含轉義字符。1.反射型XSS任務1跨站腳本攻擊漏洞分析02任務實施二存儲型XSS通常是因為服務端沒有對攻擊者輸入的惡意腳本進行校驗就將其直接存儲到數(shù)據(jù)庫中而觸發(fā)的,并且每次都通過調用數(shù)據(jù)庫的方式將數(shù)據(jù)的內容直接呈現(xiàn)在頁面上。例如,對于論壇的評論回復功能,一些攻擊者可以在回復的界面中提交惡意的Payload,而用戶回復的內容會被存儲到數(shù)據(jù)庫中,那么當用戶查看這個帖子的信息和回復內容時,界面就會將惡意的Payload展示出來。測試代碼如下:2.存儲型XSS任務1跨站腳本攻擊漏洞分析02任務實施二DOM是一個平臺和語言都中立的接口,可以使程序和腳本動態(tài)地訪問與更新文檔的內容、結構及樣式。而DOM型XSS作為一種特殊類型的XSS攻擊,它的數(shù)據(jù)流方向是從URL到瀏覽器的,同時用戶輸入的參數(shù)既可以被JavaScript腳本讀取,又可以不進入服務器,因此,它不但可以有效地避免WAF檢測,而且隱蔽性強??赡苡|發(fā)DOM型XSS的常見輸入點與輸出點如表5-1所示。3.DOM型XSS03任務2跨站腳本攻擊漏洞代碼審計任務2跨站腳本攻擊漏洞代碼審計03能夠進行跨站腳本攻擊漏洞的代碼審計了解網(wǎng)絡安全等級保護制度中等保測評環(huán)節(jié)的基本內容。任務目標一任務實施二1.環(huán)境搭建本任務使用YXCMS1.4.6,在下載源代碼后,將壓縮包解壓縮到根目錄中,訪問localhost,進入“YXCMS安裝向導”的“協(xié)議”界面,如圖5-1所示。任務2跨站腳本攻擊漏洞代碼審計03任務實施二單擊“同意上述協(xié)議進入下一步”按鈕,進入“系統(tǒng)檢查”界面,即可對系統(tǒng)進行檢查,包括Web服務器、PHP版本、是否支持MySQL、配置文件是否有可讀/寫文件權限等方面。在系統(tǒng)檢查通過后,單擊“下一步”按鈕,進入“數(shù)據(jù)庫安裝”界面,即可在此處輸入數(shù)據(jù)庫相關信息,如圖5-2所示。在信息輸入完成后,單擊“開始安裝”按鈕,即可開始安裝。在YXCMS安裝成功后,單擊“完成”按鈕,如圖5-3所示,之后即可直接訪問后臺,后臺默認賬號為admin,默認密碼為123456。1.環(huán)境搭建任務2跨站腳本攻擊漏洞代碼審計03任務實施二單擊“同意上述協(xié)議進入下一步”按鈕,進入“系統(tǒng)檢查”界面,即可對系統(tǒng)進行檢查,包括Web服務器、PHP版本、是否支持MySQL、配置文件是否有可讀/寫文件權限等方面。在系統(tǒng)檢查通過后,單擊“下一步”按鈕,進入“數(shù)據(jù)庫安裝”界面,即可在此處輸入數(shù)據(jù)庫相關信息,如圖5-2所示。在信息輸入完成后,單擊“開始安裝”按鈕,即可開始安裝。在YXCMS安裝成功后,單擊“完成”按鈕,如圖5-3所示,之后即可直接訪問后臺,后臺默認賬號為admin,默認密碼為123456。1.環(huán)境搭建03任務實施二漏洞觸發(fā)點在protected/apps/default/controller/columnController.php文件的in()函數(shù)中,代碼如下:2.漏洞分析任務2跨站腳本攻擊漏洞代碼審計03任務實施二2.漏洞分析任務2跨站腳本攻擊漏洞代碼審計case6是接收表單的類型。跟蹤case6中的extend()函數(shù),可以看到數(shù)據(jù)的處理過程。整個switch循環(huán)用于解析并處理用戶輸入的各個字段,其中有兩處是進行過濾的部分:如果是數(shù)組,就先將其拆分,再放到deletehtml()函數(shù)中進行過濾,之后放到in()函數(shù)中進行解碼;如果是字符串,就先將其放到html_in()函數(shù)中,再放到RemoveXSS()函數(shù)中進行過濾。下面采用數(shù)組的方式來繞過過濾。跟蹤deletehtml()函數(shù),看它是如何進行過濾的。在/protected/include/lib/common.function.php文件中,可以看到<script>標簽和<>都會被替換為空,之后會將實體化的字符替換成原本的字符,因此可以采用這種方式來繞過過濾,代碼如下:03任務實施二2.漏洞分析任務2跨站腳本攻擊漏洞代碼審計在處理結束之后,會到達in()函數(shù)中的htmlspecialchars()函數(shù),該函數(shù)會將預定義的字符轉換為HTML實體字符,代碼如下。問題的關鍵在于deletehtml()函數(shù)中正則匹配的部分,既然在輸出的位置進行了HTML解碼,那么可以在數(shù)據(jù)庫中插入數(shù)據(jù)時進行HTML編碼,這樣編碼后的Payload就不會被正則匹配到,后續(xù)在插入數(shù)據(jù)時再對其進行轉碼即可。03任務實施二3.漏洞利用任務2跨站腳本攻擊漏洞代碼審計訪問:8081/index.php?r=default/column/index&col=guestbook,進入“留言本”界面,如圖5-4所示。將參數(shù)tname改為以數(shù)組形式進行參數(shù)傳遞,輸入Payload“TEST<script%26gt;alert(/xss/)</script%26gt;”,如圖5-5所示。在留言成功后,登錄后臺管理界面,先單擊界面頂部的“結構管

溫馨提示

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

評論

0/150

提交評論