咨询邮箱 咨询邮箱:service@yitianxinda.com 咨询热线 咨询热线:18101296137 微博 微信
软件公司如何快速有效地识别软件漏洞_北京软件开发公司
发表日期:2023-06-14 15:47:03    文章编辑:北京软件开发    浏览次数:
对于软件开发公司来说几乎每个新程序代码都有错误,在最坏的情况下,这些错误可能会危及安全性。为了快速有效地检测它们,德国波鸿鲁尔大学 Horst Görtz IT 安全研究所的研究人员开发了一种名为 Fuzzware 的软件开发检测系统。它专门分析嵌入式系统,即可以在智能灯泡、智能恒温器和工业控制系统中找到的微型计算机,仅举几例。鲁尔大学的科学杂志《 鲁宾》发表了一篇关于他们工作的文章。
波鸿博士 学生 Tobias Scharnowski 在 Thorsten Holz 教授的指导下于 2022 年 8 月在美国举行的第 31 届 Usenix 安全研讨会上介绍了研究结果。他与加州大学圣巴巴拉分校和阿姆斯特丹自由大学的同事合作开展了这项研究。
故意让软件崩溃
该小组使用所谓的模糊测试来检测软件开发代码中的错误。Fuzzers 是一种算法,它向被测试的软件提供随机输入,并检查它们是否会使应用程序崩溃。这种崩溃表明编程错误。模糊器不断改变输入,以便逐步探索尽可能多的程序组件。
某些应用领域已经建立了模糊测试,例如测试 Windows 或 Linux 等操作系统。然而,它尚未被广泛用于测试嵌入式系统,因为它们带来了许多挑战:软件(即所谓的固件)嵌入到与其交互的硬件中。系统通常具有相对较少的内存和较慢的处理器。如果研究人员想直接在系统上进行模糊测试,这就是一个问题。尝试所有可能的输入并等待系统响应将花费太长时间。
硬件虚拟仿真
这就是团队不直接在工业控制单元或灯泡中分析固件的原因。相反,他们虚拟地重新创建硬件——这个过程称为仿真。仿真器使固件相信它在真实设备中。为此,它必须以与真实硬件完全相同的方式与程序交互。
为了加速该过程,研究人员通过缩小可能的输入范围,在模糊测试过程中增加了另一个步骤。首先,它们对输入必须位于其中的框架进行建模,以便对固件具有逻辑性。例如:如果硬件是带有温度传感器的冰箱,则冰箱硬件可以将测量到的温度报告给冰箱的软件,即它的固件。实际上,任何给定的温度都不可能发生,它必须落在某个范围内。因此,固件仅针对特定温度范围进行编程。它根本无法处理其他值,因此无需对它们进行模糊测试。
有限的输入有助于高效分析
波鸿团队与来自圣巴巴拉和阿姆斯特丹的同事一起,使用 Fuzzware 测试了 77 个固件。与传统的模糊测试方法相比,他们筛选出了高达 95.5% 的所有可能输入。
这使得 Fuzzware 能够在相同时间内检查比传统方法多三倍的程序代码。在此过程中,该小组还发现了其他模糊测试方法未检测到的其他漏洞。
相关文章推荐
物联网 ( IoT ) 概念首次出现时,曾有大胆预测称,到 2020 年,物联网连接设备数量将达到 500 亿甚至数万亿。这些极高的估值引发了炒作,但最终被证明...
下一代工业进步被称为工业4.0,旨在将传统行业(如自动化)互联互通并实现计算机化。工业4.0的目标是使工厂变得更加智能,提高适应性和资源效率,以及改善工厂之间供...
企业需要强大且可靠的在线形象才能取得成功。Magento 已成为领先的电子商务平台,为各种规模的企业提供强大的功能和定制选项。对于希望通过基于 Magento ...
近几年最大的发展趋势之一是移动应用程序加密。正如我们最近所写,主要的消息应用程序正在朝着为用户提供端到端加密默认设置的方向发展——这是有充分理由的。随着公众开始...
通过与北京软件公司​合作,企业可以获得所需的熟练开发人员,以加速创新和发展。北京软件公司 可以通过提供成熟的开发人员和定制解决方案来帮助企业弥补开发人员短缺的差距并实现业务增长。...
企业级软件或应用程序已经发展到几乎所有组织和企业都依赖它来保持市场竞争力的程度。无论您是需要跟踪捐赠者的非营利组织还是寻求更好的库存管理的汽车经销商,都没关系。移动企业应用程序为公司提供了前所未有的灵活性和功能。...
北京软件开发公司百家争鸣2016热门运动软件...
条件提供合 资源起源:其它 4)具有近三年完成在3个(含)以上同等界限的告捷案例,对“中国工商银行股份无限公司软件征战重心北京研 3)具有ISO9000质量认证体系书;具有国度质量...
北京软件开发软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架。软件开发包括需求、设计、编码和测试等阶段,有时也包括维护阶段。软件开发模型能...
北京软件开发公司开发HTML5默认:谷歌的计划让Chrome的Flash点击即可播放...
ISV以及较终用户处对整个产品做详尽的测试。 *发货准备 为批量临蓐准备发表末了的"金盘"与文档 象OEM。 * 外部测试 公司内在的"β"测试点,监视从顾客获得的音讯反应。开发员实行...
无论是ios还是android APP开发,社交软件在应用市场上都占据大半个江山。如此庞大的社交应用群,让研发社交应用的app开发公司甚至是用户,都难免有些无从下手。对app开发公司而言,让...

Baidu
map