AMNESIA33£º¿ªÔ´TCP/IPºÍ̸ջϵÁзì϶·ÖÎöÓëÑéÖ¤

°ä²¼¹¦·ò 2020-12-14

ý½é


½üÆÚ£¬£¬£¬¹úÍⰲȫ×êÑÐÈËÔ±ÔÚ¶à¸ö±»¿í·ºÊ¹ÓõĿªÔ´TCP/IPºÍ̸ջ·¢ÏÖÁ˶à¸ö·ì϶£¬£¬£¬ÕâһϵÁзì϶ͳ³ÆÎªAMNESIA33¡£¡£ÕâЩ·ì϶¿í·º´æÔÚÓÚǶÈëʽºÍÎïÁªÍøÉ豸ÖУ¬£¬£¬Ó°ÏìÁ˶à¸öÐÐÒµÁìÓò£¨Ô̺¬Ò½ÁÆ¡¢¡¢ÔËÊä¡¢¡¢ÄÜÔ´¡¢¡¢µçÐÅ¡¢¡¢¹¤Òµ½ÚÖÆ¡¢¡¢ÁãÊÛºÍóÒ׵ȣ©£¬£¬£¬Ä¿Ç°ÒÑÖªÁìÓòÄÚÉæ¼°Á˳¬150¼Ò¹©¸øÉÌÒÔ¼°ÊýÒÔ°ÙÍò¼ÆµÄÉ豸¡£¡£ÓëURGEN11ºÍRipple20·ÖÆçµÄÊÇ£¬£¬£¬AMNESIA33Ó°ÏìµÄÊǶà¸ö¿ªÔ´TCP/IPºÍ̸ջ£¬£¬£¬Òò¶øÕâЩ·ì϶Äܹ»ÇÄÎÞÉùÏ¢µØÓ°Ïìµ½ÎÞÊý¸ö´úÂë¿â¡¢¡¢¿ª·¢ÍŶÓÓë¸÷¸ö¹«Ë¾µÄ²úÆ·¡£¡£Ä¿Ç°ÒÑÖªµÄ·ìÏ¶Éæ¼°µ½ÁËÖÇÄܼҾÓ¡¢¡¢¹¤³§PLC¡¢¡¢SCADAÉ豸Ó빤¿Ø»¥»»»ú£¬£¬£¬µçÁ¦¼à¿ØµÈÉ豸¡£¡£


ÕâЩ·ì϶´æÔÚÓÚuIP¡¢¡¢FNET¡¢¡¢picoTCPºÍNut/NetµÈ¿ªÔ´ºÍ̸ջÉÏ£¬£¬£¬Ó°ÏìTCP/IPºÍ̸ջµÄ¶à¸ö×é¼þ£¬£¬£¬Ô̺¬DNS¡¢¡¢IPv6¡¢¡¢IPv4¡¢¡¢TCP¡¢¡¢ICMP¡¢¡¢LLMNRºÍmDNSµÈ¡£¡£ÆäÖÐÔ̺¬¶à¸öÑÏÖØ·ì϶£¬£¬£¬ËüÃǵÄCVE±àºÅ±ðÀëΪCVE-2020-17437¡¢¡¢CVE-2020-17443¡¢¡¢CVE-2020-24338¡¢¡¢CVE-2020-24336¡¢¡¢CVE-2020-25111¡£¡£


CVE-2020-17437£¨CVSSÆÀ·Ö8.2£©¡¢¡¢CVE-2020-17443£¨CVSSÆÀ·Ö8.2£©¿Éµ¼ÖÂÉ豸»Ø¾ø·þÎñ¡£¡£CVE-2020-24338¡¢¡¢CVE-2020-24336¡¢¡¢CVE-2020-25111£¨ÕâÈý¸öCVSSÆÀ·Ö¾ùΪ9.8£©¶¼¿Éµ¼ÖÂÔ¶³Ì´úÂëÖ´ÐÐ(RCE)¡£¡£ÆäËü28¸ö·ì϶µÄÑÏÖØË®Æ½¸÷±ð£¬£¬£¬CVSSÆÀ·Ö±ðÀë´Ó4µ½8.2¡£¡£


