全文预览

SQL注入漏洞攻击研究及防范措施

上传者:hnxzy51 |  格式:doc  |  页数:18 |  大小:42KB

文档介绍
是显示id为1的查询信息,而攻击者利用程序中没有对id内容进行检查的机制,插入自己的代码。从select1.asp中摘录一段关键代码:SQL="select*fromphotowherephotoid='id'";可以看到,id没有进行任何的处理,直接构成SQL语句并执行,而攻击者在知道该系统数据库中表名及字段名的情况下,利用SQL语句特性(分号是将两句SQL语句分开的符号),直接向数据库Tuser表中添加记录:select1.asp?id=1;InsertintoTuser(username,password,type)values('hack','1234567','管理员'),然后攻击者就可以直接用hack进行登录了。通过这样的方法,攻击者还可以对系统做任何的事情,包括添加、删除、修改系统资源的操作。(3)执行系统命令如果Web主机使用MSSQL数据库管理系统,那么攻击者就可以用到xp_cmdshell这个扩展存储过程,xp_cmdshell是一个非常有用的扩展存储过程,用于执行系统命令,等,攻击者可以根据程序的不同,提交不同的语句:execmaster.dbo.xp_cmdshell"dir";execmaster.dbo.userhack1234567/add";execmaster.dbo.localgroupadministratorshack/add";这样就可以向Web主机系统中成功添加了一个管理员帐户。2.SQL注入漏洞攻击的检测方式及方法2.1检测方式SQL注入漏洞攻击检测分为入侵前的检测和入侵后的检测。入侵前的检测,可以通过手工方式,也可以使用SQL注入漏洞扫描工具软件。检测的目的是为预防SQL注入漏洞攻击,而对于SQL注入漏洞攻击后的检测,主要是针对审计日志的查看,SQL注入漏洞攻击成功后,会在WebService和数据库的审计日志中留下“痕迹”。

收藏

分享

举报
下载此文档