簡體   English   中英

URL 內的元標記和腳本處理

[英]Meta tag and Script processing inside URL

我目前正在研究會話固定技術並閱讀有關它的這篇文章: https : //www.owasp.org/index.php/Session_fixation

在示例 2 和 3 中,它指出我大概可以設置使用以下 URL 加載資源的用戶的 cookie:

http://website.kom/<script>document.cookie=”sessionid=abcd”;</script>
http://website.kon/<meta http-equiv=Set-Cookie content=”sessionid=abcd”>

這是否意味着瀏覽器在處理 URL 時會處理這些標簽? 我曾嘗試執行嵌入在加載 iframe 的 url 中的腳本,即使我對腳本標簽進行了 url 編碼,也無法讓它們執行。

編輯

我還認為問題出在向其他用戶顯示 url 並且腳本執行時。 然而,會話固定的本質是讓攻擊者在登錄前設置用戶的 cookie,以便攻擊者在用戶登錄時劫持會話。 這與試圖竊取用戶 cookie 的普通 XSS 攻擊形成對比劫持會話。 如果是這種情況,用戶是否應該首先到達目標站點,以便上述腳本更改目標站點的瀏覽器 cookie? 在我的理解中,瀏覽器 cookie 是基於每個站點的。 因此,如果上述腳本在目標站點之外的任何其他站點中執行,cookie 將設置為用戶當前所在的站點,而不是目標站點。 我的理解正確嗎?

如果您在瀏覽器的 url 欄中鍵入類似的內容:

http://example.com/<script>alert("Hello World");</script>

它被視為

http://example.com/%3Cscript%3Ealert%28%22Hello%20World%22%29;%3C/script%3E

純 url 在瀏覽器中不應該做任何事情。 如果瀏覽器向您顯示帶有文本“Hello World”的警報,則該瀏覽器是一個安全漏洞,不應安裝在某個地方。

然而,如果你正在嘗試創建一個動態頁面(JS/PHP/C#/Java 等),你應該永遠記住,永遠不要相信客戶端。

如果您要輸出{RequestURI} ,即http://example.com/之后的所有內容,您就會遇到問題。 你應該總是在用戶輸入中編碼 Html 實體,或者使用一些過濾器,禁止<meta><script>和任何可能有問題的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM