关于Fuzzer:黑匣子,安全测试工具模糊测试软件安全性与大多数动态应用程序安全测试工具不同,模糊器不查找某些攻击特征或尝试查找产品中的已知漏洞,而是提供尽可能广泛的意外输入,以发现网络产品中的新漏洞和未知漏洞。 在开发过程中(质量检查阶段)使用模糊测试来自动发现产品中仍然存在的安全漏洞,从而使开发人员可以在产品出厂前修复这些漏洞,或者将其用作测试应用程序和产品的产品认证解决方案。设备验收前。 Beyond Security的beSTORM是一个自动化的模糊测试工具,可对其进行编程以详尽搜索所有可能的输入组合,以测试产品的细微之处,即使它们可能是细微的。当然,对于任何非平凡的产品,尝试覆盖程序的所有理论输入组合实际上是不可能的。因此,beSTORM配备了优先级排序算法,可以在合理的时间范围内完全覆盖所有可能“触发”安全漏洞的输入。 这些算法源于Beyond Security的经验和知识,该知识和知识是在进行手动产品审核以发现安全漏洞的过程中积累的,也是公司14年研究记录SecuriTeam.com上发布的15,500个安全漏洞的最大研究之一-最大的安全漏洞之一Internet上的安全数据库。 从我们的研究中可以得出结论,尽管对任何给定应用程序而言,可能输入的数量几乎是无限的,但是通常有可能隔离某些可能导致安全漏洞暴露的输入。这就是大多数领先的安全研究人员(包括我们)通过覆盖此应用程序输入空间来发现产品中的安全漏洞的方式。但是,这是一个非常昂贵的过程,需要专业知识和大量时间。主要问题是,尽管软件开发公司可能不想花费大量的时间和精力来发现此类安全漏洞,但一个聪明的16岁孩子却有很多时间在手,还有一个免费的模糊工具通过此过程获得了发现此类安全漏洞所带来的名声和荣耀。 通过自动执行此过程,并消除了运行该工具时对安全专家的需求,beSTORM模糊器使产品开发的安全检查阶段标准化。 模糊目标信息安全行业显然需要安全测试工具,这些工具可以及早发现可能允许未经授权的入侵的产品漏洞。 当今软件市场上最常见的问题之一是黑客为破坏应用程序的安全保护所做的无数尝试。每一天,都会发现并发布新的漏洞。这些漏洞造成的损害是广泛的,包括对供应商形象的损害;因劳动力被转移去处理其他问题而造成的经济损失;由存储在应用程序中的特权信息造成的第三方损害,损害了组织的利益。直接损失可能在数十万美元之内,间接损失可能在数百万美元之内,这取决于所暴露信息的敏感性。 造成安全漏洞的一个原因是,应用程序开发人员不是编写安全代码的专家,这些安全代码可以抵抗黑客,而且质量检查部门无法维护一系列经常不受支持的协议模糊处理程序。 黑客编写的数百个模糊测试器的目的是破坏应用程序。开发人员不得不购买和部署许多不受支持的工具,以检查其产品是否受到攻击。随着将更多行写入到应用程序中,此测试变得费力且费时。 让我们来看一个中等大小的应用程序,该应用程序具有大约一百万行代码。每天扫描超过八百行代码以检测漏洞的安全专家将花费五百天来对代码进行完整的评估。据估计,这里的街价为一百万美元的四分之一。安全专家的职责不仅包括发现已知的安全漏洞,而且还包括识别以前未知的新安全漏洞。此外,每当产品的新版本问世时,都需要重复此过程,这可能一年一次。 为了节省分配给检测和随后修复安全漏洞的公司资源,显然需要一种企业模糊处理程序,它将在将每个应用程序发布到市场之前测试每个应用程序的漏洞防护级别。 由于测试产品中的安全漏洞所导致的时间限制,许多供应商在进行适当的安全审核之前都会发布其产品,从而使客户面临潜在的漏洞。这对于客户来说已变得无法接受,并且他们已经提高了对供应商在购买前对其产品进行至少一些安全测试的要求。 在客户购买产品并发现安全漏洞的情况下,会出现两个主要问题-供应商有责任解决此问题,还必须向其客户提供适当的方法来保护自己免受漏洞的侵害。客户通常会联系供应商,并要求供应商提供适当的解决方案以保护客户免受攻击。如上所述,每天都会发现这些类型的漏洞。随着黑客越来越善于发现漏洞,并且漏洞数量稳步增加,客户这一方面的意识增强将不可避免地导致他们要求供应商产品提供更高的安全标准。 总而言之,显然需要一种自动化的审计工具,即模糊器,该工具可提供有关普通程序员当前无法获得的有关不同类型漏洞的详细信息。该工具将执行产品审核,通过对所有可能的组合进行全面测试来发现已知和以前未知的漏洞,并确定优先级。所有这些,无需消耗过多的工时或任何其他伴随资源。 这是beSTORM模糊器输入图片的地方。
功能模糊器工具说明为了与应用程序交互,beSTORM模糊器将需要“说出”应用程序期望的“语言”。该语言是网络协议。 beSTORM提供了200多个特殊的测试模块来执行此操作。这些模块根据已知协议标准(HTTP,FTP,SMTP,IMAP,POP3,DNS,DHCP,VOIP)进行编程。可以根据要求对更多模块进行编程,以适应被测产品的特定需求。 beSTORM模块既支持非交互协议(例如HTTP,可能是任何Internet环境中最常见的协议; Web服务器,通信产品和许多其他协议使用),也支持交互协议,例如SMTP(由邮件服务器使用,内容过滤设备和防病毒网关)。 使用这些模块有两个主要好处: 首先,由于协议标准允许构建beSTORM模糊器模块,该模块适用于所有HTTP兼容产品,因此简化了测试现成产品所需的调整。 例如,大多数网络设备使用HTTP进行配置,以允许客户使用标准的Web浏览器来配置设备。无论网络设备是使用已知的Web服务器进行HTTP通信,还是程序员从头开发了HTTP兼容应用程序,都可以使用相同的beSTORM模块进行测试。但是请注意,使用HTTP协议的事实并不意味着相关的beSTORM模块不会尝试在HTTP协议“外部”进行攻击-违反标准时会出现许多安全漏洞,并且beSTORM会尝试查找这些漏洞。协议的定义仅意味着beSTORM将首先专注于发现基于HTTP的漏洞。 其次,它有助于量化产品的安全级别。通过系统地检查应用程序,我们可以通过衡量与同类产品相比的检查次数来表明某种产品的真正安全性。与当今的手动和容易出错的评估相反,这可以根据客观和自动的缩放比例对产品进行实际的安全认证。 典型的beSTORM用户将基于要检查的应用程序,使用特定模块运行beSTORM。 然后,用户将设置beSTORM来监视正在审核的应用程序,并提供攻击的必要详细信息:IP地址和端口(如果攻击是在远程计算机上)以及所使用的协议。 攻击可以开始和停止,也可以暂停和继续。状态栏指示当前正在执行的测试以及已完成攻击的百分比。 模糊工具的性能预计beSTORM将在手动测试的前24小时内找到手动测试将发现的大多数漏洞。完整的测试预计需要几天到几个月的时间-取决于应用程序的大小和复杂性。分布式功能可以通过在多台计算机之间共享任务来大大缩短时间。无论如何,测试是完全自动化的,不需要人工干预。 技术指标
模糊器案例研究在开发beSTORM的过程中,Beyond Security通过不断获取供应商提供的产品并针对它们运行beSTORM,来确保模糊测试达到了预期目标。在这13个产品的列表中,每个产品都有至少一个安全漏洞,促使供应商发布补丁程序以防止其客户容易受到发现的问题的影响。
|
上海望驰安防科技有限公司
地址:上海市浦东灵山路958号5号楼2楼
手机:18049824972
电话:021-50150593
邮箱: anying.ao@ruitde.com