ÓÉÓÚIoT¡¢¡¢OT¡¢¡¢ITÉ豸¹©¸øÁ´µÄ¸öÐÔ£¬£¬£¬·ì϶ӰÏìµÄÉ豸Öڶ࣬£¬£¬Ó°ÏìÁìÓò¹ãÇÒ³ÖÐø¹¦·ò³¤£¬£¬£¬·ì϶ÐÞ¸´µÄÖ´ÐнÏÄÑÌâ¡£¡£Í¬Ê±£¬£¬£¬ÓÉÓÚuIP¡¢¡¢picoTCP¿ªÔ´ºÍ̸ջÒѾ­²»ÔÙÊØ»¤£¬£¬£¬ËùÒÔ²¿ÃÅ·ì϶ûÓв¹¶¡£¬£¬£¬ºÃ¶à²úÆ·Ö»ÄÜѰÕÒ´úÌæ¼¼Êõ¹æ»®»òÕßÊÇÔö³¤·À±¸´ëÊ©¡£¡£


Òò¶ø£¬£¬£¬OG¶«·½ÌüADLab¶ÔÓйطì϶½øÐÐÁË·ÖÎö£¬£¬£¬²¢³É¹¦¸´ÏÖÁ˶à¸ö·ì϶£¬£¬£¬¿ª·¢ÁËAMNESIA33Óйطì϶¼ì²â¼¼Êõ£¬£¬£¬²¢ÌáÈ¡ÁËÁ÷Á¿¼à¿ØÌص㣬£¬£¬ÕâЩ¼¼ÊõÕýÔÚÀûÓõ½OG¶«·½Ìü°²È«²úÆ·ÖС£¡£ÎªÁË»º½â·ì϶µÄÓ°Ï죬£¬£¬ÎÒÃÇÌá³öÏÂÁзÀ±¸½¨Òé¡£¡£

·À±¸½¨Òé 


¶ÔÓÚÕâЩ·ì϶µÄ·À±¸»º½â´ëÊ©£¬£¬£¬ÎÒÃǽ¨Òé²ÉÈ¡Èçϼ¸¸ö´ëÊ©£º 


¡ñ ÅäÖÃÄÚÍøÉ豸µÄDNS·þÎñÆ÷ΪÄÚÍøDNS·þÎñÆ÷¡£¡£

¡ñ Èç²»ÓÃÒª£¬£¬£¬Çë¹Ø±ÕIPv6ÉèÖᣡ£

¡ñ ÀûÓéɨ²úÆ·¼ø±ð³öѡȡÎÊÌâºÍ̸ջµÄÉ豸×ʲú£¬£¬£¬¶Ô×éÖ¯ÄÚ¿ÉÄÜ´æÔÚÎÊÌâµÄIoT¡¢¡¢OTºÍITÉ豸½øÐзçÏÕÆÀ¹À¡£¡£

¡ñ ·À»ðǽ¼°IPS²úÆ·²ÎÓëAMNESIA33·ì϶¹¥»÷¼ø±ðÌØµã£¬£¬£¬¼à¿Ø¶ñÒâÁ÷Á¿¡£¡£

¡ñ Èç²»ÓÃÒª£¬£¬£¬É豸²»ÒªÂ¶³öÔÚ¹«Íø¡£¡£

¡ñ ¾¡¿ÉÄܸüÐÂÓйØÊÜÓ°ÏìºÍ̸ջµ½×îа汾¡£¡£


ϱíÊDz¿ÃÅÒѾ­ÐÞ¸´µÄºÍ̸ջ¼°°æ±¾£º


TCP/IPºÍ̸ջ

ÐÞ¸´°æ±¾

FNET

4.70¼°ÒÔÉÏ

uIP-Contiki-NG

4.6.0¼°ÒÔÉÏ

Nut/Net

5.1¼°ÒÔÉÏ



CISAÁªÃË·ÖÏíÁË13¸öÉæ¼°µ½AMNESIA33·ì϶µÄ¹«Ë¾µÄ²úÆ·ÐÞ¸´½¨Ò飬£¬£¬Ô̺¬ÁËMicrochip¡¢¡¢SiemensµÈ¹«Ë¾µÄ²úÆ·£¬£¬£¬Ïê¼û²Î¿¼Á´½Ó[5]¡£¡£


