《白帽子讲web安全》读书笔记系列10:Web框架安全

实施安全方案,要达到好的效果,必须完成两个目标:

1)安全方案争取、可靠;

2)能够发现所有可能存在的安全问题,不出现遗漏。

1、MVC框架安全

MVC:Model-View-Controller 将web应用分为三层,view层负责用户视图、页面展示等;controller负责应用的逻辑实现,接收view传入的用户请求,并转发给对应的model处理;model层负责实现模型,完成数据处理。

一个优秀的安全方案,应该是:在正确的地方,做正确的事情。

SQL注入是model层需要解决的问题。

框架中实施安全方案,比由程序员在业务中修复一个个具体的bug,有着更多的优势。

 

2、模板引擎与XSS防御

在view层,可以解决XSS问题;跨站脚本攻击之“输入检查”和“输出编码”方法在XSS防御效果上存在差异;从MVC架构而言,更适用“输出编码”

 

3、web框架与CSRF防御

CSRF攻击可以采用security token解决;对于web框架而言,可以自动在所有涉及POST的代码中添加token。

 

4、HTTP Headers管理

在web框架中,可以对HTTP头进行全局化的处理,因此一些基于HTTP头的安全方案可以很好的实施。比如针对HTTP返回头的CRLF注入防御、针对30X返回号的HTTP Response实施的钓鱼或诈骗防御、统一设置Cookie函数、HttpOnly功能等。

 

5、数据持久层与SQL注入

ORM:Object/Relation Mapping 框架

对抗SQL注入的最佳方式:预编译绑定变量,但当代码量巨大时,难以把SQL注入的地方不遗漏的找出来,而ORM框架提供了一个便捷的途径。

 

6、其他能在框架中实现的安全方案

文件上传、基于URL的访问控制、加密方法、证书支持、OpenID支持、安全日志保存等。

设计整体安全方案时,先建立威胁模型,然后判断哪些威胁是可以在框架中得到解决的。

 

7、web框架自身安全

Struts 2命令执行漏洞,相应补丁未能完全解决,反映struts2的开发者本身对安全的理解不到位;

Spring MVC命令执行漏洞

Django命令执行漏洞

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值