论web安全
在开始学习web安全技术以前,首先要清楚的就是到底什么是web安全?
正如我们所知web是World Wide Web的简称,被称为万维网;万维网是由很多的站点构成的,我们可以通过浏览器来检索站点上所提供的资源。最开始的web应用都是由静态的页面组成的,仅仅向用户提供一些文档的展示。如今的万维网已经与以前大不相同了,万维网具有了各种各样的功能;一些常见的web功能如下:购物,社交网络,银行服务,web搜索,拍卖,博彩与投机,博客,web邮件,交互信息。
随着web应用的功能逐渐丰富,安全问题也随之而来。针对web安全的攻击可以做到非法访问web应用,篡改网页信息,得到敏感数据等等。
根据最近几年的web安全事件得出了以下几种影响web安全的问题:
- 不完善的身份验证措施(撞库,暴力破解,绕过等等)
- 不完善的访问控制措施(水平越权,垂直越权)
- SQL注入
- 跨站点脚本
- 信息泄露
- 跨站点请求伪造
web应用为什么会出现这么多的安全问题,其实根本的原因就是无法控制用户在客户端的输入,用户几乎可以向服务器端提交任何的输入,这就导致了在服务器端如果没有对用户的输入进行一些必要的过滤,就会导致各种各样的安全问题。也可以说这也是一个信任的问题,如果每个用户的输入都是值得信任的,那么也就不存在安全问题了。
安全的核心是数据的安全,其三要素就是机密性,完整性和可用性,后来有有人扩充了这些要素,增加了如可审计性,不可抵赖性等。但最重要的还是那三点。
说了这么多,其实web安全就是保护用户的数据不被非法的利用,但这是一个非常艰难的过程。正如经常所说的”道高一尺魔高一丈“,安全是一个动态的过程,必须随时更新自己的技术能力才能应付不断变化的攻击。