[英]Is htmlspecalchars in html value attributes enough to prevent xss?
htmlspecialchars()
是一種萬無一失的方法,可以防止對HTML
元素屬性進行XSS
攻擊的風險嗎?
例如,在此輸入元素中,使用htmlspecialchars()
還會對引號進行編碼可確保總體安全嗎?
從邏輯上看,這樣可以阻止任何字符串脫離value屬性的上下文; 還是還有更多可以做的事情?
<input type="text" value="<?php echo htmlspecialchars($dangerousString, ENT_QUOTES, 'UTF-8'); ?>"
假設您使用的是現代版本的php,則htmlspecialchars
應該可以解決問題。
重要的是要注意,還必須通過標題和元標記為整個頁面提供相同的編碼( utf8
)。 否則,您將受到UTF-7注入 。
還要注意, htmlspecialchars
僅適用於value
這類不解釋javascript的屬性。 對於src
和朋友來說 ,這還不夠 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.