ÓйظÅÄî½éÉÜ 


1¡¢¡¢DNSºÍ̸½âÎö


DNSµÄÒªÇóºÍÏìÓ¦µÄ¸ù»ùµ¥ÔªÊÇDNS±¨ÎÄ£¨Message£©¡£¡£ÒªÇóºÍÏìÓ¦µÄDNS±¨ÎĽṹÊÇÆëȫһÑùµÄ£¬£¬£¬Ã¿¸ö±¨ÎͼÓÉÒÔÏÂÎå¶Î£¨Section£©×é³É£º


ͼƬ


DNS HeaderÊÇÿ¸öDNS±¨Îͼ±ØÐëÕ¼ÓеÄÒ»²¿ÃÅ£¬£¬£¬ËüµÄ³¤¶È¹Ì¶¨Îª12¸ö×Ö½Ú¡£¡£Question²¿ÃÅ´æ·ÅµÄÊÇÏò·þÎñÆ÷²éÎʵÄÓòÃûÊý¾Ý£¬£¬£¬Í¨³£Çé¿öÏÂËüÖ»ÓÐÒ»ÌõEntry¡£¡£Ã¿¸öEntryµÄÌåʽÊÇÒ»ÑùµÄ£¬£¬£¬ÈçÏÂËùʾ£º


ͼƬ


QNAMEÊÇÓÉlabelsÐòÁÐ×é³ÉµÄÓòÃû¡£¡£QNAMEµÄÌåʽʹÓÃDNS³ß¶ÈÃû³Æ°µÊ¾·¨¡£¡£Õâ¸ö×Ö¶ÎÊDZ䳤µÄ£¬£¬£¬Òò¶øÓпÉÄܳöÏÖÆæÊý¸ö×Ö½Ú£¬£¬£¬µ«²»½øÐв¹Æë¡£¡£DNSʹÓÃÒ»Öֳ߶ÈÌåʽ¶ÔÓòÃû½øÐбàÂë¡£¡£ËüÓÉһϵÁеÄlabel£¨ºÍÓòÃûÖÐÓÃ.Ô׸îµÄlabel·ÖÆç£©×é³É¡£¡£Ã¿¸ölabelÊ××ֽڵĸßÁ½Î»ÓÃÓÚ°µÊ¾labelµÄÀàÐÍ¡£¡£RFC1035ÖзÖÅäÁËËĸöÀïÃæµÄÁ½¸ö£¬£¬£¬±ðÀëÊÇ£º00°µÊ¾µÄͨ³£label£¬£¬£¬11£¨0xC0£©°µÊ¾µÄѹËõlabel¡£¡£


Answer¡¢¡¢AuthorityºÍAdditionalÈý¸ö¶ÎµÄÌåʽÊÇÆëȫһÑùµÄ£¬£¬£¬¶¼ÊÇÓÉÁãÖÁ¶àÌõResource Record£¨×ÊÔ´¼Í¼£©×é³É¡£¡£ÕâЩ×ÊÔ´¼Í¼ÓÉÓÚ·ÖÆçµÄÓô¦¶ø±»·Ö¸ô´æ·Å¡£¡£Answer¶ÔÓ¦²éÎÊÒªÇóÖеÄQuestion£¬£¬£¬QuestionÖеÄÒªÇó²éÎÊÁ˾ֻáÔÚAnswerÖиø³ö£¬£¬£¬ÈôÊÇÒ»¸öÏìÓ¦±¨ÎĵÄAnswerΪ¿Õ£¬£¬£¬×¢Ã÷Õâ´Î²éÎÊûÓÐÖ±½Ó»ñµÃÁ˾Ö¡£¡£


RR(Resource Record)×ÊÔ´¼Í¼ÊÇDNSϵͳÖм«¶ÈÖØÒªµÄÒ»²¿ÃÅ£¬£¬£¬ËüÕ¼ÓÐÒ»¸ö±ä³¤µÄ½á¹¹£¬£¬£¬¾ßÌåÌåʽÈçÏ£º


