¡¾Îó²îͨ¸æ¡¿Dnsmasq¶à¸öÇå¾²Îó²î
Ðû²¼Ê±¼ä 2021-01-200x00 Îó²î¸ÅÊö
DnsmasqÊÇÆÕ±éʹÓõĿªÔ´Èí¼þ£¬¿ÉÌṩDNSת·¢¡¢»º´æÒÔ¼°DHCP·þÎñÆ÷¹¦Ð§£¬ËüÔÚÎïÁªÍø£¨IoT£©ºÍÆäËüǶÈëʽװ±¸Öкܳ£¼û¡£
2021Äê01ÔÂ19ÈÕ£¬ÒÔÉ«ÁÐÇå¾²×Éѯ¹«Ë¾JSOFÅû¶ÁË7¸öDnsmasqÎó²î£¨Í³³ÆÎªDNSpooq£©£¬ÊÜ DNSpooq Ó°ÏìµÄ×°±¸²»µ«»áÔâÓöDNS »º´æÖж¾£¬»¹¿É±»ÓÃÓÚÔ¶³Ì´úÂëÖ´ÐС¢ÒÔ¼°¾Ü¾ø·þÎñ¹¥»÷¡£
0x01 Îó²îÏêÇé

ÓÉÓÚDNSSEC´¦Öóͷ£´úÂëµÄ½çÏß¼ì²é¹ýʧ£¬DnsmasqÖб£´æ4¸ö»º³åÇøÒç³öÎó²î¡£µ±Dnsmasq±»ÉèÖÃΪʹÓÃDNSSECʱ£¬Ô¶³Ì¹¥»÷Õß¿ÉÒÔʹÓöñÒâÉè¼ÆµÄDNSÏìÓ¦À´´¥·¢DNSpooqÖеĻº³åÇøÒç³öÎó²î£¬×îÖÕµ¼Ö¾ܾø·þÎñ¡¢ÐÅϢй¶¼°Ô¶³Ì´úÂëÖ´ÐС£
Dnsmasq»º³åÇøÒç³öÎó²î£¨CVE-2020-25681£©
ʹÓÃDNSSECʱ£¬2.83֮ǰµÄDnsmasq°æ±¾ÔÚsort_rrset()ÖÐÈÝÒ×±¬·¢»ùÓڶѵĻº³åÇøÒç³ö£¬ÆäCVSSÆÀ·Ö8.1¡£Õâ¿ÉÒÔʹԶ³Ì¹¥»÷Õß½«í§ÒâÊý¾ÝдÈëÄ¿µÄ×°±¸µÄÄÚ´æÖУ¬¿ÉÄܵ¼ÖÂÄ¿µÄÉè±¹ØÁ¬ÄÄÚ´æËð»µºÍÆäËüÒâÍâÐÐΪ¡£
Dnsmasq»º³åÇøÒç³öÎó²î£¨CVE-2020-25682£©
ÆôÓÃDNSSECʱ£¬ÓÉÓÚȱÉÙ³¤¶È¼ì²é£¬2.83֮ǰµÄDnsmasq°æ±¾ÔÚextract_name£¨£©º¯ÊýÖÐÈÝÒ×±¬·¢»º³åÇøÒç³ö£¬ÆäCVSSÆÀ·Ö8.1¡£Õâ¿ÉÄܵ¼ÖÂÔ¶³Ì¹¥»÷ÕßÔÚÄ¿µÄ×°±¸ÉÏÔì³ÉÄÚ´æË𻵡£
Dnsmasq»º³åÇøÒç³öÎó²î£¨CVE-2020-25683£©
ÆôÓÃDNSSECʱ£¬ÓÉÓÚrfc1035.c:extract_name()ÖÐȱÉÙ³¤¶È¼ì²é£¬2.83֮ǰµÄDnsmasq°æ±¾ÈÝÒ×·ºÆð»ùÓڶѵĻº³åÇøÒç³ö£¬ÆäCVSSÆÀ·Ö5.9¡£Ô¶³Ì¹¥»÷Õß¿ÉÒÔͨ¹ýʹÓôËÎó²îÔÚ¶Ñ·ÖÅɵÄÄÚ´æÖÐÒýÆðÒç³ö£¬²¢ÇÒ¿ÉÒÔͨ¹ýÀÄÓó¤¶È¼ì²éÀ´µ¼Ö dnsmasq Í߽⣬×îÖÕÔì³É¾Ü¾ø·þÎñ¡£
Dnsmasq»º³åÇøÒç³öÎó²î£¨CVE-2020-25687£©
ÆôÓÃDNSSECʱ£¬ÓÉÓÚrfc1035.c:extract_name()ÖÐȱÉÙ³¤¶È¼ì²é£¬2.83֮ǰµÄDnsmasq°æ±¾ÔÚsort_rrset()ÖÐÈÝÒ×·ºÆð»ùÓڶѵĻº³åÇøÒç³ö£¬ÆäCVSSÆÀ·Ö5.9¡£Ô¶³Ì¹¥»÷Õß¿ÉÒÔͨ¹ýʹÓôËÎó²îÔÚ¶Ñ·ÖÅɵÄÄÚ´æÖÐÒýÆðÒç³ö£¬²¢ÇÒ¿ÉÒÔͨ¹ýÀÄÓó¤¶È¼ì²éÀ´µ¼Ö dnsmasq Í߽⣬×îÖÕÔì³É¾Ü¾ø·þÎñ¡£
±ðµÄ£¬ÔÚDNSÏìÓ¦ÑéÖ¤Öл¹±£´æDNSpooqÎó²îÖÐµÄÆäËü3¸ö£¬ÆäCVSSÆÀ·Ö¾ùΪ4.0¡£ÕâЩÎó²î¿ÉÄܵ¼ÖÂDNS»º´æÖж¾£¨»òDNSÓÕÆ£©£¬Ê¹µÃ¹¥»÷Õß¿ÉÒÔÌæ»»Éè±¹ØÁ¬ÄÕýµ±DNS¼Í¼¡¢ÆÆËðDNS»º´æ²¢½«Óû§Öض¨Ïòµ½í§ÒâÕ¾µã¡¢Ö´ÐÐÍøÂç´¹ÂÚ¹¥»÷¡¢ÍµÇÔÆ¾Ö¤»òÉ¢²¼¶ñÒâÈí¼þµÈ¡£
Ñо¿Ö°Ô±µÄ±¨¸æÌåÏÖ£¬Í¨¹ýʹÓÃÕâЩÎó²îÄܹ»ÆÆËðͨÀýµÄInternetä¯ÀÀÒÔ¼°ÆäËüÀàÐ͵ÄÁ÷Á¿£¬ºÃ±Èµç×ÓÓʼþ¡¢SSH¡¢Ô¶³Ì×ÀÃæ¡¢RDPÊÓÆµ¡¢ÓïÒôºô½ÐºÍÈí¼þ¸üеȣ¬ÉõÖÁ¿ÉÄܵ¼ÖÂÂþÑÜʽ¾Ü¾ø·þÎñ¹¥»÷£¨DDOS£©¡¢·´ÏòDDOS¡¢È䳿¹¥»÷µÈ¡£
Dnsmasq»º´æÖж¾Îó²î£¨CVE-2020-25684£©
ÔÚDnsmasq 2.83֮ǰ°æ±¾ÖеÄreply_queryº¯ÊýÖУ¬È±·¦Êʵ±µÄaddress/port¼ì²é£¬Õâµ¼ÖÂreply_queryº¯Êý¸üÈÝÒ×αÔì»Ø¸´¸øÂ·¾¶ÍâµÄ¹¥»÷Õß¡£
Dnsmasq»º´æÖж¾Îó²î£¨CVE-2020-25685£©
dnsmasqÔÚ2.83֮ǰµÄ°æ±¾ÖÐʵÏÖµÄreply_queryº¯Êýȱ·¦ÅÌÎÊ×ÊÔ´Ãû£¨RRNAME£©¼ì²é£¬ÔÊÐíÔ¶³Ì¹¥»÷ÕßÓÕÆDNSÁ÷Á¿£¬´Ó¶øµ¼ÖÂDNS»º´æÖж¾¡£
Dnsmasq»º´æÖж¾Îó²î£¨CVE-2020-25686£©
2.83֮ǰDnsmasq²»¼ì²éÊÇ·ñ±£´æÏàͬÃû³ÆµÄ´ý´¦Öóͷ£ÇëÇ󣬶øÊÇת·¢ÐÂÇëÇ󣬴ӶøÊ¹¹¥»÷Õß¿ÉÒÔÖ´ÐС°Birthday Attack¡± (RFC 5452) À´ÓÕÆDNSÁ÷Á¿£¬´Ó¶øµ¼ÖÂDNS»º´æÖж¾¡£
Ó°Ïì¹æÄ£
Dnsmasq <2.83
Ñо¿Ö°Ô±ÌåÏÖ£¬Ê¹ÓÃDNSpooqÎó²î¾ÙÐй¥»÷ºÜÊÇÈÝÒ×£¬¿ÉÒÔÔÚ¼¸ÃëÖÓ»ò¼¸·ÖÖÓÄÚÍê³É£¬ÇÒ²»ÐèÒªÈκÎÖØ´óµÄÊÖÒÕ»ò¹¤¾ß¡£ÒÔÏÂÊÇDNSÓÕÆµÄÁ÷³Ìͼ£º

