ASP.NET AntiXSS的使用】的更多相关文章

XSS跨站脚本攻击        是指用户输入HTML编码对网站进行跨站攻击.            通过使用FCKeditor.FreeTextBox.Rich TextBox.Cute Editor.TinyMCE等等Html编辑器,用户可以输入一些危险字符,注入到网站中,形式XSS.           (一般的解决办法是使用BBCode的方法,但它的表现力不是很友好,而且并不是标准格式.)        而AntiXSS就是微软推出用于防止XSS的一个类库,        AntiXSS…
下载类库: http://wpl.codeplex.com 添加程序集引用 在web.config文件中将AntiXSS类库注册为应用程序的编码器           在<system.web>节点添加:<httpRuntime encoderType="Microsoft.Security.Application.AntiXSSEncoder,AntiXssLibrary"/>…
1:Form提交模式 在使用Form提交时,MVC框架提供了一个默认的机制.如果数据中含有恶意字,则会自动转向出错页面.   2:Ajax+JSON提交模式. MVC框架未提供对于Json数据的AntiXSS支持,所以必须自行实现.   Step1:定义一个Attribute[AllowHtml],如果有这个标记,则说明该属性允许Html,不需要验证.     /// <summary>     /// 用于标记某个属性是否允许html字符     /// </summary>  …
ASP.NET 安全 概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 跨站请求伪造 认证 所谓认证,简单的来说就是验证一个用户的身份.这取决于我们开发的站点的类型,是否允许匿名访问,是否是属于管理员或者其它角色的用户等等.也就是说我们的整个程序或者某些功能是针对某些特定的用户开发的,那么我们可能就要进行认证来确定用户的身份.需要注意的是,认证与授…
输入进行 Html 转码: HttpUtility.HtmlEncode(content); 输入保留 Html 标记,使用 AntiXSS 过滤: Install-Package AntiXSS Microsoft.Security.Application.Sanitizer.GetSafeHtmlFragment(content); 参考资料: AntiXSS - 支持Html同时防止XSS攻击 保护您的 ASP.NET 应用程序 Web漏洞检测及修复…
AntiXSS v4.0中Sanitizer.GetSafeHtmlFragment等方法将部分汉字编码为乱码的解决方案 以下代码为asp.net环境下,c#语言编写的解决方案.数据用Dictionary,而不是用其他的例如ArrayList存放,是为了速度.将Dictionary替换为HashTable也是一个不错的解决方案调用举例 String abc = //....你的某些赋值行为,这里的字符串是要处理的内容.............abc=Sanitizer.GetSafeHtmlFr…
       Web 程序运行在标准的.基于文本的协议(HTTP 和 HTML)之上,所以特别容易受到自动攻击的伤害.本章主要介绍黑客如何滥用应用程序,以及针对这些问题的应对措施.   威胁:跨站脚本攻击(XSS)        XSS 攻击在 Web安全威胁上排名第一,然而遗憾的是,导致 XSS 猖獗的主要原因是开发人员不熟悉这种攻击.可以使用 2 种方法实现 XSS: 被动注入(Passive Injection):通过用户将恶意的脚本命令输入到网站中,而这些网站又能接收"不干净"…
       ASP.NET MVC 不像 ASP.NET WEB FORMS 那样提供了很多自动保护机制来保护页面不受恶意用户的攻击,更明确的说,后者是致力于使应用程序免受攻击: 服务器组件对显示的值和特性进行 HTML 编码,以帮助阻止 XSS 攻击. 加密和验证试图状态,从而帮助阻止篡改提交的表单. 请求验证(%@page validaterequest="true"%)截获看起来是恶意的数据,并给出警告(也是 ASP.NET MVC 框架默认开启的保护). 事件验证帮助组织注入…
