5

我正在构建一些网页来测试各种漏洞场景,但是 ASP.Net 或 IIS 在保护我免受自己侵害方面做得太好了。

我正在尝试做的一件事是返回带有各种 Content-Type 标头的响应,带有和不带有字符集声明。我的问题是,如果我省略了字符集,那么 ASP.Net 似乎默认添加了 utf-8。

在我的 ASPX.cs 代码隐藏中,如果我有Response.AddHeader("Content-Type", "text/html")or Page.ContentType = "test/html",我希望看到页面返回以下标题:

Content-Type: text/html

相反,我得到:

Content-Type: text/html; charset=utf-8

如果我使用Response.AddHeader("Content-Type", "text/html; charset=iso-8859-1"),那么我会得到预期的标题:

Content-Type: text/html; charset=iso-8859-1

charset=utf-8当我不想要它时,有没有办法阻止 ASP.Net(IIS?)附加到标题?

我正在使用 ASP.Net 4.0 和 IIS 7.5。

4

1 回答 1

8

试试这个:

Response.Charset = "";
于 2013-10-24T16:04:13.433 回答