javaWEB安全开发基本原则
最小化设计
用户输入最小化,尽可能少地使用用户的输入
用户输入范围最小化,过滤参数时尽量使用白名单策略
用户权限最小化,只对用户进行所需的最少授权
输出数据字段最小化,限制数据输出并且不输出业务无关的数据
所有(客户端)输入都不可信
通信协议中从客户端传来的一切数据
从数据库/文件/网络等,一些不直接来源于用户,但又不是程序中定义好的常量数据
安全编码不依赖任何安全配置
编写程序时不能有侥幸心理,不能依赖于配置文件的安全选项
禁止输出程序错误或调试信息
程序的错误和异常进行统一的日志记录,禁止输出到用户界面
禁止任何程序后门
应用系统不应保留任何非正常渠道需求的功能点.例如,出于程序调试目的的后门代码等