web安全6

场景 2:后台服务端保存用户的登录口令
// SHA512, 用户表中存放的密码是采用SHA512算法加密的,业务如果有自己的用户表,则也需要调用平台的加密API进行加密存储。请参考平台的加解密API文档。
规则3.5.2.6:禁止在日志中记录敏感数据。
// 禁止在日志中记录敏感数据(如口令、会话标识jsessionid等), 防止敏感信息泄漏。
// 在日志中可配置过滤敏感字符,在调用时,可应用这些过滤规则,以*代替不小心打印出来的敏感数据。比如DAS日志接口打印的调测日志和跟踪日志,可能会包含个人身份、信用卡等信息。
在sensitivewords.properties文件中配置敏感信息的关键字,比如要在日志过滤password这个敏感信息,做如下配置:password=
这个配置的含义是:das在打debug日志的时候,遇到所有参数或者表字段是password(大小写不敏感)的,对应的值都作为敏感信息处理,在debug日志中用******代替。
规则3.5.2.7:禁止带有敏感数据的Web页面缓存。
说明: 对于业务页面都不缓存,每次URL请求都会有timestamp,保证URL是全新的。缓存的都是静态的js,css,image等。缓存哪些类型的页面可以配置,一方面是为了性能,一方面是为了安全。
2.5.3  敏感数据传输
规则3.5.3.1:当表单(form)包含敏感数据时,必须使用 HTTP-POST 方法提交。
3.0 默认用Get提交数据,这也是jquery ajax调用的默认行为,实际测试下来,Get的性能比Post高一倍,在IE7上性能差异更明显。
实施指导:
如果业务涉及敏感数据,一定要Post提交,比如修改用户信息等。可在单个:fire中设置,比如<:fire onbefore="this.options.type='POST'" ....../>
这样这个请求就以POST方式提交。
如果想系统全局都以POST方式提交数据,可修改j.js中的options增加 type :POST

猜你喜欢

转载自xiaoyuwei.iteye.com/blog/1159074