最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
.net过滤各种不安全数据方法
时间:2011-11-20 编辑:简简单单 来源:一聚教程网
代码如下 | 复制代码 |
public static string StringFilters(string input) { if (string.IsNullOrEmpty(input)) return input; /*跨站攻击过虑*/ input = input.Replace("", "&#");//过滤 攻击方式javascript:alert('XSS') input = Regex.Replace(input, @"javascript:", "Javascript:", RegexOptions.IgnoreCase);//过滤JS 攻击方式:javascript:alert('XSS'); input = Regex.Replace(input, @"vbscript:", "Vbscript:", RegexOptions.IgnoreCase);//过滤JS 攻击方式:vbscript:msgbox('XSS'); input = Regex.Replace(input, @"j *a *v *a *s *c *r *i *p *t:", "Vbscript:", RegexOptions.IgnoreCase);//攻击方式:java script:alert('XSS'); input = Regex.Replace(input, @"/*[sS]**/", "", RegexOptions.IgnoreCase); input = Regex.Replace(input, @"expression", "expression", RegexOptions.IgnoreCase); input = Regex.Replace(input, @"<[u0020]*style[^>]*>", "S:yle", RegexOptions.IgnoreCase); input = Regex.Replace(input, @"<[^>]*object[^>]*>", "objec&$58", RegexOptions.IgnoreCase);//攻击方式 注意,这样过滤后将无法使用FLASH /*各种事件过滤*/ input = Regex.Replace(input, @"<[^>]*[u0020]+on[A-Za-z]{3,20}[u0020]*=[u0020]*[^>]*>", "Js Event", RegexOptions.IgnoreCase);// input = input.Replace("'", "'");//单引号防止SQL注入 input = Regex.Replace(input, @"script", "Script", RegexOptions.IgnoreCase);//防止脚本攻击 input = Regex.Replace(input, @"frame", "frame", RegexOptions.IgnoreCase);//防止iframe 挂马 input = Regex.Replace(input, @"form", "form", RegexOptions.IgnoreCase);//禁止表单提交 input = Regex.Replace(input, @"meta", "meta", RegexOptions.IgnoreCase);//防止用使meta跳转到非法网页 return input; } |
-
上一个: asp.net防sql注入代码
-
下一个: 三种asp.net数据库连接类
相关文章
- C#复制数组的两种方式及效率比较解读 10-24
- ASP.NET Identity用法解析 10-24
- ASP.NET MVC使用Identity增删改查用户介绍 10-24
- C语言中atoi函数模拟实现介绍 10-18
- .Net反向代理组件Yarp用法介绍 10-10
- .NET使用YARP通过编码方式配置域名转发实现反向代理教程 10-10