web安全问题的理解

同源策略以及cookie安全策略

[同源策略以及cookie安全策略](http://blog.csdn.net/turkeyzhou/article/details/8818173)

密码安全

  1. 前端使用md5加密,后端出处理的后果:一旦数据库泄露,并知道是前端进行hash,都不用知道md5对应的原文,直接修改客户端向服务器发送请求,密码为数据库中的md5就可以直接登陆。

不管前端是否加密了密码,都不能以此为假设,让后端设计的安全等级下降,否则就会有严重的安全问题。实际上,前端进行密码加密,可以看做帮助用户多进行了一次原文的转换,不管用了什么加密算法,算出来的结果都是密码原文,你该如何保护用户的原始密码,就该如何保护此处的加密结果,因为对你的登录系统来说,它们都是密码原文。

  1. 前端加密会带来什么问题。有些人会认为前端进行了加密,可以降低后台的安全性需求,这种错误的观念会造成系统的安全漏洞。实际上,你不能对前端做任何的假设,所有跟安全相关的技术,都必须应用在后台上。
  2. 前端进行加密会造成页面需要js脚本才能运行,那么假设你的系统需要兼容不能运行js的客户端,就必须再设计一个使用原文的登录接口。
  3. 前端是不是加密,所有安全机制都必须照常应用,所以为系统增加这样的复杂性是完全没必要的,即使传输明文密码,只要正确使用了HTTPS连接和服务器端安全的哈希算法,密码系统都可以是很安全的。

总结:前端加密对密码安全几乎没有任何的降低,安全还是的后端做。看似可以防止明文传输; 但是安全是常识问题,可稍微增加一点门槛,(我的理解是安全是相对的,只要解密所需成本远远大于解密后的利益)

加密算法:md5,sha1,base64(google的库crypto-js)

  1. 有效期token+加密后的密文密码 // TODO

  2. 验证码 // TODO

  3. HTTPS // TODO

https加密是用的随机密钥的desc加密的.每次通信密钥是不一样的.截取密文是没有意义的.

  1. js不可读化处理 这是一个问答 压缩(compression)、混淆(obfuscation) 和加密(encryption)。

xss

XSS攻击及防御

之前很多项目都是使用了这个库对用户输入的内容进行过滤,以避免遭受XSS攻击的模块 js-xss

CSRF

浅谈CSRF攻击方式

威胁

通讯劫持

// TODO

数据库泄露

// TODO

内部查询

// TODO

results matching ""

    No results matching ""