谈校园网安全之防SQL注入

来源 :中小学信息技术教育 | 被引量 : 0次 | 上传用户:xf6088
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  校园网的安全稳定与所用技术是分不开的,由于ASP技术入门门槛不高,所以校园网一般都是用ASP技术来架构的。由于开发人员的技术水平参差不齐,致使一部分程序存在安全隐患,导致网站数据被修改、删除等现象。笔者在对学校网站两年多的开发和维护过程中,发现了很多这样的问题,其中大部分为SQL注入。
  
  一、SQL注入原理
  
  SQL攻击的根源在于,程序命令和用户数据之间没有做到泾渭分明。这使得攻击者有机会将程序命令看成是用户输入的数据提交给Web程序,以发号施令,为所欲为。为了SQL攻击,攻击者需要在常规输入中混入将被解释为命令的“数据”。
  SQL注入能使攻击者绕过认证机制,完全控制远程服务器上的数据库。SQL是结构化查询语言的简称,它是访问数据库的事实标准。目前,大多数Web应用都使用SQL语句来操纵存放在数据库中的数据。几乎所有的Web应用在后台都使用某种SQL数据库。跟大多数语言一样,SQL语法允许数据库命令和用户数据混杂在一起。如果开发人员不细心的话,用户数据就有可能被解释成命令,这样远程用户不仅能向Web应用输入数据,而且还可以在数据库上执行任意命令。
  
  二、判断SQL注入的方法
  
  SQL注人是通过在地址栏中附加一些代码,使服务器执行这些SQL语句来实现的。一般的文章管理系统、下载系统、论坛、留言本、相册等都会有个发布信息的页面,例如show.asp?id=,这说明此页面正在调用SQL语句查询数据库的信息。一般而言,SQL语句原貌大致如下:
  select * from 表名 where 字段=xx
  如果这个show.asp对后面的id整型参数无过滤,就可能存在SQL注入漏洞。一般使用经典的1=1和1=2测试方法来判断SQL注入漏洞是否存在。例如在网址http://www.xxx.com/show.asp?id=35后加上and 1=1后, show.asp运行正常,而且与http://www.xxx.com/show.asp?id=35得到的页面相同;在http://www.xxx.com/show.asp?id=35 后加上 1=2, show.asp运行异常。到这里基本上可以断定页面是否存在SQL注入漏洞。
  
  三、解决SQL注入的方法
  
  黑客是通过不断的试误进行逐层突破。防止一般的SQL注入有以下三种方法。
  1.在需要防范注入页面加入防注入系统程序
  一般ASP程序在调用数据库信息前需要建立数据库链接,负责数据库链接的程序代码一般都保存在一个ASP文件中,同时这个文件一般以“!--#include file=”conn.asp”--”的形式被其他ASP程序调用。所以,我们可以通过在这个数据库链接文件内容前加上下面的防注入代码,来达到防止别人进行注入。
   SQL_injdata=":|;|>|<|--|sp_|xp_|\|dir|cmd|^|(|)| |$|’|copy|format|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 "SQL通用防注入系统"
   Response.end
   end if
   next
   Next
   End If
   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 "SQL通用防注入系统"
   Response.end
   end if
   next
   next
   End If
  2.修改数据库中的用户名和密码字段及后台页面的名称
  通过SQL注入分析器可以轻松跳过防注入系统并自动分析其注入点。找到注入点后,黑客会不断地对用户名和密码进行推测,推测出正确的用户名和密码后,他们还会不断地猜测用户的后台登录页面名称。鉴于此,笔者建议校园网管理人员把数据库的用户名和密码字段及后台页面改为不太常用的名称,另外,不要把后台登陆页面的超链接放到主页面上。
  3.双账号策略
  某些强大的SQL注入分析器不仅可以轻松分析注入点,还可以分析网站的管理员账号及密码。既然无法逃过检测,那我们就做两个账号,一个是普通的管理员账号,一个是防止注入的账号。双账号策略的具体方法是首先将管理员的账号字段的数据类型进行修改,文本型改成最大字段255或选择备注型,密码的字段也进行相同设置。其次将这个普通管理员账号放到数据表中第一行并输入大量中文字符。最后,把真正的防注入的SQL账号放入第二行后的任意位置。
  通过上面的三种策略初步完成了SQL注入攻击的防范,基本杜绝了ASP程序被恶意SQL注人数据所带来的危害。
  (作者单位:山东日照市曲阜师范大学信息技术与传播学院)
