《web应用安全权威指南》心得

0x00:简介

《web应用安全权威指南》是日本的德丸浩先生以一位Web开发人员的视角,较为详尽的介绍了Web应用中常见的安全问题与解决对策。
自己花时间,仔细的阅读并梳理了所掌握的Web安全知识,并就自己的读书心得写成此文。

0x01:特点

1: 视角

本书最大的特点就是以一位Web开发人员的视角来说明漏洞的成因以及对策;
而以往的大多数同类安全书籍多是以一位攻击者或安全问题研究员的姿态写成。

不一样的视角意味着不同的思路,这对安全问题的本质研究颇有帮助;
并且书中为了帮助读者理解,罗列了不少相关实验性代码,这对深入理解漏洞成因大有裨益。

此外,本书在知识上,有两个亮点:一是系统的说明了编码安全这一问题;这是我在初期学习Web安全时最为困惑的一个问题,但是没有找到优秀的书籍能足够重视并系统的说明该问题。比如URL中的空格,在URL/URI编码(常称百分号编码)规范下用”%20”代替,而在application/x-www-form-urlencoded 标准编码(属于HTML规范)下,用”+”号替代,这一细微的差别,可能一些资深人士至今也没有区分清楚。

二是本书较为详尽的介绍了Web安全中Cookie与Session的安全应用场合与功能;由于Cookie、会话管理安全部分是以一位开发人员的视角理解,所以在同类书中算是介绍的较为出色的。

2: 功能与隐患关系

本书大致以3个层次划分了Web漏洞的隐患来源,即输入层、处理层与输出层;本书定义了安全隐患为”能用于作恶的Bug”,结合以前所学,我在此基础上引申为”漏洞为利用一切可用资源能让其它人遭受损失的源能量“,这里的源能量可以是一个正常功能,可以是一个Bug,也可以是一个被社工、受控制的人,这是我的第一大收获。

所以,看似一个正常的注册用户功能,如果不进行图灵测试识别,就可以用机器无限注册用户,攻击网站;最终可能会导致目标网站资源用尽,类似于Dos的危害。

3: 受制

本书阐述了一个理念:编写安全的代码可以有效防止Web漏洞的产生,显然大部分程序员都做不到这一点;
所以,本书的极限也就是一个程序员在阻止Web漏洞造成损害所能做的事,文中缺少对漏洞的寻找与深度利用的技巧
因为时间关系,文中一些涉及到的例如Cookie Monster Bug漏洞、上传文件Dos攻击、PDF文件下载XSS之类的漏洞,现阶段实际已经被封堵的几乎难以找到了,又没有新的见解,个人认为不介绍的为好。

0x02:知识整理

认真看完一本书,就要留下点收获。除了本篇文章,自己针对文章中比较重要的漏洞的成因与特解决方式,整理了一张图,分享给大家。

《web应用安全权威指南》心得_第1张图片

你可能感兴趣的:(pentest)