ÏÖÔÚÔݲ»ÇåÎúÊÜDNSpooqÎó²îÓ°ÏìµÄËùÓй«Ë¾£¬JSOFÔÚÆä±¨¸æÖÐ×ÅÖØÁгöÁË40¸ö¹©Ó¦ÉÌ£¬ÆäÖаüÀ¨Android / Google¡¢Comcast¡¢Cisco¡¢Redhat¡¢Netgear¡¢Qualcomm¡¢Linksys¡¢Netgear¡¢IBM¡¢D-Link¡¢Dell¡¢»ªÎªºÍUbiquitiµÈ¡£
×èÖ¹ÏÖÔÚ£¬ShodanËÑË÷ÏÔʾ £¬ÏÖÔÚInternetÉÏÓÐÁè¼Ý100Íò¸öDnsmasq·þÎñÆ÷¹ûÕæ£¬ÆäÖÐÖйúÂþÑܵÄDnsmasqΪ397246£¬Î»ÁеÚÒ»£º

0x02 ´¦Öóͷ£½¨Òé
ΪÁ˱ÜÃâDNSpooqÎó²îµÄ¹¥»÷£¬½¨Ò齫DnsmasqÈí¼þ¸üе½2.83°æ±¾¡£
ÔÝʱ²½·¥
Õë¶ÔÎÞ·¨Á¬Ã¦¸üÐÂDnsmasqµÄÓû§£¬½¨ÒéʹÓÃÔÝʱ²½·¥:
l Èç·ÇÐëÒª£¬Ç뽫dnsmasqÉèÖÃΪ²»ÕìÌýWAN½Ó¿Ú¡£
l ʹÓÃÑ¡Ï--dns-forward-max= ¡°ïÔÌÔÊÐíת·¢µÄ×î´óÊýÄ¿,ÆäĬÈÏֵΪ150¡£
l ÔÝʱ½ûÓÃDNSSECÑé֤ѡÏֱµ½×°Öò¹¶¡ÎªÖ¹¡£
l ʹÓÃΪDNSÌṩ´«ÊäÇå¾²ÐÔµÄÐÒ飨ÈçDoT»òDoH£©£¬Õ⽫¼õÇáDnspooqÎó²î¹¥»÷µÄÓ°Ï죬µ«¿ÉÄÜ»á´øÀ´ÆäËüÇå¾²Òþ»¼£¬ÇëÎÈÖØÖ´Ðд˲Ù×÷¡£
l ïÔÌEDNSÐÂÎŵÄ×î´ó¾Þϸ¿ÉÄܻỺ½âijЩÎó²î£¬µ«ÉÐδ¾ÓɲâÊÔ£¬ÇÒÎ¥·´ÁËRFC5625¡£
0x03 ²Î¿¼Á´½Ó
https://www.jsof-tech.com/disclosures/dnspooq/
https://www.jsof-tech.com/wp-content/uploads/2021/01/DNSpooq_Technical-Whitepaper.pdf
https://www.bleepingcomputer.com/news/security/dnspooq-bugs-let-attackers-hijack-dns-on-millions-of-devices/
https://threatpost.com/dnspooq-flaws-allow-dns-hijacking-of-millions-of-devices/163163/
0x04 ʱ¼äÏß
2021-01-19 JSOFÅû¶Îó²î
2021-01-20 VSRCÐû²¼Ç徲ͨ¸æ
0x05 ¸½Â¼
CVSSÆÀ·Ö±ê×¼¹ÙÍø£ºhttp://www.first.org/cvss/



¾©¹«Íø°²±¸11010802024551ºÅ