我想确保在错误页面上没有任何不愉快的事情进入引荐来源网址。
为了验证 http 标头,我应该检查什么。
以下是我当前的代码:
// Ensure the referrer header is good
if (this.Request.UrlReferrer.IsWellFormedOriginalString() &&
this.Request.UrlReferrer.Host.Equals(this.Request.Url.Host))
{
这将导致使用 %3C 和 %3E 而不是 < 和 > 的 acunetix 扫描失败,因此我显然需要涵盖 html 编码 - 还有什么我遗漏的吗?
更新 我可以使用以下代码捕获所有 acunetix 扫描:
if (this.Request.UrlReferrer.IsWellFormedOriginalString() &&
this.Request.UrlReferrer.Host.Equals(this.Request.Url.Host) &&
!Regex.IsMatch(this.Request.UrlReferrer.ToString(),
"%3C",
RegexOptions.IgnoreCase))
{