[英]secure php host name information - $_SERVER['HTTP_HOST'] alternative
[英]PHP $_SERVER['HTTP_HOST'] escaping, does this look acceptable?
我正在學習逃避的事情,並開始閱讀由於XSS攻擊而使用$_SERVER['HTTP_HOST']
會有多大風險。
我想出了這個,並想知道我是否可以得到一些關於我的嘗試的反饋。
htmlspecialchars(
filter_var( $_SERVER[ 'HTTP_HOST' ], FILTER_SANITIZE_URL ),
ENT_QUOTES, 'UTF-8'
)
看起來好嗎?
這么多取決於這個變量是安全的,我只需要求輸入。
編輯:
我將在整個網站上使用它進行顯示,包括基本的錨點hrefs,表單動作等。
這取決於你想要用什么。 如果要顯示它,請使用htmlspecialchars。 如果要將其用作數據庫查詢,則可以在mysql的情況下使用mysql_real_escape_string。 (或准備好的陳述)
不同的轉義函數應該用於不同的情況,例如:
urlencode
用於將放在<a>
標簽中的查詢字符串中的項目,即。 echo '<a href="index.php?foo=' . urlencode($foo) . '">';
(另見http_build_query
) mysql_real_escape_string
用於SQL語句中的變量(雖然我更喜歡綁定變量) htmlentities
,可能包含HTML(另請參閱strip_tags
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.