貓寧!!!跨域
參考連接:http://www.ituring.com.cn/book/885瀏覽器
隨書答案。緩存
1. 在應用程序的行爲中,有什麼「明顯特徵」可用於肯定大多數 XSS 漏洞?服務器
用戶提交的輸入在應用程序對該輸入的響應中原樣返回。cookie
2. 假設在應用程序未經過驗證的功能區域發現了一個反射型 XSS 漏洞。如何利
用這個漏洞攻破一個經過驗證的應用程序會話?請想出兩種不一樣的方法。工具
多數狀況下,利用未經過驗證的功能中的 XSS 漏洞同樣能夠針對已經過驗證的用
戶實施有效攻擊——這些功能與已經過驗證的功能的運行機制相同,可用於在已
經過驗證的用戶會話中執行任意 JavaScript 腳本。
即便目標用戶在攻擊過程當中並未登陸,攻擊者仍有可能攻破他們的帳戶。若是應
用程序易於受到會話固定攻擊,攻擊者能夠截獲用戶的令牌並等待其登陸。攻擊
者能夠在登陸頁面注入代碼來截獲鍵擊,甚至能夠顯示一個木馬登陸表單,將用
戶的證書發送到其餘位置。設計
3. 假設一個 cookie 參數未通過任何過濾或淨化就被複制到應用程序的響應中。
是否能夠利用這種行爲在返回的頁面中注入任意 JavaScript?是否能夠利用這
種行爲實施針對其餘用戶的 XSS 攻擊?ip
第一個問題的答案是「是」。固然能夠利用這種行爲經過專門設計的輸入
注入任意 JavaScript。第二個問題的答案是「或許」。之前,有各類方法能夠
在跨域請求中注入任意 HTTP 消息頭,注入惡意 cookie。舊版本的 Flash 及
XMLHttpRequest 一直易於受到這類攻擊。此外,許多使用 cookie 的應用程序實
際上接受位於其餘位置(如查詢字符串或消息主體)的同名參數。字符串
4. 假設在僅返回給本身的數據中發現了保存型 XSS 漏洞。這種行爲是否存在安
全缺陷?get
孤立來講,用戶彷佛只能夠利用這種行爲來攻擊自身。可是,若是與其餘適
當的漏洞(如訪問控制漏洞或跨站點請求僞造漏洞)相結合,則這種行爲可能會
形成嚴重後果,並可能致使攻擊者可以在向其餘應用程序用戶顯示的頁面中注入
保存型 JavaScript。
5. 在攻擊一個處理文件附件並在瀏覽器中顯示這些內容的 Web 郵件應用程序
時,應當即檢查哪一種常見的漏洞?
若是應用程序不經任何淨化就顯示 HTML 或文本文件,則這些 HTML 或文本文
件中包含的 JavaScript 將在任何查看該附件的用戶的瀏覽器中執行。此外,如
果 JPEG 文件包含 HTML,則某些瀏覽器會自動將該文件做爲 HTML 處理。在防範
郵件附件中的 XSS 方面,許多 Web 郵件應用程序並未採起足夠的保護措施。
6. 瀏覽器的同源策略如何給 Ajax 技術 XMLHttpRequest 的應用形成影響?
因爲 XMLHttpRequest 可用於從 HTTP 請求中獲取完整的響應,所以,正常狀況下,
只能利用它向和調用它的域相同的域提出請求。可是,HTML5 引入了一個工具,
若是所請求的域許可,XMLHttpRequest 可利用該工具提出跨域請求並檢索響應。
7. 列舉 3 個利用 XSS 漏洞的可行攻擊有效載荷(也就是說,攻擊者能夠在其餘
用戶的瀏覽器中執行的惡意操做而不是傳送攻擊的方法)。
有無數針對 XSS 漏洞的攻擊有效載荷。如下是一些常見的有效載荷:
盜竊會話 cookie;
引誘用戶操做;
注入木馬功能;
盜竊存入緩存的自動完成數據;以及
記錄鍵擊。
8. 已知一個反射型 XSS 漏洞,能夠在返回頁面的 HTML 代碼的某個位置注入任意
數據。插入的數據被截短至 50 字節,可是咱們但願注入一個超長的腳本,而且
不想調用外部服務器上的腳本。如何解決長度限制呢?
能夠將反射型 XSS 漏洞「轉換成」基於 DOM 的 XSS 漏洞。例如,若是易受攻擊的
參數稱爲 vuln,則可使用如下 URL 執行任意長度的腳本:
/script.asp?vuln=<script>eval_r(location.hash.substr(1))</script>#ale
rt('long script here ......')
9. 已知在一個必須使用 POST 方法的請求中存在反射型 XSS 漏洞。攻擊者可使
用哪一種傳送機制實施攻擊?
若是 POST 方法是必需的,則不能僅僅在應用程序中構建一個專門設計的 URL,
以便在用戶訪問該 URL 時實施攻擊。可是,能夠建立一個第三方網頁,使用 POST
方法向易受攻擊的應用程序提交一個表單和位於隱藏字段中的相關參數。當用戶
查看該網頁時,可使用 JavaScript 自動提交上述表單。