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

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

3天内不再提示

新思科技使用智能模糊测试工具Defensics检测到D-Link的行为漏洞

西西 作者:厂商供稿 2018-11-30 18:10 次阅读

作者: 新思科技首席安全专家Tuomo Untinen

新思科技在早前发现D-Link DIR-850存在漏洞。此漏洞允许未经过身份验证的用户加入路由器提供的无线网络。一旦加入该网络,用户就可以访问该网络上任何其他用户可用的所有服务、计算机和设备。未经授权访问网络通常是更广泛攻击的第一步。

作为Defensics SafeGuard开发的一部分,我们发现了D-Link DIR-850L无线AC路由器(硬件修订版本A)中的漏洞。该漏洞使攻击者无需提供凭据即可完全访问无线网络。我们的方法在接入点连接期间跳过关键步骤,完全绕过加密。

在确定此漏洞后,新思科技继续与芬兰国家网络安全中心(NCSC-FI)协调披露事宜,编号为CVE-2018-18907。我们与D-Link合作重现了这个漏洞问题。在2018年11月6日,D-Link已经为受影响的设备提供了修复方案。

WPA2是用于客户端和接入点(AP)之间的WLAN网络通信的加密技术。为了相互连接,AP和客户端都需要知道预共享密钥(PSK),它们在WPA握手过程中交换,随后在它们之间打开加密通道。

通常,破坏WPA2加密需要在AP和客户端(也称为请求者)上执行无线捕获,其中握手过程完全可见,或者仅从AP获取对偶主密钥标识符(PMKID)。完成此操作后,您将获得强制WPA2 PSK所需的所有信息。获取PSK所需的时间取决于硬件和PSK长度。但有时候通过WPA2加密需要一点运气,这往往不到一秒钟。

办公室日常工作

2018年8月初,我正在为新思科技的Defensics解决方案完成新版本的测试套件,该解决方案为各种协议提供模糊测试。模糊测试是一种测试方法,测试工具发送格式错误的输入以发现软件中潜在的安全漏洞。这种包含意外或无效数据的格式错误的输入称为异常测试用例。

我最后添加到测试套件中的信息包括一些新的异常测试用例和SafeGuard结果。 SafeGuard是一项专利功能,允许Defensics识别违反规范或最佳实践的情况 —— 例如,当被测系统(SUT)选择弱加密方案时,或者以明文形式发送身份验证凭据时。

SafeGuard与模糊测试有何不同?

新版本的Defensics 802.11测试套件包含两项重要改进。

第一,WPA2握手后数据帧的WPA2加密。之前的版本仅计算会话的临时密钥,而且可以将此信息写入文件。这允许测试人员验证Defensics和SUT都具有相同的临时密钥。但是发送加密数据帧会自动测试正确的密钥,因为两端的加密和解密需要知道密钥。

第二个改进是在IPv4上简单的动态主机设置协议(DHCP)发现报文序列。此DHCP序列验证SUT是否接收数据帧并检查响应。由于DHCP本身非常复杂,我首先在没有加密的情况下实现它,并且在DHCP序列工作之后,在测试中添加了WPA2 AES CCMP加密。

测试发现

我当时正在为WPA1添加一个弱加密SafeGuard,因为已知WPA1有弱点而且不应该使用。 WEP加密也是如此:它不应该再被使用了。 Defensics 802.11测试套件那时具有弱加密检测功能,我运行了几个案例来测试它,正巧我桌面上有AP,即D-Link DIR-850L。我以为会检测到弱加密,因为我已经将SUT AP配置为拥有WPA1而没有其它任何设置。

正如我所预测的一样,Defensics正确地检测到弱加密。但是AP接受了没有WPA加密的DHCP发现序列。此特定测试用例本应经过协商以使用WPA1加密,但它不包含实际加密:DHCP发现序列以明文形式发送给AP。我对此测试结果感到惊讶,因为路由器应该需要WPA1加密。然后我使用Wireshark,一种捕获无线数据帧的工具,重新运行测试用例并检查结果。

在结果中,我看到了AP给Defensics提供的IP地址、路由器IP地址、租用时间等。发现序列再次以明文发送。然后我将加密从WPA1更改为WPA2,看看是否会对SUT行为产生影响。同样,发现序列仍以明文形式发送,因此这出现了问题。 AP还支持WPA Enterprise,并且在该模式下的测试没有改变行为 - 序列仍以明文形式发送。

分析

