青岛网络公司 青岛网站建设
青岛网络公司 域名注册 虚拟主机

OA办公系统

网站建设

企业邮箱

商务邮箱
网站推广 技术支持 付款方式 联系方式
青岛网络公司导航首 页 >>网站建设>>SQL注入的实现原理和防范---青岛畅通网络公司网站建设专家

网站建设套餐报价
经济型网站建设
实用型网站建设
标准型网站建设
商务型网站建设

网站改版设计
数据库开发程序设计
青岛网页设计制作流程
网站建设完成后,如何上传 (doc)
网站建设完成后,如何上传 (pdf)
青岛网站建设公司的业务范围
网站建设方案模板
网站建设方案安例
韩语网站建设
日语网站建设
英语网站建设
青岛网页设计公司
青岛市网站制作公司
青岛手机网站建设

青岛手机网站

创建flash网站

网站建设费用

我们网站建设网站推广的优势

建企业网站到底该花多少钱?

做成网站没有人管怎么办?

青岛网站制作

青岛网页制作

青岛网页模板


企业网站,什么内容最重要?

企业网站规划和网页设计问题归纳

如何选择网络公司建设网站?

DIV+CSS网页设计的好处有哪些?

保障您的网站安全

SQL注入的实现原理和防范

学习CSS制作网页总结的一些经验

如何解决Dreamweaver8中CSS应用无效问题

网页出现了乱码,应该怎么办?

企业网站规划和网页设计问题归纳

青岛网页设计公司怎么网页设计?

网站制作专家青岛畅通网站制作公司

网站备案的五个非常规性问题答疑

CSS的十八般技巧

怎么算一个好的网页设计?

网站建设基础知识

网站建设客户疑虑问题解答

八大要领 网站建设就这么简单

企业网站更新的必要性分析

调优Web站点性能完全攻略

网站设计65条原则

几行代码轻松搞定网页的简繁转换

ASP错误大全

网站制作的过程的忠告

SQL注入漏洞入侵的过程及其防范措施

IIS信息服务器排错指导

创建优秀网页的6个好习惯

网页设计要素分析

企业网站定义

青岛网络公司业务内容

网站建设十忌

关于网站制作规范的探讨

谈网页优化

创建优秀网页的6个好习惯

网站设计中10个必须避免的问题

浅谈企业CI在网页设计中的体现

使网站更具有可使用性

企业如何准备建网资料?

探索企业网站更新的方式

教你如何识破网络骗子

网站建设客户疑虑问题解答

十个IT韩语技巧

