首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >XSS攻击与HtmlEncode

XSS攻击与HtmlEncode
EN

Stack Overflow用户
提问于 2014-04-30 12:34:21
回答 1查看 518关注 0票数 0

使用C#和VS 2010。

为了做一些最终的测试,我发现有些地方需要保护。使用一个简单的脚本来测试:

代码语言:javascript
运行
复制
    <script>alert('123');</script>

当然,页面会被弹出消息打断:

代码语言:javascript
运行
复制
 JavaScript runtime error: Sys.WebForms.PageRequestManagerServerErrorException: 
 An unknown error occurred while processing the request on the server. 
 The status code returned from the server was: 500

在页面指令中,它被设置为

代码语言:javascript
运行
复制
 ValidateRequest="false"

还使用设置为编码的文本框的AntiXSSLibrary:

代码语言:javascript
运行
复制
   string test = Encoder.HtmlEncode(txtSomeTextBox.Text);

上面的错误发生在一个有更新的页面上。

在没有更新的页面上进行测试时,错误是:

代码语言:javascript
运行
复制
 A potentially dangerous Request.Form value was detected from the client
(ctl00$ContentPlaceHolder1$txtTest="<script>alert('123')..."). 

页面上也有相同的代码。

正在输入的信息存储在Server中,稍后由同事查看。

为什么页码破了?

为什么HtmlEncode没有像预期的那样工作?

如有任何意见,我们将不胜感激。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-30 12:44:50

谢谢你的链接!

我到处找了好几个小时,没有运气。

尤其是在这里。

现在,我看到它需要对web.config文件进行简单的调整。

代码语言:javascript
运行
复制
 <httpRuntime requestValidationMode="2.0" />

谢谢!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23388236

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档