当然,下一个问题是发生了什么,为什么呢?连接到AP分两个阶段完成。首先,客户端和AP就连接参数和要使用的加密达成一致;其次,执行所谓的WPA握手或四次握手,交换加密参数并确保它们都具有PSK。在此之后,他们打开加密数据连接。但是,我运行的测试用例跳过了WPA握手,因此必须在握手之前发生什么,AP和客户端就连接参数和使用的加密达成一致。

第一阶段包括探测请求和响应、身份验证请求和响应,最后是关联请求和响应。探测请求的主要目的只是发现AP。然后,探测响应包含有关AP的所有信息,包括支持哪种加密。

下一个请求 - 响应对是身份验证,其目的是确保向后兼容性。接下来是关联请求和响应。在关联请求中,客户端告诉AP哪个是它想要的加密以及使用哪些参数。关联请求还会打开AP和客户端之间的数据连接。

我运行的测试用例有一个正常的探测请求和身份验证请求。然后,关联请求需要客户端支持WPA1加密。此时,WPA握手应该发生,但由于我的测试用例跳过了握手,AP和客户端开始发送没有任何加密的数据帧。

漏洞利用

从没有凭据的受保护网络获取IP地址已经是件坏事,但是还会更糟糕吗?我决定为此漏洞创建漏洞利用程序。我的想法是创建一个自定义版本的wpa_supplicant(Linux操作系统中的默认WLAN客户端)。

首先,我尝试修改wpa_supplicant,以便它只是忽略WPA握手,但事实证明这非常困难。检查太多,无法确保WPA状态机处于正确状态。这证实我试图做的事情并不常见。我尝试的下一件事是在没有加密的情况下建立连接,但修改包含加密参数的关联消息。这与Defensics测试套件在测试用例中所做的一样。我只需要删除一些未经协商的加密参数检查,就可以建立连接。

对新思科技的Defensics智能模糊测试有疑问?我们给您答案

我有一个wpa_supplicant的修改版本,它提供了网络接口上的完整Linux IP堆栈。首先,我尝试连接到AP管理面板。虽然连接了,但是我注意到在路由器接到流氓客户端之前,路由器接受了普通数据帧时,有三到六秒的窗口。然而,wpa_supplicant自动重新连接,我的开发继续进行。实际上,重新连接速度非常快,即使传输控制协议(TCP)连接仍保持打开状态。

此外,我还连接了另外两台设备,一台是有线的,一台是通过WLAN连接的。从流氓客户端,我可以毫无费劲地连接两个设备。从路由器管理面板,我看到恶意客户端被识别为连接到路由器的任何其它客户端。因此,利用此漏洞,我可以在不知道预共享密钥的情况下完全访问网络。我不需要做任何耗时的暴力破解 - 我只是连接到网络。

总结

Defensics 802.11测试套件现在可以识别绕过整个WPA加密机制的情况。测试套件现在包含一个单独的SafeGuard功能来测试此漏洞,如果它检测到WPA加密被绕过,则测试将显示失败。因此,针对其AP运行Defensics模糊测试的供应商将意识到此漏洞。测试的D-Link设备是随机选择的,D-Link已经发布了该设备的补丁。

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

    关注

    2

    文章

    652

    浏览量

    73007
  • 新思科技
    +关注

    关注

    5

    文章

    787

    浏览量

    50302
  • D-Link
    +关注

    关注

    0

    文章

    11

    浏览量

    18309
