`
pharaohsprince
  • 浏览: 288979 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

ASP防SQL注入攻击程序

阅读更多

    SQL注入被那些菜鸟级别的所谓黑客高手玩出了滋味,发现现在大部分黑客入侵都是基于SQL注入实现的,哎,谁让这个入门容易呢,好了,不说废话了,现在我开始说如果编写通用的SQL防注入程序一般的http请求不外乎get 和 post,所以只要我们在文件中过滤所有post或者get请求中的参数信息中非法字符即可,所以我们实现http 请求信息过滤就可以判断是是否受到SQL注入攻击。
  IIS传递给asp.dll的get 请求是是以字符串的形式,,当 传递给Request.QueryString数据后,asp解析器会分析Request.QueryString的信息,,然后根据"&",分出各个数组内的数据所以get的拦截如下:
  首先我们定义请求中不能包含如下字符:

|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare
 


各个字符用"|"隔开,,然后我们判断的得到的Request.QueryString,具体代码如下 :

dim sql_injdata
SQL_injdata = "'|and|exec|insert|select|delete|update|count|*|%|chr|mid|master|truncate|char|declare"
SQL_inj = split(SQL_Injdata,"|")
If Request.QueryString<>"" Then
 For Each SQL_Get In Request.QueryString
  For SQL_Data=0 To Ubound(SQL_inj)
   if instr(Request.QueryString(SQL_Get),Sql_Inj(Sql_DATA))>0 Then
    Response.Write "<Script Language=****>alert('天下电影联盟SQL通用防注入系统提示↓nn请不要在参数中包含非法字符尝试注入!');history.back(-1)</Script>"
    Response.end
   end if
  next
 Next
End If


这样我们就实现了get请求的注入的拦截,但是我们还要过滤post请求,所以我们还得继续考虑request.form,这个也是以数组形式存在的,我们只需要再进一次循环判断即可。代码如下:

If Request.Form<>"" Then
 For Each Sql_Post In Request.Form
  For SQL_Data=0 To Ubound(SQL_inj)
   if instr(Request.Form(Sql_Post),Sql_Inj(Sql_DATA))>0 Then
    Response.Write "<Script Language=****>alert('天下电影联盟SQL通用防注入系统提示↓nn请不要在参数中包含非法字符尝试注入!nnHTTP: //www.521movie.com ');history.back(-1)</Script>"
    Response.end
   end if
  next
 next
end if


好了大功告成,我们已经实现了get和post请求的信息拦截,你只需要在conn.asp之类的打开数据库文件之前引用这个页面即可。放心的继续开发你的程序,不用再考虑是否还会受到SQL注入攻击。难道不是么?



分享到:
评论

相关推荐

    SQL注入全面讲解技术文档

    4.编写通用的ASP防SQL注入攻击程序 22 5.利用instr()函数防止SQL注入攻击 23 6.跨站式SQL注入技巧 25 7. 防范Sql注入式攻击 27 8.PHP与SQL注入攻击 29 9.SQL注入攻击零距离 30 10.SQL注入技术和跨站脚本攻击的检测 ...

    SQL注入漏洞攻防攻略大全

    SQL注入漏洞攻防攻略大全 目录 SQL注入漏洞攻防攻略大全 1 (一) SQL注入漏洞全接触--入门篇...(五) 编写通用的ASP防SQL注入攻击程序 28 (六) SQL注入攻击的原理及其防范措施 30 (七) 利用instr()函数防止SQL注入攻击 34

    asp.net简单防范sql注入漏洞

    asp.net简单防范sql注入漏洞 防止 sql注入攻击 1 限制 文本框的最大长度 2 删除用户的单引号 3 处理sql注入的另外一个方法是 使用ado.net command对象的参数集合。 而不是评接多个字符串

    Asp.Net通用Sql防注入源码

    Asp.Net通用Sql防注入源码 Asp.Net程序员预防程序被sql注入攻击的必备知识.

    ASP.NET中如何防范SQL注入式攻击

     好在要防止ASP.NET应用被SQL注入式攻击闯入并不是一件特别困难的事情,只要在利用表单输入的内容构造SQL命令之前,把所有输入内容过滤一番就可以了。过滤输入内容可以按多种方式进行。  ⑴ 对于动态构造SQL查询...

    针对ASP程序的SQL注入攻击概述及防范方法研究.pdf

    针对ASP程序的SQL注入攻击概述及防范方法研究.pdf

    ASP.NET Web应用程序中SQL注入攻击的防范研究.pdf

    ASP.NET Web应用程序中SQL注入攻击的防范研究.pdf

    论文研究-基于ASP.NET的SQL注入分析及防范 .pdf

    基于ASP.NET的SQL注入分析及防范,宁璇,,本文介绍了SQL注入攻击的概念和攻击方式,总结了一套有效的防御方案,并通过ASP.NET开发的WEB应用程序对该方案进行了验证,极大地减

    SQL通用防注入系统3.1β版

    Neeao_SqlIn.Asp 防SQl注入主文件,需要注意以下几点: Neeao_sql_admin.asp 后台管理文件 关于以前版本的升级,直接覆盖文件和数据库即可使用! 注意:请用记事本打开Neeao_sql_admin.asp修改里面的管理密码! ...

    asp.net 防止SQL注入攻击

    只要做到以下三点,网站就会比较安全了而且维护也简单。 一、数据验证类 代码如下:parameterCheck.cs public class parameterCheck{ public static bool isEmail(string emailString){ return System.Text.Regular...

    SQL通用防注入程序 v3.1 最终纪念版

    Neeao_SqlIn.Asp 防SQl注入主文件,需要注意以下几点: Neeao_sql_admin.asp 后台管理文件 关于以前版本的升级,直接覆盖文件和数据库即可使用! 注意:请用记事本打开Neeao_sql_admin.asp修改里面的管理密码! ...

    ASP-ISAPI通用防注入过滤器 v1.0

    能在ASP程序本身存在注入漏洞的情况下防御注入攻击。同时它还具备防数据库下载、防止数据库扩展名被修改为asp后插入ASP语句攻击等功能。内核全部采用C++编写,运行速度快。与ASP版的通用防注入系统相比具有安全性、...

    ASP中SQL注入式攻击的防范探析pdf

    具体分析了基于Web技术的开放性的应用软件Asp中SQL语句最易受攻击的注入式攻击的具体表现形式, 通过具体实例说明攻击方式及其原理,并指出了详细的解决方案和防范措施,使Asp + SQL设计的与平台无关的Web应用 程序的...

    SQL通用防注入程序 v3.1 最终纪念版.rar

    与v3.1beta版相比有以下的更新: ...对于v3.1beta版中由于加入的对于js程序过滤的功能而引起的安全问题做了修正 对于v3.1beta版可能引起的跨站攻击做了修正 将v3.1beta版中的安全表单升级为安全页面

    编写通用的asp防注入程序

    现在我开始说如果编写通用的sql防注入程序 一般的http请求不外乎 get 和 post,所以只要我们在文件中过滤所有post或者get请求中的参数信息中 非法字符即可,所以我们实现http 请求信息过滤就可以判断是是否受到...

    SQL注入漏洞全接触

    用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQL Injection,即SQL注入。 SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以目前...

    QQ登录页面注册页面sql防注入

    sql防注入 网页查询 插入 更新数据库 省市三级联动 GridView的使用等等 里面的资料都很详细文件大小2.99 MB (3,143,053 字节) 解压后8.04 MB (8,431,678 字节) 下面是相关的代码 省市三级联动 请选择"> 请选择">...

    SQL通用防注入系统3.2 beta

    3.1 β版 加入对cookie部分的过滤,加入了对用js书写的asp程序的支持,加入了对安全表单的取消过滤! 3.1 最终纪念版, * 对于3.1beta版中由于加入的对于js程序过滤的功能而引起的安全问题做了修正。 * 对于3.1...

    .net防注入程序组件+说明

    主要功能:阻止并记录SQL注入、XSS、跨目录等攻击,让随处可能潜伏的网站漏洞降至最低。...非常实用的防注入程序组件,可以防止到现在为止所有的注入式攻击,并记录下注入IP,注入地址,注入时间。

Global site tag (gtag.js) - Google Analytics