- 浏览: 7955447 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
作者:淘特网
出处:淘特网
注:转载请注明出处
防止sql注入,通常一个一个文件修改不仅麻烦而且还有漏掉的危险,下面我说一上如何从整个系统防止注入。
做到以下三步,相信的程序将会比较安全了,而且对整个网站的维护也将会变的简单。
一、数据验证类:
parameterCheck.cs
二、Web.config
在你的Web.config文件中,在<appSettings>下面增加一个标签:如下
其中key是<saveParameters>后面的值为"OrderId-int32"等,其中"-"前面表示参数的名称比如:OrderId,后面的int32表示数据类型。
三、Global.asax
在Global.asax中增加下面一段:
以后需要修改的时候我们只需要修改以上三个文件,对整个系统的维护将会大大提高效率,当然你可以根据自己的需要增加其它的变量参数和数据类型。
出处:淘特网
注:转载请注明出处
防止sql注入,通常一个一个文件修改不仅麻烦而且还有漏掉的危险,下面我说一上如何从整个系统防止注入。
做到以下三步,相信的程序将会比较安全了,而且对整个网站的维护也将会变的简单。
一、数据验证类:
parameterCheck.cs
public class parameterCheck{
public static bool isEmail(string emailString){
return System.Text.RegularExpressions.Regex.IsMatch(emailString, "['\\w_-]+(\\.['\\w_-]+)*@['\\w_-]+(\\.['\\w_-]+)*\\.[a-zA-Z]{2,4}");
}
public static bool isInt(string intString){
return System.Text.RegularExpressions.Regex.IsMatch(intString ,"^(\\d{5}-\\d{4})|(\\d{5})$");
}
public static bool isUSZip(string zipString){
return System.Text.RegularExpressions.Regex.IsMatch(zipString ,"^-[0-9]+$|^[0-9]+$");
}
}
public static bool isEmail(string emailString){
return System.Text.RegularExpressions.Regex.IsMatch(emailString, "['\\w_-]+(\\.['\\w_-]+)*@['\\w_-]+(\\.['\\w_-]+)*\\.[a-zA-Z]{2,4}");
}
public static bool isInt(string intString){
return System.Text.RegularExpressions.Regex.IsMatch(intString ,"^(\\d{5}-\\d{4})|(\\d{5})$");
}
public static bool isUSZip(string zipString){
return System.Text.RegularExpressions.Regex.IsMatch(zipString ,"^-[0-9]+$|^[0-9]+$");
}
}
二、Web.config
在你的Web.config文件中,在<appSettings>下面增加一个标签:如下
<appSettings>
<add key="safeParameters" value="OrderID-int32,CustomerEmail-email,ShippingZipcode-USzip" />
</appSettings>
<add key="safeParameters" value="OrderID-int32,CustomerEmail-email,ShippingZipcode-USzip" />
</appSettings>
其中key是<saveParameters>后面的值为"OrderId-int32"等,其中"-"前面表示参数的名称比如:OrderId,后面的int32表示数据类型。
三、Global.asax
在Global.asax中增加下面一段:
protected void Application_BeginRequest(Object sender, EventArgs e){
String[] safeParameters = System.Configuration.ConfigurationSettings.AppSettings["safeParameters"].ToString().Split(',');
for(int i= 0 ;i < safeParameters.Length; i++){
String parameterName = safeParameters[i].Split('-')[0];
String parameterType = safeParameters[i].Split('-')[1];
isValidParameter(parameterName, parameterType);
}
}
public void isValidParameter(string parameterName, string parameterType){
string parameterValue = Request.QueryString[parameterName];
if(parameterValue == null) return;
if(parameterType.Equals("int32")){
if(!parameterCheck.isInt(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("double")){
if(!parameterCheck.isDouble(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("USzip")){
if(!parameterCheck.isUSZip(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("email")){
if(!parameterCheck.isEmail(parameterValue)) Response.Redirect("parameterError.aspx");
}
}
String[] safeParameters = System.Configuration.ConfigurationSettings.AppSettings["safeParameters"].ToString().Split(',');
for(int i= 0 ;i < safeParameters.Length; i++){
String parameterName = safeParameters[i].Split('-')[0];
String parameterType = safeParameters[i].Split('-')[1];
isValidParameter(parameterName, parameterType);
}
}
public void isValidParameter(string parameterName, string parameterType){
string parameterValue = Request.QueryString[parameterName];
if(parameterValue == null) return;
if(parameterType.Equals("int32")){
if(!parameterCheck.isInt(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("double")){
if(!parameterCheck.isDouble(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("USzip")){
if(!parameterCheck.isUSZip(parameterValue)) Response.Redirect("parameterError.aspx");
}
else if (parameterType.Equals("email")){
if(!parameterCheck.isEmail(parameterValue)) Response.Redirect("parameterError.aspx");
}
}
以后需要修改的时候我们只需要修改以上三个文件,对整个系统的维护将会大大提高效率,当然你可以根据自己的需要增加其它的变量参数和数据类型。
发表评论
-
.NET 嵌入式版4.2发布:关键更新抢先看
2012-02-22 14:57 1874作为.NET家族的一员,.Net Micro Framewor ... -
asp.net中模拟测试smtp发信
2011-03-20 18:47 1935在asp.net 中,有时要测试发信SMTP,但如果在单元测试 ... -
vs.net 2010两个数据库方面的好工具
2011-02-14 11:47 1901今天发现vs.net 2010在处理数据库方面的两个不错的工具 ... -
将gridview导出到excel,world,pdf的小结
2011-02-07 22:47 2996下面小结下把gridview的数据导出到excel,world ... -
gridviewtips1:gridview的页脚中的加亮显示和页数显示
2011-01-27 09:58 2395在asp.net 中,要经常显示gridview中的页数,并且 ... -
asp.net 4中的HTML过滤的一个新特性
2011-01-21 09:47 1900在asp.net 4中,有个新增加的对HTML过滤,防止XSS ... -
在vs.net 2010中使用重构方法
2011-01-20 16:55 2211在vs.net 2010中,可以很方便地对一些冗余的代码进行重 ... -
一个比较好的.net 3.5的异常报告类
2011-01-10 14:51 1995发现了一个比较好的异常报告类,其中用到了.net 3.5以上的 ... -
asp.net 4.0中menu菜单的改进
2011-01-03 22:47 2606在asp.net 3.5时,如果用menucontrol时,使 ... -
asp.net 4中的新特性之一:控制URL长度
2010-09-14 23:06 2428asp.net 4中的新特性之一:控制URL长度。在ASP.N ... -
vs.net 2010中使用code snippets
2010-09-09 20:58 1615其实在vs.net 2010中,使用code snippets ... -
百万开发者拥戴!七大.NET著名开源项目
2010-09-07 09:42 2341新翻译了篇帖子,原文发表在 http://publish.i ... -
asp.net 2010中jquery调用webservice
2010-08-30 22:21 2789在asp.net 2010中,在建立web应用时,默认已经在s ... -
.net中的placeholder控件
2005-01-15 20:00 2030最近留意到有人问,NET中的placeholder控件用来做什 ... -
asp.net 中一次性更新DATAGRID中所有记录
2005-01-15 20:03 982在asp.net中,如何一次性 ... -
在asp.net 中实现只允许数字输入的文本框
2005-01-15 20:18 1539在asp.net 中实现只允许数字输入的文本框,其实是十分简单 ... -
一个重构代码的小技巧
2005-01-16 21:58 1171刚开始接触重构,听就听的多了,理论没认真看过,不过今天发现,将 ... -
防止SQL注入攻击
2005-02-05 14:42 1184看了本期ASP。NET杂志里的一篇讲防止SQL注入攻击的文章, ... -
优秀.net 控件包介绍
2005-02-18 19:47 1716在oday上看到得,将介绍摘录在这里 NetAdvantage ... -
vs.net 2005中的ConfigurationManager
2005-05-06 18:11 1696vs.net 2005中的ConfigurationManag ...
相关推荐
做到以下三步,相信的程序将会比较安全了,而且对整个网站的维护也将会变的简单。 一、数据验证类:parameterCheck.cs 代码如下:public class parameterCheck{ public static bool isEmail(string emailString){...
如果想整站防注,就在网站的一个公用文件中,如数据库链接文件conn.asp中! 添加<!--#Include File="Neeao_SqlIn.Asp"-->来调用本软件 需要注意的是,在添加到数据库连接文件中,为了不和程序发生冲突, 需添加在...
这个"ASP.NET展会整站源码.zip"文件显然包含了用于构建一个完整的展会网站的所有源代码。源码通常包括HTML、CSS、JavaScript以及C#或VB.NET等编程语言编写的后端代码,这些代码共同协作以实现网站的功能。 ASP.NET...
网软志成是基于微软 .Net 平台开发的分类信息管理系统,它集成了自定义信息发布表单、整站伪静态HTML、分站顶级或二级域名绑定、分类/分站模板管理、IP自动跳转、搜索引擎优化、网银支付、道具、短信/邮箱验证、...
网软志成是基于微软 .Net 平台开发的分类信息管理系统,它集成了自定义信息发布表单、整站伪静态HTML、分站顶级或二级域名绑定、分类/分站模板管理、IP自动跳转、搜索引擎优化、网银支付、道具、短信/邮箱验证、...
【标题】"茶叶公司整站"所代表的是一个专门针对茶叶行业的完整网站模板或系统,设计风格以清新、自然为主,旨在为茶叶公司提供一个展示产品、传播茶文化、进行在线销售的平台。这样的网站通常包含公司介绍、产品展示...
在线积分小游戏整站系统是一种基于Web的互动娱乐平台,它将传统的Flash游戏与积分机制相结合,为用户提供了更丰富的游戏体验。在这个系统中,用户可以通过参与小游戏来赚取积分,这些积分可以用来兑换奖励或者参与更...
【M97】网站建设网络公司整站源码.zip是一个压缩包,其中包含了用于构建一个完整的网站的源代码,尤其适用于网络公司。这个源码可能是基于某种编程语言(如PHP、HTML、CSS、JavaScript等)构建的,旨在为用户提供...
网软志成是基于微软 .Net 平台开发的分类信息管理系统,它集成了自定义信息发布表单、整站伪静态HTML、分站顶级或二级域名绑定、分类/分站模板管理、IP自动跳转、搜索引擎优化、网银支付、道具、短信/邮箱验证、...
系统采用B/S模式,使用主流程序语言,如:ASP.NET编写,实现客户端零维护,将开房、管理、信息、商品等功能有机集成于一体,提高酒店管理的总体效率。 建立完善的安全保障体系,有效利用系统防护程序防范可能发生的...
提供下载的整站,程序源码,功能完全,欢迎大家下载使用.分类信息网站,供求信息网站管理系统功能将更加完全,真正的能为大家在建设分类信息网站,供求信息网站系统中带来安全,稳定,高效。本系统分分类信息网站,供求信息...
6. **安全性**:CGI程序的安全性是一个关键考虑因素,需要防止SQL注入、跨站脚本(XSS)攻击等网络安全威胁。系统可能包括输入验证、数据过滤和安全编码机制。 7. **性能优化**:考虑到CGI程序可能对服务器资源消耗...
网软志成是基于微软 .Net 平台开发的分类信息管理系统,它集成了自定义信息发布表单、整站伪静态HTML、分站顶级或二级域名绑定、分类/分站模板管理、IP自动跳转、搜索引擎优化、网银支付、道具、短信/邮箱验证、...
9. **安全性**:在使用ASP开发企业网站时,需要注意防止SQL注入、XSS攻击、CSRF等网络安全问题,通过验证输入、参数化查询等方式提高系统安全性。 10. **性能优化**:包括代码优化、数据库查询优化、缓存策略、负载...
非常简单,几乎无需改动或根据您的要求少加改动,上传至服务器即可正常运行安全方面:在本人已知的Asp,Asp.net存在的(数据提交,Sql注入,Cookies欺骗,跨站提交,注水 提交)等安全隐患上下了许多工夫,经仔细测试在这些方面...
网软志成是基于微软 .Net 平台开发的分类信息管理系统,它集成了自定义信息发布表单、整站伪静态HTML、分站顶级或二级域名绑定、分类/分站模板管理、IP自动跳转、搜索引擎优化、网银支付、道具、短信/邮箱验证、...
更是有着几十套推陈出新,紧跟学校建站市场的开发的学校网站管理程序,设计的非常漂亮美观的学校网站模板,同时提供有ASP学校网站系统免费下载,二十多套PHP学校网站程序全功能下载,再也不用愁应该用什么学校网站程序,...