关闭

跨站点请求伪造攻击

标签: 跨站点请求伪造攻击请求伪造
582人阅读 评论(0) 收藏 举报

1. 跨站点请求伪造攻击(CSRF)是属于伪造客户端请求的一种攻击方式,目的是让用户访问攻击者伪造的网页,执行网页中的恶意脚本,伪造用户请求,对用户有登录权限的网站空间实施攻击

2. 这个攻击的基本原理就是,在浏览器不同标签页之间会共享同域会话认证信息机制,说白了就是,你在百度首页登录了百度账号,然后你又打开了个标签页,新的标签页打开了百度云,那么百度云是不用用户名和密码就可以登录的,原因就是,第一次登录的时候,web服务器返回给了浏览器会话认证信息,就是cookie数据,然后,针对这个服务器的http请求就可以通过验证这个cookie数据来自动登录。就是利用的这个特性,攻击者可以在自己控制的网站页面内编写对用户的web应用空间发起的伪造http表单的恶意代码,然后诱骗用户来浏览攻击者构造的页面,执行页面中内嵌的恶意代码,这段恶意代码会在用户不知情的情况下,通过保存在浏览器中的cookie来通过用户正常web应用的验证,以用户的身份来执行HTTP表单操作,泄露web应用中的数据。

3. CSRF的攻击流程,首先攻击者构造一个网页,这个网页中可以有一个图片的标签,点击这个图片就会自动跳转到另一个页面,好了,现在假设一个这样的URL:
blog.xxx.com/entry.do?m=delete$id=122344
这个URL是这个blog的主人在删除编号为122344的文章时产生的,只有blog的主人访问这个URL才会删除这篇文章,好了现在在那个图标跳转到的标签中加入这个URL,然后诱骗blog的主人去点击这个图片,假设在当前的浏览器环境中,blog的主人已经在blog中登陆,当他点击了这个连接之后,编号为122344的文章也随之被删除了,因为浏览器cookie中保存的验证信息已经帮忙通过了验证

4. CSRF攻击的防范,第一就是使用验证码,在上述的情况中使用验证码机制就可以防止误删,还有就是在用户的请求中加入随机数,这样可以让攻击者很难才到这个请求的URL

首发于我的个人网站: 点击打开链接


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:47960次
    • 积分:1345
    • 等级:
    • 排名:千里之外
    • 原创:102篇
    • 转载:0篇
    • 译文:0篇
    • 评论:14条
    文章存档
    最新评论