post和get注入

Posted lyjzht

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了post和get注入相关的知识,希望对你有一定的参考价值。

  1.  

  2.  

Cookie SQL注入

转自http://blog.sina.com.cn/s/blog_6b347b2a0101379o.html

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对象的具体方法进行获取。

1、先打开http://www.st3yy.com/experts_info.asp?id=128,等页面完全打开之后,我们将IE地址栏清空

2、在空白的地址栏上,填写上,以下内容
   javascript:alert(document.cookie="id="+escape("128"));

这里的“id=”便是“http://www.st3yy.com/experts_info.asp?id=128”中的“id=”,“escape("128")”中的“128”是“http://www.st3yy.com/experts_info.asp?id=128”中的“id=218”了,这两处要具体根据所获的数据来决定)

3、进行了第二步了,打开另一个窗口中,试一下,访问http://www.st3yy.com/experts_info.asp?(既是将“id=128”去掉后),然后看是否能正常访问。

4、从上图可以看到,与之前可见访问之后的页面与访问http://www.st3yy.com/experts_info.asp?id=128效果是一样的。

   从这里可以知道,程序在使用request对象获取数据的时候并未指明具体使用什么方法来获取,而是直接使用request("xx")的方式。

 

   现在cookie形成的一个重要因素已经明确了。

 

5、第三步,测试一下是否能提交接特殊字符,看程序是否对数据进行过滤。我们再回到刚才更改cookie的页面,然后在IE地址栏处填写

 

javascript:alert(document.cookie="id="+escape("128 and 1=1"));

6、看页面是否正常,如果正常我们再提交

      javascript:alert(document.cookie="id="+escape("128 and 1=2"));  

7、接下来的工作就和get post注入一样了。

 


以上是关于post和get注入的主要内容,如果未能解决你的问题,请参考以下文章

网络安全从入门到精通(第四章-2)GET&POST&HEAD注入

关于SpringBoot过滤器过滤get及post请求中的XSS和SQL注入

请问PHP怎么过滤GET或者POST的参数?防止js注入,或者一些html注入?请请提供代码参考?谢谢!

Cookie SQL注入

PHP POST, GET 参数过滤,预防sql注入函数

PHP POST, GET 参数过滤,预防sql注入函数