其他文献
樊星,著名文学评论家。武汉大学文学院教授、博士生导师。1997~1998年赴美访问学者。著有《当代文学与地域文化》《世纪末文化思潮》等,在《文学评论》《文艺评论》等刊物上发表论文百余篇。系中国新文学学会副会长、中国当代文学研究会理事、湖北省文艺理论家协会理事、武汉作家协会副主席。     黄思思:樊教授,您好!很荣幸能跟您探讨一些文学热点问题。最近,随着第八届茅盾文学奖获奖作品的出炉,我省作家刘
《博览群书》编辑部:  陈独秀原配夫人和第二个夫人,是安徽霍邱县的一对高氏姐妹,在她们流传甚广的五个名字中,竟然有四个是子虚乌有的,这对《新青年》主编陈独秀而言,算是一个不大不小的反讽。陈独秀原配夫人,通常认为正名叫“高晓岚”,乳名“大众”,第二个夫人高君曼“又名君梅”,乳名“小众”,在这些名字中,只有“高君曼”一个名字是真实的。早在1925年,陈独秀与原配夫人高氏的第二子陈乔年,亲笔填写《旅莫中
就在去年的12月14日,AutoBot公司在北京的京东智能奶茶馆召开了AutoBot Eye行车记录仪的发布会,对于见惯了同类产品黑黢黢外壳的人们,这款行车记录仪或许能一扫普通行车记录仪的颜值窘境。接下来,就跟随笔者一起来具体看看这款行车记录仪中的“颜值担当”到底有什么特别的地方吧!  外观“美腻”,配置也不错  我们先来看看AutoBot Eye的外观,它的立方体机身边长仅4cm,采用全铝合金打
义务教育阶段的信息技术课程已开设若干年,相关的课程指导文件却仍然是2000年的《中小学信息技术课程指导纲要(试行)》。作为一门独立的学科,课程的发展既需要有科学的指导方针,也需要有具体可行的课程标准。信息技术的快速发展使得信息技术课程的教学内容不断发生变化,这给义务教育阶段信息技术教师的教学带来了诸多困惑。  本期专题,我们约请了义务教育信息技术课程方面的专家和江苏、湖南、浙江等地的信息技术教研员
【摘要】这几年,根据实践显示,在小学英语教学期间,大多数小学英语老师把学习英语的重点放在了单词、语句和英语写作的教学上面,学生词汇量掌握较少,写作时,语句表达不通顺。这对小学生以后学习英语非常的不利。在这种现实情况下,有部分专家、学者提出了文本再构的教育模式,想要通过教育方式的改革,让学生对学习的热情和期待感,让学生的英语成绩能够有所上升。文本再构教学模式拥有传统教学模式不具有的优势,本文就要对文
电视盒子,捞过界的妥协产物  2012年,在智能电视概念被电视机厂商炒了好几年之后,电视盒子开始大规模出现在市场上。一般来讲,电视机生命周期很长,少则三五年,多则上十年。这样的长周期完全无法保证智能电视产品的用户体验,硬件性能和软件平台,都没有施展空间。这时候,电视盒子以一个电视机外设的方式横空出世,在普通电视和智能电视之间找到了一个绝佳的平衡点,因此在市场上取得了成功。  然而,在随后电视盒子的
长期以来,传统的语文课程与语文教学方式未能真正给学生主体性及个性发展创设空间,以至于学生视语文学习为“重任”,导致学生学习欲望的减退,甚至泯灭。国家新一轮基础教育课程改革提出要“改变课程实施过于强调接受学习,死记硬背,机械训练的现状,倡导学生主动参与,乐于探究,勤于动手,培养学生搜集和处理信息的能力,获取新知识的能力,分析和解决问题的能力以及交流与合作的能力”和新课程改革强调的“教师在教学过程中应
近期无意间获得了一本书《拂去尘沙》,系《光明日报》新疆记者站站长王瑟所著。本想泛泛浏览一下,没想到第一眼开始就被深深吸引。一天的时间,一口气通读之后,仍然兴致浓浓,感觉品尝不足。这是一本有关考古的书,回头又细嚼,它好像又不仅仅只写了考古的内容。  大家知道,考古是在寻找丢失的过去,印证历史的真实,再现昔日的场景,给当代及后人以清晰的远古。  但是有多少考古的成就被封存于书柜的典籍中,被闲置在研究者
注:收益率的计算公式为:(本周五收盘价一上周五收盘价)/上周五收盘价。  最大收益率的计算公式为:(本周最高价一上周五收盘价)/上周五收盘价。  大盘表现采用沪深300指数在相应计量周期内的变动幅度来计量,超越大盘指机构或所推荐股票的收益率高于同期大盘表现的值。  编辑日记  本周上证指数量价齐升,日K线实现六连阳,目前阶段性反弹已经拉开序幕,但对后市反弹空间不宜过于期待。创业板指数放量突破。创出
信息化领导力是中小学校长领导力的重要组成部分,也是中小学校管理带有信息化时代标志的重要体现。中小学校长信息化领导力主要由三部分构成:一是对教育信息化发展的洞察力,二是对教育信息化发展的管理力,三是对教育信息化应用的指导力。    一、对教育信息化发展的洞察力    对教育信息化发展的洞察力是指对于信息技术发展趋势的敏感把握能力和科学预见能力,以及领导学校遵循信息技术发展的客观规律、推进学校教育信息