今天下午可能要出远门,所以现在就把总结写好了。

Write-up地址:[Critical] Bypass CSRF protection on IBM

这个CSRF漏洞存在于IBM的修改邮箱页面,修改邮箱的地址是

https://www.ibm.com/ibmweb/myibm/account/sendmail?locale=us-en&email=NEW_EMAIL 

所以理论上讲,只要修改上面链接中的NEW_EMAIL为自己的邮箱,被攻击者在登录了自己的IBM账户后点击该链接,就能达到修改被攻击者邮箱的目的。

但是作者Mohamed Sayed在尝试时,发现IBM会检测请求发出的Referer头部,正常修改邮箱的请求Referer头部为

https://www.ibm.com/ibmweb/myibm/profile/profile-edit.jsp

作者经过几个小时的尝试,发现使用下面的Referer头部可以成功绕过IBM的验证

http://my_website/www.ibm.com/ibmweb/myibm/profile/profile-edit.jsp.php 

在测试漏洞时,作者使用了Moakt的临时邮箱服务生成了一个临时邮箱地址作为NEW_EMAIL,在自己的网站上创建文件profile-edi.jsp.php

<script type="text/javascript">
document.location.href="https://www.ibm.com/ibmweb/myibm/account/sendmail?locale=us-en&email=NEW_EMAIL"
</script>

这样,只要欺骗被攻击者访问该网页,就可以在自己生成的临时邮箱里收到确认修改邮箱的邮件,成功修改被攻击者IBM账号的邮箱了。


其实这个漏洞原理很简单,我之前在看对CSRF介绍的文章时也有看到过验证Referer的防御手段,只是真实案例是第一次接触,所以仍然很有新鲜感。从该案例也可以看出,CSRF可以使用验证Referer头部的方式进行防御,但是网站对Referer的验证方法仍然可能存在漏洞,需要进行不断的尝试。


今天还看了另外一篇文章DevOops — An XML External Entity (XXE) HackTheBox Walkthrough,一开始没明白文章中提到的DevOops是什么东西,只是觉得可以通过这篇文章了解一下渗透测试的简单流程,后来谷歌了一下,才发现Hack the box是一个在线的渗透测试平台,感觉还蛮不错的,注册需要通过一个小测试,并不难,虽然网上已经有教程了,但我还是遵守规则不说出通过测试的方法,只是一个小tip——看网页的源码。

【10.15总结】绕过CSRF的Referer保护的更多相关文章

  1. sqlmap和burpsuite绕过csrf token进行SQL注入检测

    利用sqlmap和burpsuite绕过csrf token进行SQL注入 转载请注明来源:http://www.cnblogs.com/phoenix--/archive/2013/04/12/30 ...

  2. macOS 10.15 开启 HiDPI

    普通的显示,接上 MacBook 发现原生的分辨率设置在 2K 显示器上字体很小,换成 1080P 分辨率显示效果又特别模糊.下面介绍MacBook强行开启 HiDPI. 什么是 HiDPI 它使用横 ...

  3. OS X更新Catalina 10.15.2后虚拟机黑屏(已解决)

    简述 问题:更新OS X 10.15.2后VM Ware进unbuntu 16.0黑屏,但是VM Ware 有显示,情况类似如下: 解决办法   重启系统,command+r 进入恢复模式,打开bas ...

  4. 背水一战 Windows 10 (15) - 动画: 缓动动画

    [源码下载] 背水一战 Windows 10 (15) - 动画: 缓动动画 作者:webabcd 介绍背水一战 Windows 10 之 动画 缓动动画 - easing 示例演示缓动(easing ...

  5. Linux Kernel 3.11.4/3.10.15/3.4.65/3.0.99

    Linux 今天又发布了4个更新版本,分别是: 3.11.4 2013-10-05 [tar.xz] [pgp] [patch] [view patch] [view inc] [cgit] [cha ...

  6. CVE-2015-1328 Ubuntu 12.04, 14.04, 14.10, 15.04 overlayfs Local Root

    catalog . 引言 . Description . Effected Scope . Exploit Analysis . Principle Of Vulnerability . Patch ...

  7. WTL汉化版2013.10.15

    汉化内容: 2013.10.15 版本:当前可下载Trunk最新版,wtl-code-467-trunk.zip 汉化内容: 1.应用向导的部分汉化,考虑到部分词汇的表述问题,只汉化无影响部分 2.资 ...

  8. [Mon Feb 10 15:21:06 2014] [notice] child pid 7101 exit signal File size limit exceeded (25)

    今天遇到的问题: LAMP的LOG里报如下错误. 然后IE和FIREFOX里显示连接被重置或是无法访问. 但自己建一个正常的PHP测试探针倒可以. 原来是PHP错误日志太多,无法写入LOG导致. [r ...

  9. Datatables插件1.10.15版本服务器处理模式ajax获取分页数据实例解析

    一.问题描述 前端需要使用表格来展示数据,找了一些插件,最后确定使用dataTables组件来做. 后端的分页接口已经写好了,不能修改.接口需要传入页码(pageNumber)和页面显示数据条数(pa ...

随机推荐

  1. oracle 实现主键自增

    -- 创建表 drop table test; create table test(id number(10), name varchar2(10)); -- 创建对列 drop sequence s ...

  2. 使用Spring操作Redis的key-value数据

    前言 最近工作一直忙的不可开交,小Alan已经很久没有和大家分享知识了,在深圳待了两年多,依然感觉自己还是个小菜鸟,工作中还是会遇到很多自己在短期内无法搞定的事情,每当这个时候总是会感觉到很沮丧,就会 ...

  3. Debian 版本历史

    Production Releases Version Code name Release date End of life date 8.0 jessie April 25th 2015   7.0 ...

  4. MyEclipse中修改servlet模板

    1.在MyEclipse目录下搜索com.genuitec.eclipse.wizards,得到搜索结果 com.genuitec.eclipse.wizards_8.4.100.me20091213 ...

  5. 关于sys.dm_exec_requests

    我知道SQL Server有很多视图和函数让我来了解SQL Server的运行状态.我还想知道SQL Server上关于来自用户或者应用的活动请求信息.怎么查询这些信息呢? SQL Server的动态 ...

  6. 一键安装lnmp1.5

    系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian/Deepin/Aliyun/Amazon/Mint Linux发行版 需要5GB以上硬盘剩余空间,MyS ...

  7. Http协议浅析

    目录 Http协议浅析 http协议简介 http协议特性 http请求协议与响应协议 请求协议 响应协议 响应状态码 请求URI定位资源 HTTP方法 GET:获取资源 POST:传输实体主体 PU ...

  8. svn检出项目,Project *** is already imported into workspace

    1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.如果从svn检出的项目   Import  ----  Existing Maven Pro ...

  9. zabbix之自动发现Tomcat多实例(第一种:已经部署完成,后续不再添加;第二种:后续或根据需要添加Tomcat实例)

    单一实例手动部署:https://www.cnblogs.com/huangyanqi/p/8522526.html 注释:参考的一位博主的博客后续做的修改,那个博主的网址找不到了!!!! 背景: 1 ...

  10. Mycat分片规则详解

    1.分片枚举 通过在配置文件中配置可能的枚举 id,自己配置分片,本规则适用于特定的场景,比如有些业务需要按照省份或区县来做保存,而全国省份区县固定的,这类业务使用本条规则,配置如下: <tab ...