第12章 Web框架安全
总的来说,实施安全方案,要达到好的效果,必须要完成两个目标:
- 安全方案正确、可靠
- 能够发现所有可能存在的安全问题,不出现遗漏
12.1 MVC框架安全
- MVC架构:Model-View-Controller
- 一个优秀的安全方案,应该是:在正确的地方,做正确的事情。
- 数据在经过不同的应用逻辑处理后,其内容可能会发生改变。因此在设计安全方案时,要考虑到数据可能的变化,认真斟酌安全检查插入的时机。
- 在框架中实施安全方案,比由程序员在业务中修复一个个具体的bug,有着更多的优势。
- 有些安全问题可以在框架中统一解决,能够大大节省程序员的工作量,节约人力成本。
- 对于一些常见的漏洞来说,由程序员一个个修补可能会出现遗漏,而在框架中统一解决,有可能解决“遗漏”的问题。
- 在每个业务里修补安全漏洞,补丁的标准难以统一。而在框架中集中实施的安全方案,可以使所有基于框架开发的业务都嗯那个受益,从安全方案的有效性来说,更容易把握。
12.2 模板引擎与XSS防御
- 从MVC架构来说,XSS时发生在View层,因此使用“输出编码”的防御方法更加合理。
- 这意味着需要针对不同上下文的XSS攻击场景,使用不同的编码方式。
- 当代流行的MVC框架中,View层常用的技术是使用模板引擎对页面进行渲