ͼƬ


¡ñ NAME£ºËüÖ¸¶¨¸Ã±Ê¼Í¼¶ÔÓ¦µÄÊÇÄĸöÓòÃû£¬£¬£¬ÌåʽʹÓÃDNS³ß¶ÈÃû³Æ°µÊ¾·¨

¡ñ TYPE£º×ÊÔ´¼Í¼µÄÀàÐÍ¡£¡£

¡ñ CLASS£º¶ÔÓ¦QuestionµÄQCLASS£¬£¬£¬Ö¸¶¨ÒªÇóµÄÀàÐÍ£¬£¬£¬³£ÓÃֵΪIN£¬£¬£¬ÖµÎª0x001¡£¡£

¡ñ TTL(Time To Live)×ÊÔ´µÄÓÐЧÆÚ£º°µÊ¾ÄãÄܹ»½«¸ÃÌõRR»º´æTLLÃ룬£¬£¬TTLΪ0°µÊ¾¸ÃRR²»Äܱ»»º´æ¡£¡£TTLÊÇÒ»¸ö4×Ö½ÚÓзûºÅÊý£¬£¬£¬µ«ÊÇֻʹÓÃËü´óÓÚµÈÓÚ0µÄ²¿ÃÅ¡£¡£

¡ñ RDLENGTH£ºÒ»¸öÁ½×ֽڷǸºÕûÊý£¬£¬£¬ÓÃÓÚÖ¸¶¨RDATA²¿Ãŵij¤¶È£¨×Ö½ÚÊý£©¡£¡£

¡ñ RDATA£º°µÊ¾Ò»¸ö³¤¶ÈºÍ½á¹¹¶¼¿É±äµÄ×ֶΣ¬£¬£¬ËüµÄ¾ßÌå½á¹¹È¡¾öÓÚTYPE×Ö¶ÎÖ¸¶¨µÄ×ÊÔ´ÀàÐÍ¡£¡£

DNSÏìÓ¦°üÈçÏÂͼËùʾ£º


ͼƬ


´ÓÉÏͼÖпÉÖª£¬£¬£¬¸ÃAnswersÇø¶ÎÖдæÔÚ9¸ö×ÊÔ´¼Í¼£¬£¬£¬ºì¿òÖаµÊ¾µÄÊÇÖ÷»úµØÖ·£¨AÀàÐÍ£©×ÊÔ´¼Í¼¡£¡£


Óò±êÇ©labelÔÚDNSÊý¾Ý°üÀï±»±àÂ룬£¬£¬Ã¿¸öͨ³£±êÇ©µÄµÚÒ»¸ö×Ö½Ú´ú±íÕâ¸ö±êÇ©µÄ³¤¶È£¬£¬£¬Ê£ÏµÄ×ÖĸÊý×Ö×Ö·ûΪ±êÇ©×ÔÉí(Ò»Ð©ÌØÊâ×Ö·ûÒ²ÊÇÄܹ»µÄ)£¬£¬£¬µ«ÊÇ×îÖÕ½áβµÄ×Ö·û¿Ï¶¨ÊÇÒÔ¿Õ×Ö½Ú½áβ(¼´0x00)£¬£¬£¬ÓÃÀ´°µÊ¾ÓòÃûµÄʵÏÖ¡£¡£¾Ù¸öÀý×Ó£¬£¬£¬ÈçÏÂͼËùʾ£¬£¬£¬Óò±êÇ©µÚÒ»¸ö×Ö·ûÊÇ0x03£¬£¬£¬Õâ´ú±íµÚÒ»¸ö±êÇ©³¤¶ÈΪ3(¼´0x77 0x77 0x77 == ¡°www¡±)£¬£¬£¬Í¬Àí£¬£¬£¬0x62 0x61 0x690x64 0x75 == ¡°baidu¡±£¬£¬£¬×îºóÄܹ»¿´µ½ÒÔ0x00½áβ¡£¡£


ͼƬ


2¡¢¡¢TCP´¹Î£Ä£Ê½


