0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

您的代码有多容易受到攻击

星星科技指导员 来源:嵌入式计算设计 作者:Jay Thomas 2022-10-20 11:50 次阅读

在编写代码时,大多数人都知道他们在做什么 - 至少在当时 - 但以后会有多清楚,以及其他人如何理解它?是否过于复杂?它是否遵循规定的编码标准?是否有微妙的错误可能使其容易受到黑客攻击?除非你检查,否则你不知道,这意味着静态分析。

软件质量的基础(通常需要资格认证或认证)是静态分析:对源代码的解析和检查。静态分析提供了对代码编写情况的深刻见解,特别是参考质量指标和遵守编码标准;它为进一步的评估提供了基础,包括控制和数据流分析以及结构覆盖分析;它为工件提供了基础,这些工件既是可接受的认证文件,也是质量的有形证据。

静态分析在源代码级别工作,方法是像编译器一样解析代码,同时识别与控制和数据流相关的信息,例如条件分支的下落。它整理的数据为指标提供了基础,这些指标可帮助开发人员更好地了解正在开发的代码的清晰度、复杂性甚至可测试性。在最简单的形式中,它可以标记看似微小的事情,例如拼写错误,这些事情可能会导致数小时的延迟,然后才被发现。更复杂的静态分析工具还可以计算诸如循环复杂性之类的指标,循环复杂度是通过程序或代码段的唯一路径数的度量,例如可能由过高的循环密度(嵌套在循环中的条件数)导致的。静态分析工具可以为程序的不同部分提供密度分数,可以指导开发人员提供更简单,更清晰的路径。这也带来了更好的可理解性和改进的可测试性。

静态分析的另一个功能是确保符合编码标准,无论是行业定义的、用户定义的还是两者的组合。MISRA C、CERT C、CWE 等标准源自开发安全可靠的软件的研究和行业最佳实践。静态分析提供保护,防止在某些情况下可能导致问题的细微错误和疏忽,例如最近因未检查变量长度而导致的臭名昭着的“心脏出血”漏洞。许多行业功能安全标准,如汽车行业的ISO 26262和医疗设备的IEC 62304,也要求通过静态分析进行检查,确保(例如)没有隐藏的数据流,也没有为了代码质量和安全性而无条件的跳跃。

静态分析有助于“映射”未来分析

静态分析为代码系统开发了一种“大脑图谱”,可以用作动态分析技术的基础,例如详细的结构覆盖分析以及自动化单元和集成测试。反过来,这些生成自己的相关指标,以加强高质量开发过程的证据。这些测试及其生成的工件与需求可追溯性工具结合使用,通过将功能、安全性和安保要求链接到代码、分析结果以及测试用例和结果,建立了透明的开发生命周期。实际上,这种双向可追溯性不仅为忠实和完整地实施要求提供了证据。它还支持对整个生命周期中发生的需求更改或失败测试的影响分析,突出显示受影响的软件系统的所有部分,从而突出显示需要重复的任何分析和测试。

静态分析数据提供额外的好处

静态分析对单元测试的有用性始于对代码结构的理解。通过静态分析,可以分析应用程序的数据和控制方面,理解接口,并推导出测试用例工具的基础。这些线束对于与需求相关的测试非常宝贵,可节省时间和费用。

从这个派生的数据集中,还可以自动生成测试用例本身来执行大部分代码,并通过结构覆盖率分析提供证据。这些自动生成的测试提供了一种理想的机制来增强基于需求的测试,以得出一组强大的测试用例,这些用例可以满足功能、安全和安保要求。同样,需求可追溯性可以从需求链接到验证软件组件和验证应用程序的测试用例。

在整个软件开发生命周期中使用静态分析时,可以防止潜在错误持续到需要更多的精力和费用来纠正的程度。来自静态分析的数据和依赖它的分析工具对于制作越来越多的政府和工业组织认证所需的测试证明和文档至关重要。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 源代码
    +关注

    关注

    96

    文章

    2944

    浏览量

    66670
  • 编译器
    +关注

    关注

    1

    文章

    1618

    浏览量

    49052
