质量检查中的模糊测试:查找以前未发现的安全漏洞模糊测试是基本的软件安全测试模糊测试的目的是进行详尽的分析,并发现应用程序,文件和硬件中的新漏洞和未知漏洞。真正的模糊测试不适用于一组预先设计的测试用例,寻找某些攻击特征或试图查找产品中的已知漏洞。 在开发过程中(质量保证阶段)使用模糊测试来自动发现产品中存在的安全漏洞,从而使开发人员可以在产品出厂之前修复这些漏洞。为了在企业中使用,模糊器必须是一种自动化工具,它可以对输入组合进行详尽的搜索以测试弱点。对于复杂的产品,涵盖所有输入组合是不切实际的。因此,模糊测试必须基于优先级排序算法,以便将重点放在可能“触发”安全漏洞的输入上。 尽管任何给定应用程序都有几乎无限数量的可能输入,但是可以隔离可能导致安全漏洞暴露的某些输入。这就是安全研究人员所做的。但是,这是一个昂贵的过程,需要专业知识和时间。即使有资金,开发人员也没有时间。但是,如果开发者不这样做,那么一些拥有大量时间的精明黑客将为发现此类安全漏洞而来的名声和荣誉感到困惑。 自动进行绒毛测试并消除对安全专家的需求,对于标准化产品开发的安全检查阶段至关重要。 模糊目标显然需要企业级模糊工具。开发人员必须在发布之前应用该技术-因为可以肯定的是,许多人将在发布之后在产品上使用它们。 发布前的模糊测试至关重要,因为应用程序开发人员不是编写可抵御恶意意图的安全代码的专家。有数百个脚本的目的是打破现有应用程序带来的安全障碍。这造成了供应商现在必须定期检查其产品是否可能受到攻击的情况。 自动模糊测试取代了手动测试每天扫描约八百行代码的安全专家评估大约有一百万行代码的应用程序需要500天的时间。这可能要花费数十万美元。每当产品的新版本问世时,都需要重复此过程,一年可能要多次。显然需要将其自动化的模糊测试工具。 由于时间限制,许多供应商在进行适当的安全审核之前都会发布其产品,从而使他们的客户面临潜在的漏洞。对于现在要求供应商在部署或购买之前对其产品进行安全测试的客户而言,这已变得无法接受。 在产品交付后发现安全漏洞时,就会出现一个主要问题-供应商有责任在现场解决问题而不会损坏客户的系统。但是每天都会发现漏洞。随着黑客越来越善于发现漏洞,并且漏洞数量稳步增加,客户这一方面的意识增强将不可避免地导致他们要求供应商产品提供更高的安全标准。 总而言之,需要一种自动的模糊测试工具,该工具可以提供有关多种协议的不同类型漏洞的详细信息。该工具将执行产品审核,通过对所有可能的组合进行全面测试来发现已知和以前未知的漏洞,并确定优先级。所有这些,无需消耗过多的时间或资源。 这是beSTORM输入图片的地方。 模糊测试,功能描述模糊测试,也称为黑盒测试或动态应用程序安全测试(DAST),由于开发人员通常不支持该工具并且其设计目的单一,因此它一直很缓慢地被开发人员采用。 为了与应用程序,文件或硬件交互,模糊器将需要说出其使用的语言。该语言是协议。在许多情况下,可能已经创建了一个模糊器来测试单个协议。Beyond Security的beSTORM使用模块来执行此操作。这些模块根据已知协议标准(例如HTTP,FTP,SMTP,IMAP,POP3,DNS,DHCP或VOIP)进行编程。已编程了200多个模块,以适应几乎所有协议。 使用这些模块有两个主要好处:首先,它简化了测试每个新产品所需的调整。例如,大多数网络设备使用HTTP。无论网络设备是使用已知的Web服务器进行HTTP通信,还是程序员从头开始开发HTTP兼容应用程序,都可以使用同一模块进行模糊测试。 其次,模糊测试模块有助于量化产品的安全级别。通过系统地检查应用程序,我们可以通过衡量与同类产品相比的检查次数来表明某种产品的真正安全性。与当今的手动和容易出错的评估相反,这可以根据客观和自动的缩放比例对产品进行实际的安全认证。 典型的模糊应用根据目标应用程序使用的协议,选择正确的模块。然后,用户将设置beSTORM来监视目标并提供攻击所需的详细信息:IP地址和端口(如果攻击是在远程计算机上)。攻击可以暂停并恢复。状态栏指示当前正在执行的测试以及已完成攻击的百分比。 全面手动测试可能揭示的大多数漏洞通常是在测试的前24小时内发现的。完整的测试预计需要几天到几周的时间,具体取决于应用程序的大小和复杂性以及可用的处理能力。分布式功能可以通过在多台计算机之间共享任务来大大缩短时间。无论如何,模糊测试是完全自动化的,不需要人工干预。
|
上海望驰安防科技有限公司
地址:上海市浦东灵山路958号5号楼2楼
手机:18049824972
电话:021-50150593
邮箱: anying.ao@ruitde.com