ΪÁË·¢ËÍÖØÒªºÍ̸Êý¾Ý,TCPÌṩÁËÒ»ÖÖ³ÆÎª´¹Î£Ä£Ê½(urgentmode)µÄ»úÖÆ£¬£¬£¬TCPºÍ̸ÔÚÊý¾Ý¶ÎÖÐÉèÖÃURGλ,°µÊ¾½øÈ봹Σģʽ¡£¡£Í¨¹ýÉèÖô¹Î£Ä£Ê½£¬£¬£¬·¢ËÍ·½Äܹ»ÔÚ·¢ËͶÓÁÐÖÐÓÅÏÈ·¢ËÍÕⲿÃŵÄÊý¾Ý£¬£¬£¬²¢ÇÒ²»ÓÃÔÚ·¢ËͶÓÁÐÖÐÁжÓ£¬£¬£¬¶ø½Ó¹Ü·½Äܹ»¶Ô´¹Î£Ä£Ê½²ÉÈ¡ÌØÊâµÄ´¦Öᣡ£ÕâÖÖ·½Ê½Êý¾Ý²»ÈÝÒ×½ÓÊܱ»×èÈû,·þÎñÆ÷¶Ë·¨Ê½»áÓÅÏȽÓÊÜÕâЩ´¹Î£µÄÊý¾Ý£¬£¬£¬¶ø²»ÓýøÐÐÁжӴ¦Öᣡ£ÔÚTCP±¨ÎÄÖнç˵ÁËÁ½¸ö×Ö¶ÎÀ´±êʾ´¹Î£Ä£Ê½£¬£¬£¬Ò»¸öURG±êÖ¾£¬£¬£¬¸Ã±êÖ¾°µÊ¾±¨ÎÄÖÐÓд¹Î£Êý¾Ý£¬£¬£¬ÁíÒ»¸ö±êÖ¾ÊÇ´¹Î£Ö¸Õ룬£¬£¬Ëü±êʾ´¹Î£Êý¾ÝÔÚ´«ÊäÊý¾ÝÖÐÆ«ÒƵØÎ»¡£¡£ÈçÏÂͼËùʾ£º


ͼƬ


·ì϶·ÖÎö 


ÏÂÃæÎÒÃǶԼ¸¸öCVSSÆÀ·Ö½Ï¸ßµÄ·ì϶½øÐзÖÎö£º


1¡¢¡¢CVE-2020-17437


CVE-2020-17437´æÔÚÓÚuIPºÍ̸ջµÄuip.cÎļþµÄuip_processº¯ÊýÖУ¬£¬£¬¸Ãº¯ÊýÖØÒªÊÇ´¦ÖÃip/tcp±¨ÎÄ£¬£¬£¬ÏÂͼÊÇuIPºÍ̸ջ¶ÔTCP±¨ÎÄÖдøÓÐTCP_URG´¹Î£Ö¸Õë±êʶʱµÄ´¦ÖôúÂ룬£¬£¬ÈôÊDZàÒëʱÅäÖÃÁËUIP_URGDATA£¬£¬£¬Ôò·¨Ê½»á×ßµ½ÏÂÃæµÄif·ÖÖ§£¬£¬£¬¶Ô´¹Î£Ö¸ÕëÊý¾Ý½øÐÐרÃÅ´¦Öᣡ£


µ«ÊÇÔÚĬÈÏÇé¿öÏ£¬£¬£¬UIP_URGDATA²¢Ã»ÓÐÅäÖᣡ£´úÂë»á½øÈëµ½else·ÖÖ§£¬£¬£¬·¨Ê½»áÌø¹ý´¦Öô¹Î£Ö¸ÕëÊý¾Ý£¬£¬£¬²¢Åú¸Äuip_lenµÄÊýÖµ¡£¡£·¨Ê½ÔÚÅú¸Äuip_lenµÄʱ³½²¢Ã»ÓÐÅжϴ¹Î£Ö¸ÕëµÄÖµ£¬£¬£¬µ±uip_lenµÄÖµ³ö¸ñС£¬£¬£¬¶ø´¹Î£Ö¸ÕëµÄÖµurgp³ö¸ñ´óʱ£¬£¬£¬¾Í»áÒýÆðÕûÊýÒç³ö£¬£¬£¬µ¼ÖÂÉè±¸ÖØÆô»òÕßÊÇÔ½½ç¶Áд¡£¡£


