本篇介绍了以下代码安全问题
1、配置文件中的空密码
2、配置文件中的明文密码
3、Random.setSeed参数为特定值
4、弱加密:使用固定的初始化向量
5、不安全的哈希算法:PBE使用的迭代器数值过低
6、弱加密:byte数组转String时未指定编码
7、空的加密密匙
8、null加密密匙
9、JavaEE程序:页面密码明文输入
10、弱加密:可被用户控制的密钥大小参数
1、配置文件中的空密码
详细信息
配置文件中密码值为空,系统安全性将会受到威胁。
修复建议
配置文件中存储的密码应该为经过加密处理的密码值。
2、配置文件中的明文密码
详细信息
配置文件中采用明文存储密码,将会降低系统安全性。
修复建议
配置文件中的密码应进行加密存储。
3、Random.setSeed参数为特定值
详细信息
不应为Random.setSeed设置特定值作为参数。如果Random对象使用特定值作为种子,则Random.nextInt()以及类似方法返回的值是可以预测的。
例如:下面代码可以通过Random对象a来预测Random对象b生成的值。
Random a = new Random(