收藏 人收藏

    评论

    相关推荐

    嵌入软件单元/集成测试工具专业分析

    引言 在现代软件开发过程中,单元测试作为确保代码质量的重要环节,得到了广泛的关注和应用。随着嵌入式系统的复杂性日益增加,对高效、可靠的单元测试工具的需求也愈加迫切。WinAMS作为一款专为嵌入
    的头像 发表于 11-19 16:41 102次阅读

    CAN总线测试工具选择与使用

    1. CAN分析仪 CAN分析仪是一种高级的测试工具,能够实时捕获和分析CAN总线上的数据。它们通常具备以下功能: 数据捕获和存储 实时数据显示 信号诊断和错误检测 网络参数配置 模拟CAN消息发送 2. CAN接口卡 CAN接口卡是一种硬件设备,安装在计算机上
    的头像 发表于 11-12 10:16 180次阅读

    新品发布 | 多通道车载以太网仿真测试工具

    新品发布Newproductsrelease随着汽车电子技术的快速发展,车载以太网仿真测试工具在汽车行业中的应用广泛且重要,它们主要用于测试、验证和优化车载以太网系统的性能、可靠性和兼容性。同星智能
    的头像 发表于 07-27 08:21 835次阅读
    新品发布 | 多通道车载以太网仿真<b class='flag-5'>测试工具</b>

    CAN总线测试工具的主要功能

    和分析CAN帧: CAN测试工具能够捕获CAN总线上的CAN帧,并进行详细的分析。 这包括检测报文、过滤报文、发送报文等。 常见的工具如Canalyser、Canoe、Canalyzer等,都具备这一
    的头像 发表于 06-25 16:02 988次阅读

    电路板检测工具都有什么

    电路板检测工具可以分为以下几类: 视觉检测工具:通过图像处理技术检测电路板上的缺陷和异常。 电气性能测试工具测试电路板的电气性能,如电阻
    的头像 发表于 05-29 14:20 2182次阅读

    CYW43455使用装有ImmortalWrt 23.05.1固件的D-Link DIR-842 C1时,无法连接是怎么回事?

    23.05.1 固件(WPA3)的 D-Link DIR-842 C1 时,却无法连接。 是否有人使用过 CYW43455 设备连接 ImmortalWrt 设置 AP? 或者 CYW43455 能否与不朽系统通信?
    发表于 05-23 07:42

    工具工具——映射与调度、模拟与验证、开发与测试工具

    本篇文章将重点介绍工具链的工具相关知识,我们将从工具链的基本概念出发,重点介绍工具链中的映射和调度工具、模拟与验证
    的头像 发表于 05-16 14:30 2464次阅读
    <b class='flag-5'>工具</b>链<b class='flag-5'>工具</b>——映射与调度、模拟与验证、开发与<b class='flag-5'>测试工具</b>

    嵌入软件单元测试工具的作用

    嵌入软件单元测试工具是现代软件开发过程中不可或缺的一环。它的作用在于帮助开发人员对软件中的各个单元进行测试,以确保其功能的正确性和稳定性。单元测试是软件开发过程中的一种测试方法,通过对
    的头像 发表于 04-23 15:31 404次阅读
    嵌入软件单元<b class='flag-5'>测试工具</b>的作用

    DEKRA被CSA指定为Zigbee统一测试工具开发和优化新功能和测试用例

    DEKRA德凯被CSA联盟(Connectivity Standards Alliance,CSA)指定负责为Zigbee统一测试工具(Zigbee Unified Test Harness,ZUTH)开发和优化新功能和测试用例。
    的头像 发表于 04-09 14:10 473次阅读

    D-Link NAS设备存在严重漏洞,易受攻击者注入任意命令攻击

    该问题源于URL处理软件中的CGI脚本段“/cgi-bin/ nas_sharing. CGI”,其对HTTPGET请求的处理过程存在漏洞。该漏洞以CVE-2024-3273作为识别号,其方式包括以”system“参数进行的命令注入
    的头像 发表于 04-08 10:28 805次阅读

    如何在CY8CPROTO-062S2-43439中配置AIROC蓝牙测试和调试工具CYW43439?

    如何在 CY8CPROTO-062S2-43439 中配置 AIROC 蓝牙测试和调试工具CYW43439? 该设备在我的电脑中被检测到 KitProg3 USB-UART,并且还显示在 AIROC
    发表于 02-29 08:14

    Cybellum—信息安全测试工具

    Cybellum是一款信息安全测试与管理工具,帮助汽车OEM及其供应商在整个汽车生命周期内大规模评估和降低安全风险。它无需访问源代码,通过Cyber Digital Twins技术检测开源软件
    的头像 发表于 01-26 16:48 591次阅读
    Cybellum—信息安全<b class='flag-5'>测试工具</b>

    keil5中debug检测不到st link

    Keil是一款常用的嵌入式开发环境,而ST-Link是STMicroelectronics提供的一款常见的调试工具。然而,有时候在使用Keil5进行调试时,会出现无法检测到ST-Link
    的头像 发表于 01-05 14:43 1.3w次阅读

    网络安全测试工具有哪些类型

    网络安全测试工具是指用于评估和检测系统、网络和应用程序的安全性的一类软件工具。这些工具可以帮助组织和企业发现潜在的安全漏洞和威胁,以便及时采
    的头像 发表于 12-25 15:00 1201次阅读

    redis集群性能测试工具有哪些

    Redis是一种高性能的内存键值存储系统,它被广泛应用于各种互联网应用和大规模的数据存储中。为了评估Redis在不同场景下的性能,我们需要使用一些性能测试工具来对Redis集群进行基准测试和负载测试
    的头像 发表于 12-04 11:36 753次阅读