ͼƬ


2¡¢¡¢CVE-2020-24338


¸Ã·ì϶³Ê´Ë¿ÌpicoTCP/IPºÍ̸ջÖнâÎöÓòÃûlabelµÄpico_dns_decompress_name()º¯ÊýÖУ¬£¬£¬¸Ãº¯Êý¾ßÌåʵÏÖÈçÏ´úÂëËùʾ£º


ͼƬ


µÚ95¡¢¡¢96Ðгõʼ»¯iterator£¬£¬£¬nameÖ¸Ïò´ý½âѹËõµÄlabels£¬£¬£¬dest_iteratorÖ¸Ïò´æ·Å½âѹ³öÀ´µÄlabelsµÄ»º³åÇø£¬£¬£¬¾ÞϸΪ256×Ö½Ú¡£¡£µÚ97ÐÐÆðͷΪwhileÑ­»·£¬£¬£¬¶ÁÈ¡µ½×Ö·û´®½áβ¿Õ×Ö½ÚÍ˳ö¡£¡£µÚ98ÐУ¬£¬£¬Í¨¹ýiterator&0xC0ÅжÏlabelÀàÐÍ£¬£¬£¬ÈôÊÇΪѹËõlabel£¬£¬£¬Ôòͨ¹ýpacket¶¨Î»µ½Í¨³£labelµØµãµÄµØÎ»£¬£¬£¬ÈôÊÇΪͨ³£labelÖ±½Ó½øÈëelse´úÂë¿éÖУ¬£¬£¬µÚ107ÐУ¬£¬£¬Å²ÓÃmemcpy½«Í¨³£label¿½±´µ½dest_iteratorÖС£¡£ÎÒÃÇÖªÏþdest_iterator»º³åÇø¾ÞϸֻÓÐ256×Ö½Ú£¬£¬£¬¶øwhileÑ­»·Í˳öǰÌáΪ¶Áµ½×Ö·û´®½áβ¿Õ×Ö½Ú£¬£¬£¬Òò¶øµ±name³¤¶È³¬¹ý256×Ö½Úʱ£¬£¬£¬µ¼ÖÂdest_iterator»º³åÇøÒç³ö¡£¡£


3¡¢¡¢CVE-2020-24336


¸Ã·ì϶³Ê´Ë¿ÌcontikiºÍ̸ջÖеÄip64_dns64_4to6()ÖУ¬£¬£¬¸Ãº¯ÊýÖ°ÄÜÊǽ«ipv4ÀàÐ͵ÄDNSÊý¾Ý°üת»»³Éipv6ÀàÐ͵ÄDNSÊý¾Ý°ü£¬£¬£¬¹Ø¼ü´úÂëÈçÏ£º


ͼƬ


±éÀúAnswerÇø¶Î²¢¸üе½ipv6ÀàÐ͵ÄAnswerÇø¶ÎÖС£¡£´ÓµÚ209ÐÐÆðͷת»»×ÊÔ´¼Í¼£¬£¬£¬¾ßÌåʵÏÖ´úÂëÈçÏÂËùʾ£º


ͼƬ


