只是看了试读其中的一部分,我就开始冒汗了。
作为一名普通开发人员,要维护那凌乱的遗留系统和应付层出不穷的变更需求,就经常让我的周末泡汤,偶有时间,也是关注于分析和设计领域。对于安全威胁,我的确所知甚少,我听说过其中一些名词,简单的可以猜出原理(比如会话劫持),但对于大多数名词只是大致了解是怎么回事(比如XSS、CSRF),但并不清楚其原理和防治方法。
就在上周,手头维护的一个企业内网系统就有用户绕过了证书登录,被发现的原因是他在内网论坛上向其它人传授技巧。管理员汇报上来后问题很快被查出来:以前的口令登录的前端页面虽然没有了,但是后台功能还是保留的,所以用户就自己构造了请求。
在试读本书之前,我以为安全威胁就是诸如此类,但现在知道了那只是我坐井观天的想法。试读很慷慨的提供了三章内容:
第6章主要介绍各种安全扫描工具用于自动监测,包括开源的和非开源的,主动扫描的和被动扫描的3种主要工具的使用介绍,分别是HP WebInspect、w3af、Ratproxy。这些工具都非常强大,而且图比较多,讲解详细,对于初学的人很有用。比较有意思的是被动扫描可以和功能测试结合,这么说以后做自动化测试可以一举两得了。
第10章介绍身份认证和会话管理方面的安全问题,虽然我比较熟悉会话处理和HTTP协议,但从没想到有那么多天才的想法可以应用到攻击中来。更为难得的是本书的作者实际经验丰富,通过演示告诉你每种攻击方法的原理。用图例给出了攻击过程,在描述过程步骤时会介绍相关知识,然后在各个主要步骤上都给出了截图,读着有身临其境之感。会话劫持和会话固定都是想办法得到有效的Session ID,只不过一个是偷,一个是送、非直接会话攻击(为啥不叫间接会话攻击呢?)所描述的在完成登录前设置了会话变量不是很常见,但也是对开发人员的警示,一行不起眼的多余代码也能引起一种攻击。知道攻击原理很重要,但后面的如何预防则弥足珍贵,比如对会话固定的预防方法,对会话令牌的保护,都有现成的模式可以遵循。本章最后面给出的双因子认证流程,更是让我大开眼界,不仅介绍原理,还有现成的方案可以借鉴,太好了。
第12章介绍跨站请求伪造(CSRF),之前不太了解,所以看的也是心惊肉跳,对于现在的多窗口浏览器来说,只要没全部关闭,那些临时cookie就还在,CSRF就可以利用你的验证信息发出特定请求,这种攻击可以通过图片或链接生成,不留心根本注意不到,只是需要选择时机,毕竟如果你还没登录那么特定请求自然也无效,但如果这种攻击方式和木马结合起来将会十分恐怖。
作者以大量的实际示例将各种攻击和预防的关键以最明白的方式摆在我面前,虽然只是常见风险中的几种,但已经感觉风险与我是如此的接近,看的我是触目惊心而又欲罢不能。不过,不去了解风险才是最大的风险,我很想向我的同事们都推荐这本书。
相关推荐
除了Web应用开发常用的模块库之外,Node.js也支持许多与前端相关的工具,如Webpack、Babel等。Webpack可以帮助开发者打包JavaScript模块,优化前端资源;Babel则允许开发者使用新版本JavaScript的语法,提高开发效率...
压缩包中的文件名“Web应用安全威胁与防治——基于OWASP_Top_10与ESAPI_试读样章.pdf”揭示了这份资料可能来源于一本书的一部分,书中可能会详细探讨Web应用面临的十大安全威胁(OWASP Top 10),这是由OWASP(开放...
JavaScript模式(英文版)+基于MVC的JavaScript Web富应用开发(试读) 基于MVC的JavaScript Web富应用开发(构建下一代互联网富应用之最前沿技术),面向jQuery开发者的客户端应用开发指南,本书教你如何构建先进的富...
《软件性能测试与LoadRunner实战试读》是针对IT专业人士,特别是测试人员的一份宝贵资源。LoadRunner是一款业界广泛使用的性能测试工具,由HP(现为Micro Focus)开发,它能够模拟大量用户并发操作,帮助识别系统在...
Windows信息安全与内核编程(试读版),虽然是试读版,但是对于从事信息安全的朋友还是有很好的帮助的,希望大家喜欢。
《寒江独钓——Windows内核编程与信息安全(免费试读版)》不仅为读者提供了关于Windows内核编程的基础知识和技术细节,还涵盖了多种信息安全领域的具体应用案例。通过阅读本书,读者不仅可以学习到如何开发复杂的...
8. **威胁模型与安全策略**:为了保护系统,需要了解潜在的攻击方式和应对策略。书中的这部分可能涉及常见的攻击模型,如缓冲区溢出、权限提升等,并给出防范措施。 9. **漏洞分析与修复**:可能会分析一些实际的...
《多云安全风险图谱》是一本专注于探讨企业在采用多云策略时可能面临的各类安全挑战的书籍。...同时,企业还需要关注全球范围内的合规性要求,以确保在享受多云带来的好处的同时,能够有效抵御和预防安全威胁。
《USB应用开发实例详解》是一本深入探讨USB设备与上位机交互的实践性书籍,主要针对VC(Visual C++)和C#两种编程环境下的上位机开发进行了详尽的阐述。书中不仅介绍了基本的USB协议原理,还提供了丰富的实战案例,...
Java Web开发技术是构建互联网应用程序的关键领域,涵盖了服务器端编程、网页交互以及...以上就是《Java Web开发技术大全》中可能涵盖的主要知识点,通过深入学习和实践,开发者可以构建出高效、安全的Web应用程序。
响应式Web设计是一种网页设计技术,它的核心目标是使得网站能够自动适应不同屏幕尺寸和分辨率的设备,如桌面浏览器、平板电脑和手机。这种设计方法要求设计师和开发者采用灵活的思维方式,克服传统设计中的固定思维...
本书系统论述了Windows Phone 7操作系统的应用开发,全书由浅入深地介绍了Windows Phone 7应用程序开发的各方面知识,分为开发基础篇、开发技术篇和开发实例篇3个部分,从不同的层面进行了阐释。开发基础篇介绍了...
信息架构是构建和管理信息环境的一门科学,它跨越了Web设计、用户体验、内容策略以及其它与信息有关的专业。在数字化时代,随着移动设备、物联网(IoT)和人工智能技术的兴起,信息架构的角色和应用领域不断扩展。 ...
这一理念的核心在于理解并利用不同Web组件的特性,通过合理的设计与优化,最大限度地提升网站的整体性能。本文将深入探讨Web组件分离的重要性,分析其背后的逻辑,并提出具体的实施策略。 #### 组件分离:因材施教...
### Windows内核编程与信息安全(免费试读版) #### 一、内核上机指导 在本书中,楚狂人通过一系列实践性的指导帮助读者掌握Windows内核编程的基础。这一章详细介绍了如何从零开始搭建内核编程环境,并且演示了一...