cookie注入
一.原理
♦cookie注入的原理是:就要修改cookie的值,
♦cookie注入其原理也和平时的注入一样,只不过说我们是将提交的参数已cookie方式提交了,而一般的注入我们是使用get或者post方式提交,get方式提交就是直接在网址后面加上需要注入的语句,post则是通过表单方式,get和post的不同之处就在于一个我们可以通过IE地址栏处看到我们提交的参数,而另外一个却不能。
♦相对post和get方式注入来说,cookie注入就要稍微繁琐一些了,要进行cookie注入,我们首先就要修改cookie,这里就需要使用到Javascript语言了。另外cookie注入的形
♦成有两个必须条件,
**条件1是:**程序对get和post方式提交的数据进行了过滤,但未对cookie提交的数据库进行过滤。
**条件2是:**在条件1的基础上还需要程序对提交数据获取方式是直接request(“xxx”)的方式,未指明使用request对象的具体方法进行获取,也就是说用request这个方法的时候获取的参数可以是是在URL后面的参数也可以是cookie里面的参数这里没有做筛选,之后的原理就像我们的sql注入一样了。
*2.为什么要cookie注入?*
****♦****主要是看看程序员有没有在cookie中做了一些过滤,我们有没有可趁之机。
二.案例,sqlilabs 第20关
1.代码审查
1)在源代码中,如果没有设置cookie的uname的值,就会对post提交的uname与passwd进行过滤检查
2)如果设置cookie的uname值,并且没有设置submit,则在cookie中进行sql查询
3)如果设置cookie的uname值,且设置submit,则输出" Your Cookie is deleted";
2.抓包修改cookie的值,并把submit删除,进行测试
1)输入一个用户名和密码,点击提交,进行抓包。
2)没更改cookie时的数据包
3).删除submit与更改cookie值,判断字段数(为3)
4).查询想要的字段
结果,数据库的名称为security,
5)就可以根据现有的注入点进行,暴库了