Cookie 注入是怎样产生的

我们来研究一下怎样情况下才会有Cookies注入!如果你学过ASP你应该会知道


代码如下:

Request.QueryString (GET)




代码如下:

Request.Form (POST)

呵,没错,这就是我们用于读取用户发给WEB服务器的指定键中的值!我们有时为了简化代码,会写成


代码如下:

ID=Request("ID")

这样写法是简单了,但问题就来了~~~我们先看WEB服务是怎样读取数据的,他是先取GET中的数据,没有再取POST中的数据,还会去取Cookies中的数据(晕,书上没有这么说,这是和小高交流时才知道~~看来书说的不全~~)

我们再看看防注入系统,他会检测GET和POST中的数据,如果有特殊字符(这里当然是注入字符了)!就禁止数据的提交! 但他没有检测Cookies的数据!问题就来了~~~那我们怎样测试是否有Cookies注入问题~请先看下面的的连接(示例用,所以连接不是真的)
http://www.xxx.com/1.asp?id=123

如果我们只输http://www.xxx.com/1.asp时,就不能看到正常的数据,因为没有参数!我们想知道有没有Cookies问题(也就是有没有Request("XXX") 格式问题),先用IE输入http://www.xxx.com/1.asp

加载网页,显示不正常(没有输参数的原因)之后在IE输入框再输入
javascript:alert(document.cookie="id="+escape("123"));
按回车,你会看到弹出一个对话框 内容是: id=123 之后,你刷新一个网页,如果正常显示,表示是用
Request("ID")
这样的格式收集数据~~~~,这种格式就可以试Cookies注入了在输入框中输入
javascript:alert(document.cookie="id="+escape("123 and 3=3"));
刷新页面,如果显示正常,可以再试下一步(如果不正常,就有可能也有过滤了)
javascript:alert(document.cookie="id="+escape("123 and 3=4"));
刷新一下页面,如果不正常显示,这就表示有注入了~~~如果程序员是用
Request.QueryString

Request.Form
收集数据的话,是没有Cookies注入问题的,因为服务程序是直截从GET或POST中读取数据的,Cookies是否有数据,WEB服务器是不理的,所以是不能利用Cookies注入的!~

(0)

