sql注入不完全思路与防注入程序

sql注入不完全思路与防注入程序

ID:9517639

大小:84.50 KB

页数:13页

时间:2018-05-02

sql注入不完全思路与防注入程序_第1页
sql注入不完全思路与防注入程序_第2页
sql注入不完全思路与防注入程序_第3页
sql注入不完全思路与防注入程序_第4页
sql注入不完全思路与防注入程序_第5页
资源描述:

《sql注入不完全思路与防注入程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、SQL注入不完全思路与防注入程序作者:佚名    文章来源:internet    点击数:268    更新时间:2005-4-5 <一>SQL注入简介  许多网站程序在编写时,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,(一般是在浏览器地址栏进行,通过正常的www端口访问)根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQLInjection,即SQL注入。  <二>SQL注入思路  思路最重要。其实好多人都不知道SQL到底能做什么呢?这里总结一下SQL注入入侵的总体的思路:

2、  1.SQL注入漏洞的判断,即寻找注入点  2.判断后台数据库类型  3.确定XP_CMDSHELL可执行情况;若当前连接数据的帐号具有SA权限,且master.dbo.xp_cmdshell扩展存储过程(调用此存储过程可以直接使用操作系统的shell)能够正确执行,则整个计算机可以通过几种方法完全控制,也就完成了整个注入过程,否则继续:  1.发现WEB虚拟目录  2.上传ASP木马;  3.得到管理员权限  具体步骤:  一、SQL注入漏洞的判断  如果以前没玩过注入,请把IE菜单-工具-Internet选项-高级-显示友好HTT

3、P错误信息前面的勾去掉。  为了把问题说明清楚,以下以HTTP://www.163.com/news.asp?id=xx(这个地址是假想的),为例进行分析,xx可能是整型,也有可能是字符串。  1、整型参数的判断  当输入的参数xx为整型时,通常news.asp中SQL语句原貌大致如下:select*from表名where字段=xx,所以可以用以下步骤测试SQL注入是否存在。  最简单的判断方法HTTP://www.163.com/news.asp?id=xx’(附加一个单引号),  此时news.asp中的SQL语句变成了select

4、*from表名where字段=xx’,  如果程序没有过滤好“’”的话,就会提示news.asp运行异常;但这样的方法虽然很简单,但并不是最好的,因为:  first,不一定每台服务器的IIS都返回具体错误提示给客户端,如果程序中加了cint(参数)之类语句的话,SQL注入是不会成功的,但服务器同样会报错,具体提示信息为处理URL时服务器上出错。请和系统管理员联络。  second,目前大多数程序员已经将“’“过滤掉,所以用”’”测试不到注入点,所以一般使用经典的1=1和1=2测试方法,见下文:HTTP://www.163.com/ne

5、ws.asp?id=xxand1=1,news.asp运行正常,  而且与HTTP://www.163.com/news.asp?id=xx运行结果相同;HTTP://www.163.com/news.asp?id=xxand1=2,news.asp运行异常;(这就是经典的1=11=2判断方法)  如果以上面满足,news.asp中就会存在SQL注入漏洞,反之则可能不能注入。  2、字符串型参数的判断  方法与数值型参数判断方法基本相同  当输入的参数xx为字符串时,通常news.asp中SQL语句原貌大致如下:select*from表

6、名where字段='xx',所以可以用以下步骤测试SQL注入是否存在。HTTP://www.163.com/news.asp?id=xx’(附加一个单引号),此时news.asp中的SQL语句变成了select*from表名where字段=xx’,news.asp运行异常;HTTP://www.163.com/news.asp?id=xxand'1'='1',news.asp运行正常,  而且与HTTP://www.163.com/news.asp?id=xx运行结果相同;HTTP://www.163.com/news.asp?

7、id=xxand'1'='2',news.asp运行异常;  如果以上满足,则news.asp存在SQL注入漏洞,反之则不能注入  3、特殊情况的处理  有时ASP程序员会在程序员过滤掉单引号等字符,以防止SQL注入。此时可以用以下几种方法试一试。  ①大小定混合法:由于VBS并不区分大小写,而程序员在过滤时通常要么全部过滤大写字符串,要么全部过滤小写字符串,而大小写混合往往会被忽视。如用SelecT代替select,SELECT等;  ②UNICODE法:在IIS中,以UNICODE字符集实现国际化,我们完全可以IE中输入的字

8、符串化成UNICODE字符串进行输入。如+=%2B,空格=%20等;URLEncode信息参见附件一;  ③ASCII码法:可以把输入的部分或全部字符全部  <4>出了上述方法以外,还有个更简单的方法就是使

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。