代码编写安全管理制度

这篇具有很好参考价值的文章主要介绍了代码编写安全管理制度。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1、总则

1.1、目的

为了加强应用软件开发的安全性,保障XXXXX单位信息系统代码编写的安全,特制定本规范。

1.2范围

本制度适用于XXXXX单位信息系统代码安全编写要求。

1.3、职责

软件开发商须按照XXXXX单位的代码安全编写规范进行软件开发,以保证开发系统符合XXXXX单位代码安全编写规范。

网络安全与信息化管理部门各对口应用开发部门实施代码安全编写的控制,并组织在软件开发项目结束时对所开发的软件实施代码安全审计。

2、安全编码

2.1通用编码原则
  1. 不要信任外部的用户输入或系统。

应用程序应该彻底验证所有用户输入,然后再根据用户输入执行操作。验证可能包括筛选特殊字符。针对用户意外地错误使用和某些人通过在系统中注入恶意命令蓄意进行攻击的情况,这种预防性措施对应用程序起到了保护作用。常见的例子包括 SQL 注入攻击、脚本注入和缓冲区溢出。此外,对于任何非受控的外部系统,都不要假定其安全性。

  1. 不要通过隐藏来保障安全。

尝试使用让人迷惑的变量名来隐藏机密信息或将它们存储在不常用的文件位置,这些方法都不能提供安全保障,最好使用平台功能或使用已被证实可行的技术来保护数据。

  1. 以安全的方式处理失效

如果应用程序失效(如发生严重错误等),要恰当的进行处理,一定要保护好机密数据。同时,在向最终用户返回错误消息时,不要公开任何不需要公开的信息。也就是不要提供任何有助于攻击者发现应用程序漏洞的详细信息。

2.2防范常见安全编码问题

在实现应用软件的编码阶段,也较容易因缺乏严谨思考或不好的编程习惯而引入安全问题,而且这些安全问题产生的危害作用非常大,因其产生的漏洞常常会造成应用程序中其他部分构筑的安全控制措施完全失效。目前存在的相当数量系统漏洞都是由编码问题造成的。因此要想保证应用软件的安全性,必须在编码阶段继续高度贯彻安全性原则。

在编码阶段,避免安全问题的基本原则如下:

  1. 使用最新的编译器和编译选项
  2. 尽量不使用特定的危险API,如strcpy, strcat等
  3. 程序只实现指定的功能
  4. 永远不要信任用户输入,对用户输入数据做有效性检查
  5. 必须考虑意外情况并进行处理
  6. 不要试图在发现错误之后继续执行
  7. 尽可能使用安全函数进行编程
  8. 小心、认真、细致地编程
  9. 定期进行安全代码复查
  10. 使用静态语言分析工具以扫描安全漏洞
2.3防范常见安全漏洞问题

目前在各种应用软件中常见的安全漏洞如下所示,应对这些常见问题进行有针对性的防范。

2.3.1、缓冲区溢出

如果对输入参数(字符串、整数等)处理时长度检查不严格,或对指针和数组越界访问不进行保护,就容易产生缓冲区溢出(Buffer Overflow)问题,这种问题主要出现在主要出现在 C/C++ 语言编写的系统中,它造成的漏洞是当今绝大多数安全漏洞的主要根源。在 Java / .NET 等利用虚拟机的(托管)平台上不会产生此问题。

要避免此问题,则必须对系统输入数据进行严格的长度检查,废弃或截断超长的越界数据,同时利用基础库函数中的一些更为安全的字符串处理函数来处理数据,也可以利用编译器或代码复查工具提供的检查功能来尽早发现可能会产生问题的程序。

2.3.2输入非法数据

恶意的攻击者会尝试在用户界面或接口中向系统输入恶意数据,以便期望绕过系统的安全限制,致使系统出甚至崩溃或其他非法目的,因此在编码时,须要对所有输入数据 (包括用户在界面中输入的数据和其他应用系统通过接口传递的数据)进行严格的合法性检查。

2.3.3SQL注入式攻击

 SQL 注入式(SQL Injection)攻击是一种典型的,因对输入数据不当处理而产生的非常严重的安全漏洞。其原因是基于数据库的应用程序中经常会使用动态 SQL 语句,而且在程序又没有对输入数据严格检查,致使攻击者能在界面层或接口层注入非法的 SQL 语句,从而非法访问和破坏数据、反向工程、甚至对服务器本身造成威胁。对于攻击者来说,SQL注入式攻击是一种简单有效的攻击方式,也是首选方式,尤其是在基于 Web的应用程序中,因此开发人员必须重点关注此问题。

预防 SQL注入式攻击的手段就是严格检查用户输入的数据,要使用基础系统提供的参数化查询接口,避免使用字符串来构造动态 SQL查询。同时对于数据库对象的访问权限进行严格限制,避免恶意 SQL语句破坏数据或系统。

2.3.4拒绝服务攻击

拒绝服务攻击(Denial of Services -DoS)是指通过大量并发访问,使得服务器的有限特定资源(如网络、处理器、内存等)接近枯竭,使得服务器或操作系统失效的攻击行为。

DoS攻击的一般方式有发送大量数据包造成网络阻塞、执行内存泄漏代码使得系统可用内存越来越少、执行大量消耗 CPU处理能力的代码、通过客户端发送大量的 HTTP请求造成巨量 Web点击以及 SYN Flood等。DoS 攻击虽然不会直接对服务器本身带来损坏,但它使得真正的合法用户无法访问系统,从而可能带来业务上的损失。除了 DoS之外,攻击者还可能利用数量庞大的攻击源发起 DDoS(Distributed DoS,分布式拒绝服务)攻击,其破坏和危害作用更大。