Ê×ÏÈÅжÏTYPEÊÇ·ñÊÇDNS_TYPE_A£¬£¬£¬DNS_TYPE_A°µÊ¾¸Ã×ÊÔ´¼Í¼Ϊipv4Ö÷»úµØÖ·£¬£¬£¬¶øºó½«¶ÔÓ¦Çø¶Î¿½±´µ½acopyÖС£¡£µÚ220ÐУ¬£¬£¬´Ó×ÊÔ´¼Í¼ÖÐÖ±½ÓÈ¡RDLENGTH£¬£¬£¬Ç°ÎÄÒѽéÉÜ£¬£¬£¬¸ÃÇø¶Î±íÕ÷RDATAµÄ³¤¶È¡£¡£µÚ227ÐУ¬£¬£¬ÅжÏlen³¤¶ÈÊÇ·ñµÈÓÚ4£¬£¬£¬ÕâÀïÕý³£Çé¿ö£¬£¬£¬lenÓ¦¸ÃΪ4£¬£¬£¬ÓÉÓÚipv4µØÖ·³¤¶ÈΪ4¸ö×Ö½Ú¡£¡£ÈôÊÇlen²»µÈÓÚ4£¬£¬£¬Ôò½øÈëelseÓï¾äÖУ¬£¬£¬Ö±½ÓŲÓÃmemcpy½øÐÐRDATAÊý¾Ý¿½±´¡£¡£ÕâÀïÊÇ´æÔÚÎÊÌâµÄ£¬£¬£¬Ipv4Ö÷»úµØÖ·³¤¶È²»µÈÓÚ4£¬£¬£¬²¢Ã»ÓÐÑéÖ¤Ö÷»úµØÖ·µÄºÏÀíÐÔ²¢ÇÒlen×î´óΪ0xFFFF£¬£¬£¬Ö±½Ó¿½±´¿ÉÄܵ¼Ö»º³åÇøÒç³ö¡£¡£


4¡¢¡¢CVE-2020-25111


ÔÚʹÓÃNut/NetºÍ̸ջµÄÉ豸ÖУ¬£¬£¬NutDnsGetResourceAll()ÊÇ´¦ÖÃDNSÒªÇóµÄº¯Êý£¬£¬£¬ÆäÖд¦ÖÃDNS»Ø´ðµÄº¯ÊýÊÇDecodeDnsQuestion()£¬£¬£¬´¦ÖÃÓò±êÇ©µÄº¯ÊýÊÇScanName()£¬£¬£¬·ì϶¾Í³Ê´Ë¿ÌScanName()º¯ÊýÖС£¡£ÈçÏÂͼËùʾ£¬£¬£¬cpΪָÏòÓòÃûµÚÒ»¸ö×Ö½ÚµÄÖ¸Õë(¼´µÚÒ»¸öÓò±êÇ©µÄ³¤¶È×Ö½Ú)£¬£¬£¬*nppΪ¼´½«±»½âÎöµÄÓòÃûbuffer£¬£¬£¬Í¨¹ýstrlen()½«Õû¸öÓòÃû³¤¶È¸³Öµ¸ørc,¶øºó»ùÓÚrc·ÖÅä*npp buffer£¬£¬£¬Ö®ºóͨ¹ýÒ»¸öwhile£¬£¬£¬Ñ­»·´¦ÖÃÿһ¸ölabel¡£¡£ÎÊÌâ²»ÑÔ¶øÓ÷£¬£¬£¬cpÊǹ¥»÷Õ߿ɿصÄ£¬£¬£¬ÓÉ´ËÄܹ»½ÚÖÆ*nppµÄ¾Þϸ¡£¡£¶ø¶ÔÓÚ±êÇ©µÄ³¤¶È£¬£¬£¬¼´len±äÁ¿£¬£¬£¬Ö±½Ó´ÓÊý¾Ý°üÖеõ½£¬£¬£¬²¢Ã»ÓÐ×öÈκÎÌìǵ²é³­£¬£¬£¬¶øºóͨ¹ýwhileÑ­»·´¦Öᣡ£Òò¶øÄܹ»¶ÔlenÉèÖÃËÁÒâµÄÖµ£¬£¬£¬¼´¹¥»÷Õß¶Ô*npp buffer¿É¿ØµÄ³¤¶È¡£¡£ÓÉ´ËÄܹ»ÔÚ¶ÑÖÐÔì³ÉÔ½½çд£¬£¬£¬Õâ¿Éµ¼ÖÂÔ¶³Ì´úÂëÖ´ÐÐ(RCE)¡£¡£


ͼƬ


5¡¢¡¢CVE-2020-17443


CVE-2020-17443´æÔÚÓÚPicoTCPºÍ̸ջpico_icmp6.cÎļþÖС£¡£ÎÊÌâ´úÂëλÓÚpico_icmp6_send_echoreply£¨£©º¯ÊýÖУ¬£¬£¬¸Ãº¯ÊýµÄÖØÒªÖ°ÄÜÊǻظ´ICMPv6Ó¦´ðÊý¾Ý°üÒÔÏìÓ¦¶Ô¶ËµÄICMPv6Echo(ping)ÒªÇ󡣡£