相关推荐

  • Web网络安全解析cookie注入攻击原理

    目录 cookie注入攻击 cookie注入代码分析 cookie注入攻击 cookie注入攻击的测试地址:http://127.0.0.1/sqli/cookie.php. 发现URL中没有GET参数,但是页面返回正常,使用Burp Suite抓取数据包,发现cookie中存在id=1的参数,如图56所示. 图56 cookie数据 修改cookie中的id=1为id=1',然后再次访问该URL,发现页面返回错误.接下来,分别修改cookie中id=1 and 1=1和id=1 and 1=2

  • Cookie 注入是怎样产生的

    我们来研究一下怎样情况下才会有Cookies注入!如果你学过ASP你应该会知道 复制代码 代码如下: Request.QueryString (GET) 或 复制代码 代码如下: Request.Form (POST) 呵,没错,这就是我们用于读取用户发给WEB服务器的指定键中的值!我们有时为了简化代码,会写成 复制代码 代码如下: ID=Request("ID") 这样写法是简单了,但问题就来了~~~我们先看WEB服务是怎样读取数据的,他是先取GET中的数据,没有再取POST中的数据

  • sql注入教程之类型以及提交注入

    目录 参数类型 明确请求方法 1.GET请求 2.POST請求 3.COOKIE注入 4.http头注入 总结 参数类型 这里说的参数是源码中存在注入的地方. 其中参数类型有:数字.字符.搜索.json等. 其中sql语句干扰符号有:',",%,),}等,过滤首先考虑闭合这些符号,再进行注入测试. 例如php中的代码: $name = $_GET['x'] $sql = "select * from user where name='$name'"; 请求时: http://

  • 一篇文章了解SQL注入漏洞

    目录 SQL注入漏洞原理 SQL注入内容 注入条件 SQL注释符与注入流程 SQL注入分类 SQLMap 分类 接受请求类型区分 注入数据类型的区分 SQL注入思路 手工注入思路 SQL 详细注入过程 总结 SQL注入漏洞原理 漏洞原理   web页面源代码对用户提交的参数没有做出任何过滤限制,直接扔到SQL语句中去执行,导致特殊字符改变了SQL语句原来的功能和逻辑.黑客利用此漏洞执行恶意的SQL语句,如查询数据.下载数据,写webshell.执行系统命令以此来绕过登录权限限制等. 检测方法  

  • 浅谈三种数据库的 SQL 注入

    目录 SQL 注入原理 SQL 注入分类 1. 数字型注入 2. 字符型注入 3. 其他类型 常见数据库的注入 SQL Server MySQL Oracle SQL 注入原理 SQL注入攻击指的是通过构建特殊的输入作为参数传入Web应用程序,而这些输入大都是SQL语法里的一些组合,通过执行SQL语句进而执行攻击者所要的操作,其主要原因是程序没有细致地过滤用户输入的数据,致使非法数据侵入系统. SQL 注入分类 1. 数字型注入 当输入的参数为整型时,则有可能存在数字型注入漏洞. 假设存在一条

  • 同步cookie插件原理及实现示例

    目录 为什么需要同步 cookie 的需求? 撸起袖子开始干 为什么需要同步 cookie 的需求? 因为我们公司统一登录.统一认证体系实现方式是通过在公司域名下的 cookie 注入 acces_token 等内容,然后在不同系统间通过携带的 cookie 信息进行认证并跳转到对应系统. 因为本地开发环境 localhost 和公司域名不在同一个域下,导致需要模拟登录后,需要手动将相关 cookie 信息拷贝在 main.js 文件中,注入到 localhost 域名下.这就导致每次换一个用户

  • ASP文件中的安全问题

    浅谈ASP的安全问题 先说句牢骚话,我经常看到有人说ASP不安全,比如容易被注入,这种说法我一直感到无法理解.如果你水平不高,那么你用php用ASP.net用JSP都有被注入的可能,这关ASP什么事?ASP只是一种技术,用它开发的网站是否安全,只跟程序员和服务器管理员的水平有关系,任何技术开发的网站都一样.只要你的程序有漏洞,而且你用的数据库支持标准SQL语法,或者注入者会这种语法,那么就存在被注入的可能. 闲话少说,我今天结合我个人的经验来简单说说ASP中常见的安全问题. 一,注入.无论什么时

  • golang快速实现网页截图的方法

    golang是近几年发展非常迅猛的一款服务器端的语言,其生态也日益丰富.对于使用golang实现网页截图这个需求,笔者在经过一番调研之后发现大家有推荐Selenium方案,但是这一方案问题较多: 需要安装Selenium或是PhantomJS PhantomJS已经停止维护了 Selenium的运行需要安装chromedriver chromedriver对chrome的版本有一定要求 还有推荐headless chrome方案的,但是这一方案也需要自行在服务器端安装一款浏览器,对服务器的压力比

  • XSS & SQL注入

    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  X Web Security - XSS & more X  XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX  作者: CyberPhreak 翻译: 黯魂 [S.S.T] ~介绍 在这篇文章中我将说明所有关于XSS以及更多相关的知识.通过这篇文档,我希望能让你明白什么是XSS,为什么使用XSS,以及怎样使用XSS.一旦你学会了,你将需要发挥自己的创造力,因为大多数人都修补了简单的XSS漏洞.但是他们所忘记做的是修补比

  • Javascript注入技巧

    作者: kostis90gr 翻译: 黯魂[S.S.T] 本文已发表于<黑客防线>6月刊,版权属于<黑客防线>及脚本安全小组,转载请保持文章完整性,谢谢 :) 这份指南仅仅是出于报告目的,如果任何人把它用于违法目的,我不负责任. 通过使用javascript注入,用户不用关闭网站或者把页面保存在他的PC上就可以改变网站中的内容.这是由他的浏览器的地址栏完成的. 命令的语法看上去像这样: Copy code javascrit:alert(#command#) 比方说如果你想看到在网

随机推荐