• 我的位置:
  • 首页
  • -
  • 漏洞预警
  • -
  • 其他
  • -
  • DNSmasq Dnspooq缓存中毒漏洞通告
    • CNNVD编号:未知
    • 危害等级: 高危 
    • CVE编号:未知
    • 漏洞类型: DNS缓存中毒,缓冲区溢出
    • 威胁类型:未知
    • 厂       商:未知
    • 漏洞来源:深信服
    • 发布时间:2021-01-22
    • 更新时间:2021-01-22

    漏洞简介

    1、组件介绍

    DNSmasq是一个小巧且方便地用于配置DNS和DHCP的工具,适用于小型网络,它提供了DNS功能和可选择的DHCP功能。DHCP服务器和DNS服务器结合,并且允许DHCP分配的地址能在DNS中正常解析,并支持静态和动态两种DHCP配置方式。

    2、漏洞描述

    近日,深信服安全团队监测到以色列JSOF研究实验室公开了一则DNSmasq组件存在Dnspooq漏洞的信息,漏洞编号:(CVE-2020-25686/CVE-2020-25684/CVE-2020-25685/CVE-2020-25687/ CVE-2020-25683/CVE-2020-25682/CVE-2020-25681),漏洞等级:高危。该漏洞是由于使用了弱散列来标识DNS请求以及请求与响应匹配不严格,导致处理CNAME记录时允许欺骗CNAME记录链,攻击者可利用该漏洞,构造恶意数据执行DNS缓存中毒攻击,导致破坏DNS查询功能。

    漏洞公示

    3.1 Dnspooq缓存中毒漏洞

    DNSmasq通过一个32bit的随机序列确认DNS请求的有效性,但是由于使用了弱散列识别DNS请求,并且采用了松散的请求和响应的匹配,实际上只需猜测19位导致缓存中毒是可行的。DNSmasq处理CNAME记录的方式使得攻击者可以欺骗CNMAE记录链并同时有效的使9个DNS记录受影响。对不使用DNSmasq的缓存功能的设备,该漏洞的影响较小但不能完全免疫。


    3.2 Dnspooq缓冲区溢出漏洞

    DNSmasq存在基于堆的缓冲区溢出漏洞,由于可以和DNS缓存中毒漏洞结合使用,产生更严重的攻击,因此危险性有所提升。当将dnsmasq配置为使用DNSSEC安全功能时,该漏洞存在潜在的远程代码执行的可能,但目前只能导致拒绝服务。不使用DNSSEC安全功能的设备不受影响。

    以下是漏洞清单:

    名称

    CVSS

    描述

    CVE-2020-25681

    8.1

    使用DNSSEC时,2.83之前的DNSmasq版本容易受到sort_rrset()函数中基于堆的缓冲区溢出的影响。这可以使远程攻击者将任意数据写入目标设备的内存,这可能导致目标设备上的内存损坏和其他意外行为。

    CVE-2020-25682

    8.1

    启用DNSSEC时,由于缺少长度检查,2.83之前的DNSmasq版本易于在extract_name()函数中发生缓冲区溢出。这可以允许远程攻击者在目标设备上造成内存损坏。

    CVE-2020-25683

    5.9

    启用DNSSEC时,2.83之前的DNSmasq版本容易出现基于堆的缓冲区溢出。可以创建有效DNS回复的远程攻击者可以利用此漏洞在堆分配的内存中引起溢出。此缺陷是由rfc1035.c:extract_name()中缺少长度检查引起的,该长度检查可能被滥用以使代码以get_rdata()中的异常大小执行memcpy()并导致DNSmasq崩溃,从而导致拒绝服务。

    CVE-2020-25687

    5.9

    启用DNSSEC时,2.83之前的DNSmasq版本容易受到sort_rrset()中具有大memcpy的基于堆的缓冲区溢出的攻击。可以创建有效DNS回复的远程攻击者可以利用此漏洞在堆分配的内存中引起溢出。此缺陷是由rfc1035.c:extract_name()中缺少长度检查引起的,该长度检查可能被滥用以使代码在sort_rrset()中以负大小执行memcpy()并导致DNSmasq崩溃,从而导致拒绝服务。

    CVE-2020-25684

    4

    在<2.83版本的DNSmasq中缺少适当的地址/端口检查,reply_query函数使伪造对路径外攻击者的答复变得更加容易。

    CVE-2020-25685

    4

    缺少在2.83 Reply_query功能之前在DNSmasq的版本中实现的查询资源名称检查,使远程攻击者可以欺骗可能导致DNS缓存中毒的DNS通信。

    CVE-2020-25686

    4

    2.83之前版本的DNSmasq版本对同一资源名称的多个DNS查询请求允许远程攻击者使用生日攻击(RFC 5452)欺骗DNS通信,这可能导致DNS缓存中毒。

    参考网站

    暂无

    受影响实体

    目前受影响的DNSmasq版本:DNSmasq<2.83

    补丁

    1、官方修复建议

    当前官方已发布最新版本,建议受影响的用户及时更新升级到最新版本。链接如下:

    http://www.thekelleys.org.uk/dnsmasq/

    2、深信服解决方案

    深信服安全运营服务】深信服云端安全专家提供7*24小时持续的安全运营服务。对存在漏洞的用户,检查并更新了客户防护设备的策略,确保客户防护设备可以防御此漏洞风险。

    深信服安全云眼】在漏洞爆发之初,已完成检测更新,对所有用户网站探测,保障用户安全。不清楚自身业务是否存在漏洞的用户,可注册信服云眼账号,获取30天免费安全体验。

    注册地址:http://saas.sangfor.com.cn

    深信服云镜】在漏洞爆发第一时间即完成检测能力的发布,部署了云镜的用户可以通过升级来快速检测网络中是否受该高危风险影响,避免被攻击者利用。离线使用云镜的用户需要下载离线更新包来获得漏洞检测能力,可以连接云端升级的用户可自动获得漏洞检测能力。