access数据库的简单手工注入

首先利用and 1=1
and 1=2
判断此页面是否用注入点(当然这里是整数型的判断(c_id=266)),如果是字符串型的,则可以用
'and ‘1’='1
'and ‘1’='2
进行判断
在这里插入图片描述
在这里插入图片描述

利用and exists (select * from admin) 判断数据库中admin表是否存在,判断的话需要爆破,爆破的话意味着成功率不高
利用and exists (select username from amin)判断表中的列,爆破

之后利用order by number 语句进行判断这个表一共有多少列,order by是给表排序用的,后面加数字以为着是利用这个表中的第多少列进行排序,这里可以判断列数(最大的列数返回正常的页面)
在这里插入图片描述

这里用到了联合查询,之前猜出来数据库中有admin表,显示此页面时select xxx,xxx,xxx… from xxxtable的语句被传到后台数据库被执行,而union联合查询需要前后的select后面接的查找数相同,也就是列数相同。当查询结果被传到浏览器上时,很多结果是被放在其他地方的, 你可能看到可能看不到,或者值是空的,但是这里关于第四列和第五列被传到了界面上来
在这里插入图片描述

再将4,5列的值改为之前爆破出来的admin表中的列名,这下就显示出了这两列名中的值
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42042353/article/details/82902376