cookie注入

cookie注入

cookie注入原理:

修改cookie的值,使注入的值能够在拼接数据库查询语句从而获得信息,基本上与SQL注入中的get方式提交和post表单方式提交无区别。

cookie注入形成条件:

1、程序对get和post方式提交的数据进行了过滤,但未对cookie提交的数据库进行过滤。

2、在条件1的基础上还需要程序对提交数据获取方式是直接request(“xxx”)的方式,未指明使用request对象的具体方法进行获取,也就是说用request这个方法的时候获取的参数可以是在URL后面的参数也可以是cookie里面的参数这里没有做筛选,之后的原理就像我们的sql注入一样了。

cookie注入阶段:

1.判断是否存在cookie注入点
2.得到字段总数
3.查选表名
4.查选列名
5.得到列名的值

其过程和sql注入一致,简单来讲,cookie是sql注入中的一种。

设置cookie

1、设置cookie值,打开相关网址后,清空地址栏输入以下语句,就能设置cookie字段为id,值为284,设置完后,重新打开新网址,新网址是以设置的cookie值重新访问网站的。

javascript:alert(document.cookie="id="+escape("284"))

document.cookie:表示当前浏览器中的cookie变量

alert():表示弹出一个对话框,在该对话框中单击“确定”按钮确认信息。

escape():该函数用于对字符串进行编码。

cookie注入的原理在于更改本地的cookie,从而利用cookie来提交非法语句。

2、利用相关cookie设置工具

SQL-lab实战(less-21)

1.首先经过各种尝试对username、password注入无效,故根据题目提示考虑cookie注入,先抓包分析
在这里插入图片描述

经分析相关的表单提交字段为uname,passwd,和submit

2.根据题目提示,使用cookie注入,理解其原理,查看源码

   if(isset($_POST['uname']) && isset($_POST['passwd']))
   {
   
   
   		$uname = check_input($_POST['uname']);
   		$passwd = check_input($_POST['passwd']);
   		
   		$sql="SELECT  users.username, users.password FROM users WHERE users.username=$uname and users.password=$passwd ORDER BY users.id DESC LIMIT 0,1";
   		$result1 = mysql_query($sql);
   		$row1 = mysql_fetch_array($result1);
   		if($row1)
   		{
   
   
               echo '<font color= "#FFFF00" font size = 3 >';
               setcookie('uname'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值