开发人员不得超越其规定权限进行开发,3.2防范常见安全编码问题
发表时间:2023-10-08 14:03:56
文章来源:炫佑科技
浏览次数:180
菏泽炫佑科技
开发人员不得超越其规定权限进行开发,3.2防范常见安全编码问题
3.2 防止常见的安全编码问题
在实现应用软件的编码阶段,也容易因为缺乏严谨的思维或者不良的编程习惯而引入安全问题。 而且,这些安全问题具有非常有害的影响,它们产生的漏洞常常会导致应用程序的其他部分出现问题。 建立的安全控制措施完全无效。 目前存在的相当一部分系统漏洞是由编码问题引起的。 因此,为了保证应用软件的安全,必须在编码阶段继续高度落实安全原则。
在编码阶段,避免安全问题的基本原则如下:
1、程序只实现指定的功能
2、永远不要相信用户输入,并检查用户输入数据的有效性。
3、必须考虑和处理意外情况
4、当关键业务流程出现错误且无法修复时,不要尝试继续业务。
5. 尽可能使用安全函数进行编程
6、精心策划、精心策划、一丝不苟
3.3 针对性预防
1. 缓冲区溢出
如果在处理输入参数(字符串、整数等)时长度检查不严格,或者对指针、数组的越界访问没有进行保护,就很容易出现缓冲区溢出( )问题。
为了避免这个问题,必须对系统输入数据进行严格的长度检查,丢弃或截断过长的越界数据,并使用基础库函数中一些更安全的字符串处理函数来处理数据。 还可以使用编译器或代码审查工具提供的检查功能,尽早发现可能导致问题的程序。
2. 输入非法数据
恶意攻击者会尝试在用户界面或界面中向系统输入恶意数据,以绕过系统的安全限制,导致系统崩溃甚至崩溃或用于其他非法目的。 因此,在编码时,需要对所有输入数据(包括用户数据)进行验证。 接口中输入的数据以及其他应用系统通过该接口传递的数据)都经过严格的合法性检查。
3. SQL注入攻击
防止SQL注入攻击的方法是严格检查用户输入的数据,使用基础系统提供的参数化查询接口软件开发,避免使用字符串构造动态SQL查询。同时,对于数字
严格限制对数据库对象的访问权限,防止恶意SQL语句破坏数据或系统。
4.拒绝服务攻击
拒绝服务攻击(-DoS)是指通过大量并发访问使服务器有限的特定资源(如网络、处理器、内存等)接近耗尽,导致服务器或操作系统出现故障的攻击行为。
编码时要注意防止可能的DoS攻击。 具体措施包括提高软件行为的可管理性、主动拒绝异常连接、自动锁定攻击源、提供能够有效识别攻击源的实时监控接口、具备(异常)事件报警机制等。 、审计日志等。通过这些主动或被动的防御方法,可以将DoS/DDoS攻击造成的损害和危害降低到较低的水平。
5、敏感信息泄露
在处理敏感数据时,必须采用以密码学为主的安全技术来提供强有力的保密保护。 在使用密码技术时,一般需要使用公开的、经过广泛验证的、可靠的加密算法,同时加强密钥的管理和保护。
软件设计用户指南
软件设计主要包括架构设计、概要设计和详细设计;
4.1 架构设计文档
软件架构设计文档描述了系统级设计和架构设计。 它是指导整个软件开发的技术纲领性文档。 是从宏观整体角度对系统进行的高层设计,包括逻辑架构、物理架构、系统架构等。概要设计和详细设计文件应符合架构设计的总体原则和设计目标,设计指标。
5.2 设计文件概要
摘要设计描述了计算机软件系统的设计。 它是系统级的设计决策和系统架构设计。 主要划分系统服务边界,确定服务层次和调用关系,设计系统安全性、高可用性、高性能。 高并发的非功能性设计指标。 遵循总体架构设计的设计原则和设计目标来实现系统功能。
5.3 详细设计文件
详细设计描述计算机系统的设计,描述子系统级设计决策、系统架构设计和实现功能所需的详细设计,包括流程设计、服务设计、用户界面设计、API接口设计、数据库详细设计和代码Core 3函数算法设计。
文件和用户指南由专人保管
5.1 概述
软件设计通常由架构团队完成,并完成后续的更新和维护。 与软件设计相关的文档和使用指南由专人保管。 任何人如需使用本文件,应先向指定人员提出申请并获得批准后方可阅读。
5.2 托管系统
保管人应当保证文件的有序存储和索引开发人员不得超越其规定权限进行开发,3.2防范常见安全编码问题,确保文件的安全,避免非法读取。 文件审查申请必须包括审查人、拟审查文件名称、审查理由、审查时间、授权人等信息。 对于不符合要求的访问请求,托管人有权拒绝访问。 保管人需要保存文件审查记录。
修改授权和批准
6.1 授权范围
程序资源库按照程序模块和功能分别存储在资源仓库中。 不同的程序资源库对应不同的访问权限。
对程序存储库的所有访问和修改提交都需要授权和批准。
6.2 授权表
节目资源库授权审批人员必须由专人指定。
如果开发者需要修改程序,必须先提交授权申请。
程序修改可以在指定存储库和指定开发人员的授权和批准下提交。
一旦提交,程序修改应由指定开发人员审查和批准。
未经授权和批准的提交材料将不被接受。
该授权可以随时撤销。
6.3 风险控制
有权修改程序资源库的人员应谨慎使用提交权限,以免对程序资源库造成影响。
程序资源库具有分支管理功能,授权人员只能在相应的分支上进行修改和提交。
对于已经授权提交的修改,应该有恢复和撤销机制。 保证程序资源库的可恢复性。
6.4 更新授权和批准
1、节目资源库要严格把控。 对程序资源库的修改需要得到项目经理和相关软件开发部门主管的授权。
2、授权审批需要有完整的流程控制。 授权发起者需要有变更请求才能发起授权。 审批完成后,启动签名正式流程完成后,进入执行阶段;
3、跟踪更新授权及审批后执行结果,制定准入和退出原则。 若实施失败,需重新启动更新授权审批流程;
4.更新综合管理授权审批流程。 所有流程都需要记录、存档并可追溯。 需要跟踪更新人、更新时间、更新事项等。
6.5 发布授权与审批
1、节目资源库要严格把控。 程序资源库的发布需要实施软件发布流程,需要项目经理和相关软件开发部门主管授权,批准后方可实施。
2、授权审批需要有完整的流程控制。 授权发起者需要发出请求来发起授权。 审批完成后,签名启动正式发布流程,进入执行阶段;
3、跟踪发布授权和审批后执行结果,制定准入和退出原则。 若实施失败,需重新启动发布授权审批流程;
4、发布授权审批流程全程管理,所有流程均需记录归档、可追溯。 需要跟踪发布者、发布时间、发布项目等;
6.6 同步文档手册编写
1、整个软件开发生命周期的文档需要更新,并且是*新的文档;
2.在所有开发过程结束时,需要检查相应的开发和设计文档是否更新和完整。 否则,开发过程不应结束。 文件需有更新修改历史及修改内容注释;
3、所有文档修改均应有归档和保存策略,需要版本化、可追溯,且文档无法删除;
4、文件应有文件规范,包括名称规范、模板文件、修订规范等,保证文件规范化、规范化;
5、发布过程、测试过程、变更修复过程均应检查验收文件的准确性和完整性。
炫佑科技专注互联网开发小程序开发-app开发-软件开发-网站制作等