web安全5
规则3.4.4:对于运行应用程序的操作系统帐号,不应使用“root”、“administrator”、“supervisor”等特权帐号或高级别权限帐号,应该尽可能地使用低级别权限的操作系统帐号。
规则3.4.5:对于应用程序连接数据库服务器的数据库帐号,在满足业务需求的前提下,必须使用最低级别权限的数据库帐号。
说明:根据业务系统要求,创建相应的数据库帐号,并授予必需的数据库权限。不能使用“sa”、“sysman”等管理帐号或高级别权限帐号。
2.5????? 敏感数据保护
2.5.1? 敏感数据定义
敏感数据包括但不限于:口令、密钥、证书、会话标识、License、隐私数据(如短消息的内容)、授权凭据、个人数据(如姓名、住址、电话等)等,在程序文件、配置文件、日志文件、备份文件及数据库中都有可能包含敏感数据。
2.5.2? 敏感数据存储
规则3.5.2.3:禁止在 cookie 中以明文形式存储敏感数据。
说明:cookie信息容易被窃取,尽量不要在cookie中存储敏感数据;如果条件限制必须使用cookie存储敏感信息时,必须先对敏感信息加密再存储到cookie。
规则3.5.2.4:禁止在隐藏域中存放明文形式的敏感数据。
规则3.5.2.5:禁止用自己开发的加密算法,必须使用公开、安全的标准加密算法。
实施指导:
场景 1:后台服务端保存数据库的登录口令
// 算法:AES256。常见问题是加密的环境和解密的环境JDK不一致,导致解密失败,请参考FAQ部分的案例说明。比如在windows下加密(SUN JDK),在AIX机器上运行解密(IBM JDK),就会有问题,算法实现还是有差异的。