漏洞预警:CVE-2017-15908 sytemd漏洞导致Linux DoS - 嘶吼 RoarTalk – 网络安全行业综合服务平台,4hou.com

漏洞预警:CVE-2017-15908 sytemd漏洞导致Linux DoS

ang010ela 漏洞 2017-11-28 11:14:02
303968
收藏

导语:最近出现的systemd漏洞可以导致许多Linux版本处于威胁中,具体来说是DNS resolver的缺陷导致相应受影响的系统收到DoS攻击。

最近出现的systemd漏洞可以导致许多Linux版本处于威胁中,具体来说是DNS resolver的缺陷导致相应受影响的系统收到DoS攻击。

存在该漏洞的系统发送DNS请求到攻击者控制的DNS服务器,将可以利用该漏洞。DNS服务器会返回伪造的查询,引起systemd进入无限循环,导致CPU利用率达到100%。漏洞编号 CVE-2017-15908

对该漏洞最有效的修复方法是修复systemd的底层漏洞。该漏洞的补丁陆续发布,如今年10月Ubuntu发布修复补丁。目前,还没有针对该漏洞的在野攻击。

漏洞分析

DNS不断被赋予新的功能,有的是增加的新功能,有的则让它更安全。RFC4034中向DNSSEC(DNS Security Extensions)增加了新的资源记录——NSEC (Next Secure)记录。漏洞发生在处理NSEC位图文件中代表伪类型(pseudo-types)的位的时候。下图是无限循环和栈结构源码。dns_packet_read_type_window()的实现在文件resolved-dns-packet.c中。


图1 无限循环和栈结构源码


当记录类型为DNS_TYPE_NSEC时,上面的函数 dns_packet_read_type_window() 会从dns_packet_read_rr()处调用。下图为resolved-dns-packet.c文件中的dns_packet_read_rr()函数代码。



图2 读取DNS包的源码

PoC

为了验证该漏洞,作者创建了一个DNS服务器,该服务器可以发送伪造的恶意响应。该响应消息含有NSEC记录,该记录是专门触发该漏洞的:



图3 捕获的伪造的DNS reply包

一旦systemd被用于DNS解析,就会收到这种特殊的DNS包,同时CPU利用率会变成100%,如图所示:

图4 CPU利用率

解决办法

针对该漏洞的补丁已经发布了,建议用户尽早更新补丁。同时应该检查DNS响应中是否含有RFC4034中定义的资源类型。监控DNS响应流量,检测DNS RR中是否含有DNS和RFC4034中定义的资源类型。如果附件位图含有伪类型(pseudo-types),那么应该进行拦截。

  • 分享至
取消

感谢您的支持,我会继续努力的!

扫码支持

打开微信扫一扫后点击右上角即可分享哟

发表评论

 
本站4hou.com,所使用的字体和图片文字等素材部分来源于原作者或互联网共享平台。如使用任何字体和图片文字有侵犯其版权所有方的,嘶吼将配合联系原作者核实,并做出删除处理。
©2024 北京嘶吼文化传媒有限公司 京ICP备16063439号-1 本站由 提供云计算服务