安全系统开发建议:
1.验证输入:来自不可信数据源的输入需要验证。适当的输入验证可以减少大量软件的弱点。必须怀疑大多数数据源,包括命令行参数、网络接口、环境变量和用户文件。
2.消息编译器警告:编译代码时使用编译器的最高警告级别,通过修改代码来减少警告。
3.安全策略的架构和设计:在构建软件架构和设计软件时采用安全策略。例如,如果系统不同如果需要不同的权限,可以考虑将系统划分为不同的子系统,这些子系统相互通信,每个系统都有适当的权限。
4.保持简单:设计越简单越好。复杂的设计增加了实现中出错的可能性。
5.默认拒绝:默认访问策略基于权限。也就是说,默认访问是拒绝的,除非指明允许。
6.最小权限原则:每个过程都有完成工作所需的最小权限。任何权限的占有时间都应该尽可能的短。这一边方法可以防止攻击者使用权限来增加执行任意代码的机会。
7.清理发送到其他系统的数据:清理发送到复杂子系统的所有数据,例如命令外壳和关系。数据库,商业组件。攻击者可能通过SQL命令或注入进行攻击。子系统无法通过输入验证来避免这种情况。问题,因为子系统不知道调用的上下文,但是调用过程引导上下文,所以在调用子系统时负责清理数据。
8.纵深防御:这是一个通用的安全原则,它避免了来自多种防御策略的风险。如果一层防御失败,另一层防御。
9.使用有效的安全和质量保证技术:良好的质量保证技术可以有效地发现和消除弱点。渗透测试,模糊测试,以及源代码审计,可以被视为一种有效的质量保证措施。独立的安全审查可以建立一个更安全的系统。
10.采用安全编码标准:为开发语言和平台指定安全编码标准,并采用这些标准。
欢迎来电垂询:136-6732-6711