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注入攻击。难道不是么?
分享到:
相关推荐
从标签"防注入"、"最新ASP SQL注入代码"、"最新ASP通用防SQL注入代码"我们可以看出,这个压缩包文件的核心内容是关于防止ASP应用程序遭受SQL注入攻击的代码示例,它适用于各种ASP应用场景。 在压缩包内的文件"通用...
针对这一问题,《史上最全的.NET防止SQL注入攻击的替换文本》提供了一系列策略和方法,尤其聚焦于如何在.NET框架下通过字符串处理来防御SQL注入。 ### SQL注入攻击原理 SQL注入攻击主要是利用应用程序对用户输入...
这个"ASP.NET防SQL注入脚本程序"显然是为了帮助开发者防止这种攻击而设计的。 SQL注入是黑客利用输入字段向应用程序的SQL查询中插入恶意代码,从而控制或操纵数据库的一种手段。例如,如果一个登录页面没有正确验证...
ASP.NET 防止 SQL 注入攻击的方法有很多,这些方法包括参数法防注入、传统的笨一点的办法、HttpModule 实现防sql注入、SqlFilter 防止 SQL 注入、validation 防止 SQL 注入等。只有通过使用这些方法,才能有效地防止...
在ASP.NET开发中,SQL注入是一种常见的安全威胁...结合其他安全措施,如输入验证、数据层保护,可以构建出更健壮的应用,有效抵御SQL注入攻击。记住,安全无小事,每个细节都关乎到应用程序的稳定性和用户的数据安全。
这个压缩包提供的源码是针对ASP.NET应用的通用防SQL注入漏洞程序,通过Global.asax文件来实现。 SQL注入是一种常见的网络安全攻击手段,攻击者通过输入恶意的SQL代码,试图获取、修改或删除数据库中的敏感信息。在...
SQL注入攻击的关键在于利用应用程序在处理用户输入数据时存在的安全漏洞。这些漏洞通常是由于程序员未能正确验证和清理用户输入导致的。下面将详细介绍SQL注入攻击的具体原理: ##### 1. 发现SQL注入位置 在进行...
SQL注入攻击是一种常见的网络攻击技术,攻击者利用网站应用程序对用户输入数据的合法性判断不足,向服务器提交恶意构造的SQL代码片段。如果应用程序没有对用户提交的数据进行适当的检查和转义,攻击者可以通过这些...
ASP.NET 是一种强大的 web 应用...通过上述措施的组合使用,开发者可以显著提高 ASP.NET 应用程序对 SQL 注入攻击的防护能力。在设计和实现阶段就考虑安全性,能更有效地防止此类攻击,保护用户数据和系统的完整性。
ASP.NET(C#)防SQL注入脚本程序v2.0是一个重要的安全工具,用于保护Web应用程序免受SQL注入攻击。SQL注入是一种常见的网络安全威胁,攻击者通过输入恶意的SQL代码来操纵数据库,可能导致数据泄露、系统瘫痪甚至完全...
SQL注入攻击是对Web应用程序的主要威胁之一。通过采用参数化查询、严格输入验证、最小权限原则、持续的教育和使用ORM框架等策略,可以在ASP.NET应用程序中有效地防御这类攻击,保护数据安全。开发者应当始终关注最新...
在ASP源码中,防止SQL注入是至关重要的安全措施,因为SQL注入攻击可能导致数据泄露、系统瘫痪甚至整个数据库被破坏。360通用ASP防护代码就是针对这种威胁的一种解决方案。 SQL注入是指攻击者通过在输入字段中插入...
为了应对这种威胁,开发人员会采取各种措施来防止SQL注入攻击,本文将详细分析一段用于ASP(Active Server Pages)环境下的防SQL注入代码。 #### 二、代码解读 ##### 1. 初始化变量与设置 ```vbscript '''''''''...
ASP的防SQL注入程序是针对ASP(Active Server Pages)应用程序设计的一种安全机制,旨在保护数据库免受SQL注入攻击。SQL注入是一种常见的网络安全威胁,通过在输入字段中插入恶意的SQL代码,攻击者可以操纵数据库...
ASP.NET (VB.NET) 防SQL注入脚本程序是一个重要的安全工具,旨在保护Web应用程序免受SQL注入攻击。SQL注入是一种常见的网络安全威胁,黑客通过输入恶意SQL代码来操纵数据库,获取敏感信息或破坏系统。在ASP.NET (VB...
ASP网站由于其架构特点,极易遭受SQL注入攻击。SQL注入攻击是一种安全漏洞利用技术,攻击者可以通过该技术对Web应用程序执行未经授权的SQL命令,从而读取敏感数据,修改数据库信息,甚至获取系统级的控制权限。在...
asp.net简单防范sql注入漏洞 防止 sql注入攻击 1 限制 文本框的最大长度 2 删除用户的单引号 3 处理sql注入的另外一个方法是 使用ado.net command对象的参数集合。 而不是评接多个字符串
标题中的“asp通用防SQL注入文件”指的是一个专门用于防止ASP应用程序遭受SQL注入攻击的工具或代码片段。这个工具通常包含了一系列的函数或方法,用于清理和验证用户输入,确保它们不会导致不安全的SQL命令被执行。 ...