Web安全越来越成为互联网时代的一个重要因素,很不容易的,终于看到了一本web安全方面的新书。最近一年来,我本人也一直在研究web安全的相关内容,也有了一定的了解和认识。相关的书读了不少,包括黑客攻防类的,0day安全类的,再看此书的试读章节,难免会与其他书做个比较。本书相对于其他同类型书来说,最大的特点就是作者喜欢用实例说话,在讲解每个关键点的时候都会举出恰到好处的例子来帮助我们理解,这方面在第十章和第十二章最为明显,更加有利于大家的学习。
接下来我就结合我自身的知识将试读章节中的内容总结概括下:
首先,书的副标题告诉我们本书的web安全是基于OWASP Top10的安全威胁。很多朋友都不太知道owasp top10的威胁都包含什么。我先在这里做个简单介绍:
Owasp全称是Open Web Application Security Project,即开放式Web应用程序安全项目。它是一个非盈利组织,主要提供有关计算机和互联网应用程序的公正、实际、有成本效益的信息。具体关于这个组织的一些信息请各位移步baidu。我这里主要介绍下top10;
所谓的top10是指The top 10 most critical web application security risks(Web应用的十大关键风险),目前的十大安全隐患包括:
注入
跨站脚本(XSS)
错误的认证和会话管理
不正确的直接对象引用
伪造跨站请求(CSRF)
安全性误配置
限制远程访问失败
未验证的重定向和传递
不安全的加密存储
不足的传输层保护
所以,最近两到三年,基于上述10个安全隐患的web攻击是最多且不断进化的,作为一个web开发者,或是测试人员、安全工作者、项目经理都需要将安全重视起来。
接下来我将试读章节的内容做个简单的总结。
第六章为我们介绍的是三个安全扫描工具:WebInspect、w3af和Ratproxy。目前比较流行的安全扫描工具还有一个与WebInspect齐名的AppScan,除此之外还有一个轻量级开源的Paros,上面的工具各有所长,概括来说HP的Webinspect和IBM的AppScan是基于企业级web应用,做出最详尽的安全测试审计报告,相对适合安全工作者使用参考;w3af和paros同样作为自动安全扫描工具则相对较轻量级,更便于使用和与项目集成,相对是更加适合于开发人员使用;Ratproxy的最大特点是被动扫描,即你在测试功能同时完成扫描,所以更加适用于测试人员。当然,上述工具对于大家来说更多了解就更好了。同样,不可避免的,所有的工具都存在错报和漏报的问题,这时候需要我们运用自己的安全知识来“火眼金睛”的辨识漏洞的真实性。
第十章主要介绍的是失效的身份认证和会话管理。从10年开始,会话令牌作为互联网一个重要的因素就被不断的攻击。章节中为我们介绍了攻击的方法和防治的措施,已经非常详尽,有兴趣的朋友可以阅读参考。对于我而言,我最本章最感兴趣的是双因子认证。
双因子认证是基于HMAC-based One-time Password Algorithm,也就是HMAC一次性密码算法的安全认证服务。
因为secret key 的QR Code 只会发在各个用户的手机上,并且每个用户都知晓自己的密码,从而实现了双因子认证。这样,即使别人知道了你的密码,但他不会有你的手机,无法登录;即使别人不小心拾到了你的手机,但是他不知道你的密码,也无法登录。这就是双因子验证的强大功能。目前双因子验证虽然安全,但却并不十分便捷,所以在大多数网站中没有使用其作为登录模式,但是现在的支付接口却很多运用了此项技术,相信我这么一说,大家就可以想象到了。
第十二章为我们介绍的是CSRF,跨站请求伪造。听起来很像XSS,但它与XSS非常不同,并且攻击方式几乎相左。XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具危险性。
CSRF的常见特性:
l 依靠用户标识危害网站
l 利用网站对用户标识的信任
l 欺骗用户的浏览器发送HTTP请求给目标站点
介绍就到这里,具体的原理和测试方法、防范方法都在章节中结合例子和工具有更细致的讲解,我就不在这里赘述了,总体来说,CSRF虽然攻击较少,但防范难度更大,网站中的任何图片、链接都有可能带你走向万丈深渊,所以也是所有it安全工作者需要防范的一个环节。
介绍了这么多,这貌似是我写的较长的一篇读书笔记了,主要也是对安全方面有一定的了解,所以洋洋洒洒写了如此多的内容。互联网需要一个安全的环境,而安全的环境需要每个it工作者为之努力奋斗,所以,让我们努力,别让谁动了我们的web安全!
相关推荐
NULL 博文链接:https://webmaster.iteye.com/blog/2232683
构建高性能Web站点 [试读]Web组件分离 - 节选
《HTML5移动Web开发指南》主要围绕HTML5技术,讲述如何利用HTML5相关技术开发移动Web网站和Web App应用程序。《HTML5移动Web开发指南》共分为四大部分,第一部分主要讲述Web技术的发展及HTML5标准在移动Web技术中的...
JavaScript模式(英文版)+基于MVC的JavaScript Web富应用开发(试读) 基于MVC的JavaScript Web富应用开发(构建下一代互联网富应用之最前沿技术),面向jQuery开发者的客户端应用开发指南,本书教你如何构建先进的富...
Ajax - Web20开发技术详解试读版内容丰富,适合初学者学习。
竹林蹊径:深入浅出Windows驱动开发--试读样章
寒江独钓--Windows内核安全编程 正式试读样章,今天才放出的
Node实战|组件|工具|模块库大全 搞定最复杂应用 全面提升代码质量与开发效率
科技日新月异,设备不断推陈出新,Web设计师需兼顾不同设备,而每种设备的屏幕尺寸又各不相同。本书分为两个部分:第一部分为著名的“Mobile First”,解释为何移动网站的设计最为有效,阐述如何简化页面,删去多余...
java程序设计大学教程试读+课件!!!java程序设计大学教程试读+课件!!!
《响应式Web设计实践》试读干货,响应式——适应浏览器的不同——Web设计实践
试读-Docker 容器与容器云(第2版)-P469-浙大-人邮-2016.10
作者根据自己的亲身经历和某些大型企业的案例,讲述了如何创建高稳定性的软件系统,分析设计和实现中导致系统出现问题的原因。本书分为四个部分,每部分内容都由一个研究案例引出。第一部分介绍了如何保证系统的生存...
John-David Warren、Josh Adams和Harald Molle会带你走进机器人的世界,教会你如何寻找配件、怎样制作机器人、怎样进行编程,甚至告诉你如何对机器人进行安全测试。 本书可以教会你如何用Arduino来控制各式各样的...
USB应用开发实例详解书中讲解上位机开发的章节,这里提取出来供大家学习,分别讲了VC,c#环境下上位机的开发,讲解很详细
sunxin-Struts2试读sunxin-Struts2试读
web前端实验项目叮叮书店
[试读]动态脚本加速+-+避免重复编译[收集].pdf
竟成408-数据结构-部分试读,考研计算机408,真题,模拟题,考研408必备用书。