假如项目在前期没有过滤客户提交的字符,那么可以在输出的时候,对输出的字符进行过滤,防止出现XSS跨域攻击. 原理简单:利用ASP.NET API的管道原理,在MessageHandlers中添加一个自定义的处理环节. 好了,源代码如下: public class MessageFilterOutputHandler : MessageHandler { protected override async Task OutgoingMessageAsync(HttpResponseMessage m…
目前做ASP.NET项目的时候就有遇到过“用户代码未处理HttpRequestValidationException:从客户端***中检测到有潜在危险的 Request.Form/Request.QueryString值.”的问题,其实这是ASP.NET对于XSS攻击的一种防御手段,防止恶意的HTML标记或脚本数据注入到网站中. 遇到这种问题,我百度了一下,看了大神写的博客,于是转载+备份. 要解决这个问题需要对应多种情况,并且有多种方法来解决.在ASP.NET WebForm项目中可以对单独页…
在网站开发中,需要注意的一个问题就是防范XSS攻击,Asp.net mvc中已经自动为我们提供了这个功能.用户提交数据时时,在生成Action参数的过程中asp.net会对用户提交的数据进行验证,一旦发现提交的数据中包含了XSS攻击的代码,就会抛出异常,用户在这时候就会看到一个出错页面.这种默认的行为保证了网站的安全性,但是对于用户体验来说却不够友好,所以大多数人都希望对用户进行提示,或者对提交的数据进行过滤,移除掉XSS攻击的代码. 对于此类问题,网上有很多人问过,通过百度搜索出来的解决方法好…
     Asp.net Web 应用程序正式发布前,我们还是做一些检查,所以需要这个CheckList,如下图今天的Asp.net 已演化这样的了:   但不管是什么组件,目前的Web最终还得通过Http,我们可以在不同层次做相应的检查. 基本 1. 所有UnitTest单元测试都通过了吗?这个看起来很简单的检查,但如果你的项目没有持续集成,你可能忘记检查是否所有的测试都通过了.前提还有这些UnitTest覆盖大部分代码. 2. 浏览一下网站做一个简单的冒烟测试.试试W3C validator…
asp.net MVC 常见安全问题及解决方案 一.CSRF (Cross-site request forgery跨站请求伪造,也被称为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用) 详细说明: http://imroot.diandian.com/post/2010-11-21/40031442584   Example :            在登陆状态下进入了攻击网站向安全站点发送了请求.   Soluti…
第7章 成员资格.授权和安全性 7.1 安全性 ASP.NET MVC 提供了许多内置的保护机制(默认利用 HTML 辅助方法和Razor 语法进行 HTML编码以及请求验证等功能特性,以及通过基架构建的控制器白名单表单元素来防止重复提交攻击) 永远不要相信用户提交的任何数据. 实际的例子 每次渲染用户提交的数据的时候对其进行编码. 考虑好网站哪些部分允许用户匿名访问,哪些部分需要认证访问. 不要试图自己净化用户的HTML 输入,否则就会失败. 在不需要通过客户端脚本访问cookie时,使用HT…
一.概述 二.什么是XSS 三.预防方法 四.在WebApi中如何实现 在实现之前,需要了解ASP.NET WEB API的pipeline机制. 如上,可以采用多种方式进行参数的过滤 1.重写DelegatingHandler的SendAsync方法进行过滤,结合AntiXss类库实现 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Htt…
原文:http://msdn.microsoft.com/zh-cn/magazine/hh708755.aspx 一.跨站点脚本 简介 XSS 攻击是指将脚本恶意注入用户的浏览会话,这通常在用户不知情的情况下发生. 因为一些事故的发生,许多人已经非常熟悉这些类型的攻击,在这些事故中,某大型社交网站受到攻击,其用户发布了他们未授权的消息. 如果攻击者发布恶意脚本并且他可以让浏览器执行该脚本,则该脚本将在受害者会话的上下文中执行,这基本上使攻击者能够对 DOM 执行其所需的任何操作,包括显示伪造的…
1. 跨站脚本(XSS) 1.1 介绍 1.1.1 被动注入,利用输入html,javascript 等信息伪造链接,图片等使用提交信息,调转页面等 1.1.2 主动注入,黑客主动参与攻击,不会傻等倒霉的用户上钩 1.2 防御 1.2.1 HTML 编码 Html.Encode 1.2.2 HTML 属性编码 Html.AttributeEncode 1.2.3 url 编码 URL.Encode 1.2.4 java script 编码 Ajax.JavaScriptStringEncode…
OWASP(开放Web软体安全项目- Open Web Application Security Project)是一个开放社群.非营利性组织,目前全球有130个分会近万名会员,其主要目标是研议协助解决Web软体安全之标准.工具与技术文件,长 期 致力于协助政府或企业了解并改善网页应用程式与网页服务的安全性. 下表左边是2010年的排名,下表右边是2013年的排名,可以看出改变的地方有: 2010 年的Insecure Cryptographic Storage(不安全加密存储)和Insuffi…
本文转自:http://msdn.microsoft.com/en-us/library/gg416514(v=vs.108).aspx The Model-View-Controller (MVC) pattern is an architectural design principle that separates the components of a Web application. This separation gives you more control over the indi…
XSS跨站脚本攻击        是指用户输入HTML编码对网站进行跨站攻击.            通过使用FCKeditor.FreeTextBox.Rich TextBox.Cute Editor.TinyMCE等等Html编辑器,用户可以输入一些危险字符,注入到网站中,形式XSS.           (一般的解决办法是使用BBCode的方法,但它的表现力不是很友好,而且并不是标准格式.)        而AntiXSS就是微软推出用于防止XSS的一个类库,        AntiXSS…
1 验证  一般采用表单验证完成登陆验证,建议结合SSL使用.为限制控制器只能执行HTTPS,使用RequireHttpsAttribute 2 授权 对账户的权限的控制可以通过在控制器或控制器操作上加AuthorizeAttribute 属性. 扩展授权过滤器 扩展授权过滤器可以定义继承自AuthorizeAttribute的类,也可以定义同时继承自FilterAttribute, IAuthorizationFilter接口的类. [AttributeUsage(AttributeTarge…
原作是在GitHub上,基于Node.js所写.但是..ASP的JS引擎跟V8又有些不同..于是,嗯.. <% Function AntiXSS_VbsTrim(s) AntiXSS_VbsTrim=Trim(s) End Function %> <script language="javascript" runat="server"> //原GITHUB:https://github.com/leizongmin/js-xss/blob/m…
1.NFine mvc+ef 2.Grove orm架构 3.NHibernate orm 4.NBear 5.petshop 6.Membership 7.Brnshop 网上商城 8.cms快速开发:http://www.open-open.com/news/view/a90f1 9.c#开源框架:http://www.cnblogs.com/gaoyuchuanIT/articles/5612268.html 来源(转自):http://www.cnblogs.com/zxtceq/p/5…
概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 跨站请求伪造 认证 所谓认证,简单的来说就是验证一个用户的身份.这取决于我们开发的站点的类型,是否允许匿名访问,是否是属于管理员或者其它角色的用户等等.也就是说我们的整个程序或者某些功能是针对某些特定的用户开发的,那么我们可能就要进行认证来确定用户的身份.需要注意的是,认证与授权是是完全不一样的概念…
本文转自:http://www.cnblogs.com/Jessy/p/3539564.html asp.net MVC 常见安全问题及解决方案 一.CSRF (Cross-site request forgery跨站请求伪造,也被称为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用) 详细说明: http://imroot.diandian.com/post/2010-11-21/40031442584   Examp…
AntiXSS 库目前处于版本 4.2.1,下载地址:http://www.microsoft.com/download/en/details.aspx?id=28589.它经历了一次非常棒的重新编写过程,并且就安全性而言,它提供了比 ASP.NET 附带的编码器更好的 HTML 编码器. 并不是说 Server.HtmlEncode 有什么问题,只是它侧重于兼容性而不是安全性. AntiXSS 使用不同的方法进行编码. 有关详细信息,请访问 msdn.microsoft.com/securit…
概述 安全在web领域是一个永远都不会过时的话题,今天我们就来看一看一些在开发ASP.NET MVC应用程序时一些值得我们注意的安全问题.本篇主要包括以下几个内容 : 认证 授权 XSS跨站脚本攻击 跨站请求伪造 认证 所谓认证,简单的来说就是验证一个用户的身份.这取决于我们开发的站点的类型,是否允许匿名访问,是否是属于管理员或者其它角色的用户等等.也 就是说我们的整个程序或者某些功能是针对某些特定的用户开发的,那么我们可能就要进行认证来确定用户的身份.需要注意的是,认证与授权是是完全不一样的概…
http://stackoverflow.com/questions/29939566/preventing-cross-site-request-forgery-csrf-attacks-in-asp-net-web-forms 1.在Master页面添加以下代码 C# public partial class SiteMaster : MasterPage { private const string AntiXsrfTokenKey = "__AntiXsrfToken"; pr…
前言 在 ASP.NET Core 中,仍然沿用了 ASP.NET里面的 Identity 组件库,负责对用户的身份进行认证,总体来说的话,没有MVC 5 里面那么复杂,因为在MVC 5里面引入了OWIN的东西,所以很多初学者在学习来很费劲,对于 Identity 都是一头雾水,包括我也是,曾经在学 identity 这个东西前后花了一个多月来搞懂里面的原理.所以大部分开发者对于 Identity 并没有爱,也并没有使用它,会觉得被绑架. 值得庆幸的是,在 ASP.NET Core 中,由于对模…
来博客园有一个月了,哈哈.在这里学到了很多东西.今天也来试着分享一下学到的东西.希望能和大家做朋友共同进步. 最近由于项目需要上传多张图片,对于我这只菜鸟来说,以前上传图片都是直接拖得控件啊,而且还是一次只能传一张.由于现在 项目用的是MVC,像Asp那样 拖控件 是不现实了.在我脑海中立刻就浮现出一个想法,网上一定有插件,哈哈.去网上一搜索,哇哦这么多.在众多的插件中我被百度的WebUploader吸引了.官网上写着:"WebUploader是由Baidu WebFE(FEX)团队开发的一个简…