《Web应用安全威胁与防治》 这本书讲的是什么 , 书的名字已经阐述的很清楚, 我就不再赘述了
看了下ITeye提供的试读章节 , 的确有些干货 , 感觉囤一本还是有些必要的 , 也在此向ITeye的朋友们推荐下
试读章节包括了第六章 第十章和第十二章 其中第六章介绍了一些web安全方面的扫描工具 第十章介绍了身份认证和会话管理方面的安全问题 第十二章介绍了CSRF(跨站请求伪造)的相关知识
下面是我阅读第十章和第十二章后的读书笔记:
会话劫持:
截获sessionId 从而劫持该sessionId对应的会话
会话固定:
1 得到A网站的一个sessionID
2 诱导用户B发送含该sessionID的请求 , 用户B通过输入信息的方式登录了A网站
3 通过该sessionID , 可以得到B的权限
*url中写入sessionID 可能导致会话固定
非直接会话攻击 :
原因:
服务器端在用户还没有成功登录/注册/密码重置前 , 就将user信息存入session , 相应操作失败后 虽然提供了302重定向到失败页面 但客户端可以通过一些工具强制不执行302跳转 , 而此时server端session已经存在user信息 , 这样攻击者即使登录验证失败 , 却还能取得user的权限
解决办法 :
不要在 登录/注册/密码重置 前 就在session 中置入user信息 ;
防治会话固定的方法:
一旦用户登录成功,马上invalidate用户的会话
保护sessionID (会话令牌) 的方法 :
会话过期(软会话过期(xx时间没有操作) (硬会话过期(通过web filter 实现)))
保护cookie (设置 secure , HttpOnly) 防止中间人攻击 (Man in the Middle) *servlet 3.0 可以在web.xml 中设置 这两个属性
提供完整的 logout 功能
跨站请求伪造 CSRF ( Corss-site Request Forgery )
其特征为:
用户B登录A网站没有退出 打开的任何页面都可以向A网站发送B可以执行的请求 (如将可执行url 放入 img标签中 , 内嵌可提交表单的不可见iframe等)
主要的预防方法:
在重要操作前(转账/改密) 添加二次验证
添加token , 方法是:
1 在用户刚登录时 产生一个不可预知的Token ,
2 在任何需要保护的表单/URL 中 添加这个Token作为参数
3 提交相应请求时检查这个token
4 退出/session过期时 移除该token并销毁session
注意 , 添加Token并不能确保不会受到CSRF攻击 , 特别是在可能同时存在XSS漏洞的情况下
一个方便添加token的类库 : CSRF Guard
注:本文参加了ITeye1月技术图书有奖试读活动
相关推荐
注重算法的核心思想及解决实际问题,详细讲解相关数学理论及编程实现技巧,面试必备
JavaScript模式(英文版)+基于MVC的JavaScript Web富应用开发(试读) 基于MVC的JavaScript Web富应用开发(构建下一代互联网富应用之最前沿技术),面向jQuery开发者的客户端应用开发指南,本书教你如何构建先进的富...
2015数据结构高分笔记的试读版,可以帮助希望购买这本书的人了解一下此书的风格!强烈推荐!
《HTML5移动Web开发指南》主要围绕HTML5技术,讲述如何利用HTML5相关技术开发移动Web网站和Web App应用程序。《HTML5移动Web开发指南》共分为四大部分,第一部分主要讲述Web技术的发展及HTML5标准在移动Web技术中的...
Node实战|组件|工具|模块库大全 搞定最复杂应用 全面提升代码质量与开发效率
《操作系统高分笔记》试读版[归纳].pdf
多云安全风险图谱(试读本).pdf
Windows信息安全与内核编程(试读版),虽然是试读版,但是对于从事信息安全的朋友还是有很好的帮助的,希望大家喜欢。
《响应式Web设计实践》试读干货,响应式——适应浏览器的不同——Web设计实践
《操作系统高分笔记》试读版.pdf
Ajax - Web20开发技术详解试读版内容丰富,适合初学者学习。
介绍。第 1 章主要介绍环境的搭建,包括 wamp/wnmp 环境以及 lamp/lnmp 环境。这些环境搭建是简单的。这里要重点理解的是 PHP 的核心配置,
试读章节 试读章节 试读章节 试读章节 试读章节
网上下载的试读版本,自己去掉了水印,看着清爽一点。目前还没有全版的放出来。
科技日新月异,设备不断推陈出新,Web设计师需兼顾不同设备,而每种设备的屏幕尺寸又各不相同。本书分为两个部分:第一部分为著名的“Mobile First”,解释为何移动网站的设计最为有效,阐述如何简化页面,删去多余...
第1章 什么是STM321 1.1从CortexM3说起1 1.2STM32面面观3 第2章 杰出的源泉——ARM CortexM3内核架构8 2.1 ARM架构回顾8 2.2 CortexM3 CPU:核心中的核心9 2.2.1管道9 2.2.2编程模型10 2.2.3 CortexM3 CPU的运行模式...
构建高性能Web站点 [试读]Web组件分离 - 节选
部分内容 gO back 回去 I'm going back home.我要回家了。 be back 回到 丨am back home.... get back(到)回来 When did you get back ?你什么时候回来的到这的?...Dont leave me, come back to me....
Windows内核编程与信息安全(免费试读版) 作者: 楚狂人 内核上机指导 过滤简单设备 键盘的保护
目录: 第3章 我的界面我作主——Activity和布局管理器 第10章 Android网络 第12章 Android专属