ͼƬ


ÎÒÃÇÄܹ»¿´µ½£¬£¬£¬µÚ68ÐУ¬£¬£¬replay½á¹¹µÄ»º³å¾Þϸ»ùÓÚechoµÄ±¨ÎÄÖÐtransport_len±äÁ¿¡£¡£ÔÚµÚ84ÐУ¬£¬£¬·¨Ê½´Óecho->payloadÏòreply->payloadµØÖ·¸´ÖÆÁ˳¤¶ÈΪecho->transport_len- 8¾ÞϸµÄÊý¾Ý¡£¡£


°ÑÎÈ£¬£¬£¬ÈôÊÇecho->transport_lenСÓÚ 8£¬£¬£¬echo->transport_len - 8»áµ¼ÖÂÕûÊýÒç³ö£¬£¬£¬memcpy²Ù×÷»áµ¼Ö»º³åÇøÒç³ö¡£¡£


ÔÚPicoTCPºÍ̸ջ¹¥»÷Õßͨ¹ý»ú¹Ø¶ñÒâµÄICMPv6Êý¾Ý°ü£¬£¬£¬Õâ¸ö¶ñÒâµÄÊý¾Ý°üICMP±¨Í·Ð¡ÓÚ8£¬£¬£¬»áµ¼ÖÂÉè±¸ÖØÆô»ò»Ø¾ø·þÎñ¡£¡£


·ì϶ÑéÖ¤


·ì϶ÑéÖ¤ÊÓÆµÇë²é¿´ADLab¹«¼ÒºÅ


²Î¿¼Á´½Ó£º


[1] https://www.forescout.com/research-labs/amnesia33/[2]https://www.securityweek.com/amnesia33-vulnerabilities-tcpip-stacks-expose-millions-devices-attacks

[3] https://www.zdnet.com/article/amnesia33-vulnerabilities-impact-millions-of-smart-and-industrial-devices/

[4] https://tools.ietf.org/html/rfc1035

[5] https://us-cert.cisa.gov/ics/advisories/icsa-20-343-01


OG¶«·½Ìü»ý¼«·ÀÓù³¢ÊÔÊÒ£¨ADLab£©


ADLab³ÉÁ¢ÓÚ1999Ä꣬£¬£¬ÊÇÖйú°²È«ÐÐÒµ×îÔç³ÉÁ¢µÄ¹¥·À¼¼Êõ×êÑг¢ÊÔÊÒÖ®Ò»£¬£¬£¬Î¢ÈíMAPP´òËãÖ÷Ìâ³ÉÔ±£¬£¬£¬¡°ºÚȸ¹¥»÷¡±¸ÅÄîÊ×ÍÆÕß¡£¡£½ØÖ¹Ä¿Ç°£¬£¬£¬ADLabÒÑͨ¹ýCVEÀۼư䲼°²È«·ì϶½ü1100¸ö£¬£¬£¬Í¨¹ý CNVD/CNNVDÀۼư䲼°²È«·ì϶900Óà¸ö£¬£¬£¬³ÖÐøÎ¬³Ö¹ú¼ÊÍøÂ簲ȫÁìÓòÒ»Á÷Ë®×¼¡£¡£³¢ÊÔÊÒ×êÑз½Ïòº­¸Ç²Ù×÷ϵͳÓëÀûÓÃϵͳ°²È«×êÑС¢¡¢Òƶ¯ÖÇÄÜÖն˰²È«×êÑС¢¡¢ÎïÁªÍøÖÇÄÜÉ豸°²È«×êÑС¢¡¢Web°²È«×êÑС¢¡¢¹¤¿ØÏµÍ³°²È«×êÑС¢¡¢Ôư²È«×êÑС£¡£×êÑгɾÍÀûÓÃÓÚ²úÆ·Ö÷Ìâ¼¼Êõ×êÑС¢¡¢¹ú¶ÈÖØµã¿Æ¼¼ÏîÄ¿¹¥¹Ø¡¢¡¢×¨Òµ°²È«·þÎñµÈ¡£¡£


adlab.jpg