网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > C#应用
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.C#的Windows编程中多语言的实现.
.IP数据包的校验和算法C#版.
.使用C#与NNTP服务器交互!.
.c#中高效的excel导入oracle的方法.
.利用c#制作简单的留言板(3).
.C#中使用net share命令时要注意的.
.用Visual C#调用Windows API函数.
.C#实现WEB服务器.
.使用C#编写一个计时器.
.C#实现根据域名查询ip实例.
.关于VS 2008和.NET 3.5 Beta2新特.
.C#中ref和out的使用小结.
.在C#中动态调用native dll的导出.
.防SQL注入攻击.
.c#实现google样式的分页.
.一个产生中文累计数的代码片断.
.在c#中实现3层架构.
.c#的random shuffle.
.一个用c#写的扫描asp源码漏洞的应.
.关于C#和C++的重载(Overload)、.

防SQL注入攻击

发表日期:2006-10-17


C# 检查字符串,防SQL注入攻击
这个例子里暂定为=号和'号
bool CheckParams(params object[] args)
{
    string[] Lawlesses={"=","'"};//在这里还可以写要过滤的字符串
    if(Lawlesses==null||Lawlesses.Length<=0)return true;
    //构造正则表达式,例:Lawlesses是=号和'号,则正则表达式为 .*[=}'].*  (正则表达式相关内容请见MSDN)
    //另外,由于我是想做通用而且容易修改的函数,所以多了一步由字符数组到正则表达式,实际使用中,直接写正则表达式亦可;
    string str_Regex=".*[";
    for(int i=0;i< Lawlesses.Length-1;i++)
        str_Regex+=Lawlesses[i]+"|";
    str_Regex+=Lawlesses[Lawlesses.Length-1]+"].*";
    //
    foreach(object arg in args)
    {
        if(arg is string)//如果是字符串,直接检查
        {
            if(Regex.Matches(arg.ToString(),str_Regex).Count>0)
            return false;
        }
        else if(arg is ICollection)//如果是一个集合,则检查集合内元素是否字符串,是字符串,就进行检查
        {
            foreach(object obj in (ICollection)arg)
            {
                if(obj is string)
                {
                    if(Regex.Matches(obj.ToString(),str_Regex).Count>0)
                    return false;
                }
            }
        }
    }
    return true;

}

上一篇:在C#中使用热键隐含窗口 人气:5402
下一篇:利用C#实现标注式消息提示窗口 人气:5757
浏览全部SQL注入的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