收藏 人收藏

    评论

    相关推荐

    美国IP服务器和美国服务器什么区别

    美国IP服务器和美国服务器什么区别 美国IP服务器和美国服务器在概念、功能以及应用场景上存在明显的区别。主机推荐小编为
    的头像 发表于 11-11 10:22 132次阅读

    租用ip云服务器可以带来哪些好处?应用场景哪些?

    。 2、避免共享ip风险: 在共享ip环境中,如果同一IP下的其他网站受到攻击或被搜索引擎惩罚,可能会影响你的网站。使用独立的ip地址可以降低这种风险。 3、提高安全性: 独立的ip地址可以减少遭受DDoS攻击和其他网络
    的头像 发表于 11-04 11:33 128次阅读

    恒讯科技分析:海外服务器被攻击需要采取哪些预防措施?

    在网络上上线时,它就容易受到威胁,老实说,企业必须预防而不是治疗。防病毒是针对的服务器的一种可治愈的治疗方法,表明威胁已经进入的系统。
    的头像 发表于 10-23 15:08 116次阅读
    恒讯科技分析:海外服务器被<b class='flag-5'>攻击</b>需要采取哪些预防措施?

    ESP8266 SDK 2.1.0是否受到KRACK的影响?

    ESP8266 SDK 2.1.0 是否受到 KRACK(WPA2 攻击)的影响?攻击会将 WPA2 加密密钥更改为 null。由于二进制库,我找不到任何线索。
    发表于 07-11 06:34

    DDoS哪些攻击手段?

    DDoS的攻击方式很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。单一的DoS攻击一般是采用一对一方式的,当
    的头像 发表于 06-14 15:07 390次阅读

    使用NB模组做开发,模组容易受到影响导致异常复位怎么解决?

    使用NB模组做开发,用MCU配置三极管导通关闭来控制模组复位。实际使用发现Reset容易受到外界干扰和天线射频影响从而导致复位。
    发表于 06-04 06:51

    贴片电容为什么容易受到温度的影响?

    贴片电容容易受到温度影响的原因可以从多个方面来分析:        首先,从贴片电容的材质和结构来看,其内部通常包含由镍、铁、铜等一系列化学固性较差的金属元素组成的电极,而外层则覆盖有柔软的抗绝缘
    的头像 发表于 05-20 14:30 628次阅读
    贴片电容为什么<b class='flag-5'>容易</b><b class='flag-5'>受到</b>温度的影响?

    “五一假期将至:的企业网络准备好抵御黑客攻击了吗?”

    时机发起攻击,因为企业内部可能没有人及时发现和应对,导致病毒爆发。 远程工作增加:在节假日中,部分员工可能选择远程办公,这增加了企业的网络安全风险。远程连接相对而言不够安全,容易成为攻击的入口。 假期主题的钓鱼
    的头像 发表于 04-26 17:46 573次阅读

    MotorControl Workbench生成的代码是开环的吗,为什么电机跑起来很容易受到外力导致停机?

    请问各位高手 MotorControl Workbench 生成的代码是开环的吗?为什么我的电机跑起来很容易受到外力导致停机,我想让它不停机,请问什么好的办法吗 ?
    发表于 03-21 07:12

    随机通信下智能体系统的干扰攻击影响研究

    网络控制系统可能会受到不同类型的网络攻击威胁[10-12],主要包括拒绝服务(denial of service, DoS)攻击[7]、欺骗攻击[8]、干扰
    发表于 03-01 11:00 502次阅读
    随机通信下<b class='flag-5'>多</b>智能体系统的干扰<b class='flag-5'>攻击</b>影响研究

    传感器容易受到干扰,该怎么处理?哪些办法?

    模拟传感器容易受到干扰,该怎么处理?哪些办法? 传感器是现代科技应用中不可或缺的部分,它们通过感知环境中的物理量并将其转换为可用的电信号。然而,传感器容易
    的头像 发表于 01-15 14:43 3919次阅读

    DDoS攻击的多种方式

    方的,这类攻击称为分布式拒绝服务攻击,其中的攻击者可以多个。DDOS攻击以下几种方式。 SY
    的头像 发表于 01-12 16:17 577次阅读

    单圈和多圈绝对值编码器哪个容易受到断电的影响呢?

    在断电情况下,单圈绝对值编码器相比多圈绝对值编码器更容易受到影响。
    的头像 发表于 01-09 09:07 638次阅读

    【虹科干货】Linux越来越容易受到攻击,怎么防御?

    随着网络攻击手段的不断进化,传统的安全机制(如基于签名的防病毒程序和机器学习防御)已不足以应对高级网络攻击。本文探讨了Linux服务器的安全漏洞,特别是针对企业和云服务的威胁,并提出了基于移动目标防御技术的解决方案,旨在提高Linux服务器在不断变化的威胁环境中的安全性和
    的头像 发表于 12-25 15:33 449次阅读
    【虹科干货】Linux越来越<b class='flag-5'>容易</b><b class='flag-5'>受到</b><b class='flag-5'>攻击</b>,怎么防御?

    Linux越来越容易受到攻击,怎么防御?

    在数字化时代,网络安全已成为企业不可忽视的重要议题。尤其是对于依赖Linux服务器的组织,面对日益复杂的网络攻击,传统安全措施已显不足。Linux服务器面临着哪些新型网络威胁,哪些有效的防御策略呢
    的头像 发表于 12-23 08:04 1057次阅读
    Linux越来越<b class='flag-5'>容易</b><b class='flag-5'>受到</b><b class='flag-5'>攻击</b>,怎么防御?