在编码时要注意防范可能的 DoS攻击,具体措施包括提高软件行为的可管理性、主动拒绝异常连接、自动锁定攻击源、提供实时监控界面,能够有效甄别攻击源、具有(异常)事件报警机制、具有审核日志等。通过这些主动或被动的防御手段,能够将 DoS/DDoS攻击行为带来的破坏和危害降到较低水平。

2.3.5敏感信息泄露

攻击者可能会通过暴力攻击、侦听、截取中间数据、反向工程、社会工程学(Social Engineering)等手段,获取访问凭据或机密信息,危及数据的私有性/安全性或者暴露敏感的商业数据,如用户名/口令、加密密钥、数据库连接串、商业敏感信息等。

因此在处理这些数据时,必须利用以密码技术为主的安全技术来进行强有力的机密性保护。在使用密码技术时,一般要利用公开的、经过广泛验证的可靠加密算法,同时加强密钥的管理和保护(具体参见密码算法指南和密钥管理规范)。

3、附则

本管理制度由XXXXX单位负责解释,自发布之日起实施。文章来源地址https://www.toymoban.com/news/detail-715693.html

到了这里,关于代码编写安全管理制度的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 固定资产制度怎么完善管理?

    固定资产管理制度的完善管理可以从以下几个方面入手: 建立完善的资产管理制度,可以及时掌握企业资产的信息状况,使资产管理更加明确,防止资产流失。 加大固定资产监管力度,从配置资产、使用资产到处置资产进行全过程监管,真实、完整地反映单位的资产和财务

    2024年02月10日
    浏览(55)
  • 配电室的管理制度及综合监控系统的介绍

    安科瑞虞佳豪 1、配电室全部机电设备,由配电室人员负责管理和值班,停送电由值班电工操作,非值班电工禁止操作,无关人员禁止进入配电室;公司内有关上级部门因检查工作,必须要进入这些场所时,应由工程主管或其指定人员陪同,并通知当值领班开门后进入,同时

    2024年02月08日
    浏览(46)
  • 计算机毕业论文选题推荐|软件工程|信息管理|数据分析|系列一

    计算机毕业论文选题推荐|软件工程|信息管理 (***语言)==使用其他任何编程语言 例如:基于(***语言)门窗账务管理系统的设计与实现 得到:基于JAVA门窗账务管理系统的设计与实现 基于vue门窗账务管理系统的设计与实现 等等 基于requests多线程的中图网图书数据采集系统

    2024年02月17日
    浏览(50)
  • Java版本spring cloud 工程管理系统软件 系统源代码 自主研发,工程行业适用

           Java版工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离 功能清单如下: 首页 工作台:待办工作、消息通知、预警信息,点击可进入相应的列表 项目进度图表:选择(总体或单个)项目显示1、项目进度图表  2、项目信息 施工地图:1、展示当前角色

    2024年02月06日
    浏览(53)
  • 第六章 6.1 施工安全生产许可证制度 6.2 施工安全生产责任和安全生产教育培训制度 6.3 施工现场安全防护制度

    国家对矿山企业,建筑施工企业和危险化学品、烟花爆竹、民用爆炸物品生产企业实行安全生产许可制度。 1.申请领取安全生产许可证的条件 建立、健全安全生产责任制,指定完备的安全生产规章制度和操作规程 保证本单位安全生产条件所需资金的投入 设置安全生产管理机

    2024年01月22日
    浏览(78)
  • Python结合MySQL数据库编写简单信息管理系统

    本项目主要是使用Python进行编写,利用Python中的pymysql库进行连接数据库,将信息存入MySQL数据库中,然后实现对信息进行增删改查等一系列操作。 (1):使用pymysql库 (2):python 3.9 (3):MySQL 8.0 创建数据库一个六个字段分如下: 使用本程序需要安装MySQL数据库并创建数据

    2024年02月06日
    浏览(87)
  • 安全保护制度

    第九条 计算机信息系统实行安全等级保护。安全等级的划分标准和安全等级保护的具体办法,由公安部会同有关部门制定。 第十条 计算机机房应当符合国家标准和国家有关规定。 在计算机机房附近施工,不得危害计算机信息系统的安全。 第十一条 进行国际联网的计算机信

    2024年02月21日
    浏览(38)
  • 算法安全监测制度技术保障措施、紧急措施

    在这个以数据和算法驱动的世界,算法的安全已成为了我们不可忽视的重要话题。随着算法应用领域的广泛涉及,算法安全不仅影响着个人信息和隐私保护,也关系到公共安全和社会稳定。因此,我们需要构建完善的算法安全监测制度,同时配备相应的技术保障措施和紧急应

    2024年02月04日
    浏览(43)
  • AI+软件工程:10倍提效!用ChatGPT编写系统功能文档

    系统功能文档是一种描述软件系统功能和操作方式的文档。它让开发团队、测试人员、项目管理者、客户和最终用户对系统行为有清晰、全面的了解。 通过ChatGPT,我们能让编写系统功能文档的效率提升10倍以上。 我们以线上商城系统为例,介绍如何使用ChatGPT帮我们完成系统

    2024年03月25日
    浏览(61)
  • 手把手教你用SQLServer连接Visual Studio2019并编写一个学生信息管理页面

    目录 安装SQLServer 创建新项目 建数据库建表 窗体设计 代码实现  整体效果 ​ 用SQLServer连接Visual Studio,首先需要下载SQLServer app。 下载教程,我之前写过,可以点击如下链接先下载安装SQLServer: SQL Server(express)安装教程 安装好SQL之后,打开VisualStudio2019,新建一个window项目 ,步

    2024年02月12日
    浏览(50)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包