- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
防止JavaScript攻击
阻止 JavaScript 注入攻击
本教程的目的是解释如何在 ASP.NET MVC 应用程序中阻止 JavaScript 注入攻击。本教程讨论防止网站遭受 JavaScript 注入攻击的两种方法。我们将学习如何通过编码显示的数据防止 JavaScript 注入攻击。我们还将学习如何通过编码接受的内容防止 JavaScript 注入攻击。
什么是 JavaScript 注入攻击?
每当接受用户输入的内容并重新显示这些内容时,网站就很容易遭受 JavaScript 注入攻击。让我们研究一个容易遭受 JavaScript 注入攻击的具体应用程序。
假设已经创建了一个客户反馈网站,如图 1 所示。客户可以访问网站并输入对产品的反馈信息。当客户提交反馈时,反馈信息重新显示在反馈页面上。
?
图 1:客户反馈网站( 单击查看大图)
客户反馈网站使用程序清单 1 中的 controller。此 controller 包含两个名称为 Index() 和 Create() 的操作。
程序清单 1 HomeController.vb
复制代码
Public Class HomeController
Inherits System.Web.Mvc.Controller
Private db As New FeedbackDataContext()
Function Index()
Return View(db.Feedbacks)
End Function
Function Create(ByVal message As String)
Add feedback
Dim newFeedback As New Feedback()
newFeedback.Message = Server.HtmlEncode(message)
newFeedback.EntryDate = DateTime.Now
db.Feedbacks.InsertOnSubmit(newFeedback)
db.SubmitChanges()
Redirect
Return RedirectToAction(Index)
End Function
End Class
Index() 方法显示 Index 视图。此方法将以前所有的客户反馈传递到 Index 视图,方法是使用 LINQ to SQL 查询从数据库检索反馈。
Create() 方法创建新的 Feedback 项并将其添加到数据库。客户输入到表单中的消息将传递到消息参数中的 Create() 方法。创建了一个 Feedback 项,消息被分配给 Feedback 项的 Message 属性。通过调用 DataContext.SubmitChanges() 方法,将 Feedback 项提交到数据库。最后,将访问者重定向到 Index 视图,该视图显示所有的反馈。
程序清单 2 中包含了 Index 视图。
程序清单 2 Index.aspx
复制代码
%@ Page Language=VB MasterPageFile=~/Views/Shared/Site.Master AutoEventWireup=false CodeBehind=Index.aspx.vb Inherits=CustomerFeedback.Index%
asp:Content ID=indexContent ContentPlaceHolderID=MainContent runat=server
h1Customer Feedback/h1
p
Please use the following form to enter feedback about our product.
/p
form method=post action=/Home/Create
label for=messageMessage:/label
br /
textarea name=message cols=50 rows=2/textarea
br /br /
input type=submit value=Submit Feedback /
/form
% For Each feedback As CustomerFeedback.Fe
您可能关注的文档
最近下载
- (新课标)人教版小学劳动教育五年级上册第一章劳动项目2《煮面条》教学设计.doc
- 副县长在县委理论学习中心组学习会上的发言(党的作风建设的重要论述).doc VIP
- 注射水纯水纯蒸汽施工方案.pdf VIP
- 2025年全国中小学校党组织书记网络培训示范班在线考试题库及答案.docx VIP
- 电力新能源知识培训课件.pptx VIP
- 电气运行、检修、事故处理、安全操作规程(电气五大规程).docx
- 《矿山隐蔽致灾因素普查规范 大纲》.doc VIP
- 新概念英语第一册 Lesson 21-22课件.ppt VIP
- 2025贵州遵义南国大数据有限公司招聘100人笔试模拟试题及答案解析.docx VIP
- 网信体系下 网络舆情应对流程指南.docx VIP
文档评论(0)