SQL注入的实现原理和防范

  SQL注入的实现原理和防范
   SQL注入是从正常的WWW端口访问,而且表面看起来跟一般的Web页面访问没什么区别,所以目前市面的防火墙都不会对SQL注入发出警报,如果管理员没查看IIS日志的习惯,可能被入侵很长时间都不会发觉。SQL注入的手法相当灵活,在注入的时候需要根据具体情况进行分析,构造巧妙的SQL语句,从而成功获取想要的数据.
   SQL注入攻击的总体思路是:
   1. 发现SQL注入位置;
   2. 判断后台数据库类型;
   3. 确定XP_CMDSHELL可执行情况
   4. 发现WEB虚拟目录
   5. 上传ASP木马;
   6. 得到管理员权限;
   一般来说,SQL注入一般存在于形如:HTTP://xxx.xxx.xxx/abc.asp?id=XX等带有参数的ASP动态网页中,有时一个动态网页中可能只有一个参数,有时可能有N个参数,有时是整型参数,有时是字符串型参数,不能一概而论。总之只要是带有参数的动态网页且此网页访问了数据库,那么就有可能存在SQL注入。如果ASP程序员没有安全意识,不进行必要的字符过滤,存在SQL注入的可能性就非常大。
   为了全面了解动态网页回答的信息,首选请调整IE的配置。把IE菜单-工具-Internet选项-高级-显示友好HTTP错误信息前面的勾去掉。
   如过网站存在注入漏洞,黑客即可使用正常URL后面跟随入侵代码的方式执行任何操作,比如以下列出系统盘目录的命令:
   HTTP://xxx.xxx.xxx/abc.asp?p=YY;insert into temp(id)&nbs ... cmdshell 'dir c:\';
   为了防止注入攻击,最基本的方法是进行关键字过滤,现在推荐两种典型代码,可以全局调用或加在每个动态网页之中.
   <%
   '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
   'ASP通用防注入代码
   '您可以把该代码COPY到头文件中.也可以单独作
   '为一个文件存在,每次调用使用
   '作者:y3gu - 2007-7-29
   'http://www.dosu.cn
   '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
   Dim GetFlag Rem(提交方式)
   Dim ErrorSql Rem(非法字符)
   Dim RequestKey Rem(提交数据)
   Dim ForI Rem(循环标记)
   ErrorSql = "'~;~and~(~)~exec~update~count~*~%~chr~mid
   ~master~truncate~char~declare" Rem(每个敏感字符或者词语请使用半角 "~" 格开)
   ErrorSql = split(ErrorSql,"~")
   If Request.ServerVariables("REQUEST_METHOD")="GET" Then
   GetFlag=True
   Else
   GetFlag=False
   End If
   If GetFlag Then
   For Each RequestKey In Request.QueryString
   For ForI=0 To Ubound(ErrorSql)
   If Instr(LCase(Request.QueryString(RequestKey)),
   ErrorSql(ForI))<>0 Then
   response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""Sql.asp"";</script>"
   Response.End
   End If
   Next
   Next
   Else
   For Each RequestKey In Request.Form
   For ForI=0 To Ubound(ErrorSql)
   If Instr(LCase(Request.Form(RequestKey)),
   ErrorSql(ForI))<>0 Then
   response.write "<script>alert(""警告:\n请不要使用敏感字符"");location.href=""Sql.asp"";</script>"
   Response.End
   End If
   Next
   Next
   End If
   %>
   第二个
   Function Checkstr(Str)
   If Isnull(Str) Then
   CheckStr = ""
   Exit Function
   End If
   Str = Replace(Str,Chr(0),"", 1, -1, 1)
   Str = Replace(Str, """", """, 1, -1, 1)
   Str = Replace(Str,"<;","<;", 1, -1, 1)
   Str = Replace(Str,">;",">;", 1, -1, 1)
   Str = Replace(Str, "script", "script", 1, -1, 0)
   Str = Replace(Str, "SCRIPT", "SCRIPT", 1, -1, 0)
   Str = Replace(Str, "Script", "Script", 1, -1, 0)
   Str = Replace(Str, "script", "Script", 1, -1, 1)
   Str = Replace(Str, "object", "object", 1, -1, 0)
   Str = Replace(Str, "OBJECT", "OBJECT", 1, -1, 0)
   Str = Replace(Str, "Object", "Object", 1, -1, 0)
   Str = Replace(Str, "object", "Object", 1, -1, 1)
   Str = Replace(Str, "applet", "applet", 1, -1, 0)
   Str = Replace(Str, "APPLET", "APPLET", 1, -1, 0)
   Str = Replace(Str, "Applet", "Applet", 1, -1, 0)
   Str = Replace(Str, "applet", "Applet", 1, -1, 1)
   Str = Replace(Str, "[", "[")
   Str = Replace(Str, "]", "]")
   Str = Replace(Str, """", "", 1, -1, 1)
   Str = Replace(Str, "=", "=", 1, -1, 1)
   Str = Replace(Str, "’", "’’", 1, -1, 1)
   Str = Replace(Str, "select", "select", 1, -1, 1)
   Str = Replace(Str, "execute", "execute", 1, -1, 1)
   Str = Replace(Str, "exec", "exec", 1, -1, 1)
   Str = Replace(Str, "join", "join", 1, -1, 1)
   Str = Replace(Str, "union", "union", 1, -1, 1)
   Str = Replace(Str, "where", "where", 1, -1, 1)
   Str = Replace(Str, "insert", "insert", 1, -1, 1)
   Str = Replace(Str, "delete", "delete", 1, -1, 1)
   Str = Replace(Str, "update", "update", 1, -1, 1)
   Str = Replace(Str, "like", "like", 1, -1, 1)
   Str = Replace(Str, "drop", "drop", 1, -1, 1)
   Str = Replace(Str, "create", "create", 1, -1, 1)
   Str = Replace(Str, "rename", "rename", 1, -1, 1)
   Str = Replace(Str, "count", "count", 1, -1, 1)
   Str = Replace(Str, "chr", "chr", 1, -1, 1)
   Str = Replace(Str, "mid", "mid", 1, -1, 1)
   Str = Replace(Str, "truncate", "truncate", 1, -1, 1)
   Str = Replace(Str, "nchar", "nchar", 1, -1, 1)
   Str = Replace(Str, "char", "char", 1, -1, 1)
   Str = Replace(Str, "alter", "alter", 1, -1, 1)
   Str = Replace(Str, "cast", "cast", 1, -1, 1)
   Str = Replace(Str, "exists", "exists", 1, -1, 1)
   Str = Replace(Str,Chr(13),"<;br>;", 1, -1, 1)
   CheckStr = Replace(Str,"’","’’", 1, -1, 1)
   End Function

 


关于我们|友情链接|代理中心|商务快车|主机托管|服务器租用|畅通打支票|青岛手机邮箱
软件下载|青岛专题片纪录片制作|青岛软件销售中心|青岛led电子屏|青岛多媒体光盘制作
|济南百度|杭州网站建设|青岛电脑维护公司|
技术支持|网站导航Site Map

© 2000-2008 Copyright all rights reseved


咨询热线:15905425380 0532-66672867
传真:4007085198-85688(全国接入只收市话)
网络顾问:袁女士 业务邮箱

地址:青岛市市南区山东路22号金孚大厦B座12E-2室

在线投诉   在线留言


青岛网上报警

1 公安局备案:

  青岛网络公司青岛市公安局备案号:37020020052265

2 经营许可证:

  《中华人民共和国增值电信业务经营许可证》 鲁 B2-20041017号

3 法人营业执照:

  企业法人营业执照:注册号:3702022802887-A

4 ICP备案证:

  鲁ICP备05042073号