FragAttacksÎó²îÆÊÎö

Ðû²¼Ê±¼ä 2021-05-18

Åä¾°


¿ËÈÕ£¬£¬£¬£¬£¬Å¦Ô¼´óѧ°¢²¼Ôú±È·ÖУµÄÇå¾²Ñо¿Ô±Mathy Vanhoef·¢Ã÷ÁËһϵÁÐÓ°ÏìÖØ´óµÄWi-FiÎó²î£¬£¬£¬£¬£¬ÕâһϵÁÐÎó²î±»Í³³ÆÎªFragAttacks£¬£¬£¬£¬£¬FragAttacksÓ°ÏìÁË1997ÄêWi-FiÊÖÒÕ½µÉúÒÔÀ´µÄËùÓÐWi-Fi×°±¸£¨°üÀ¨ÅÌËã»ú¡¢ÖÇÄÜÊÖ»ú¡¢Ô°ÇøÍøÂç¡¢¼Òͥ·ÓÉÆ÷¡¢ÖÇÄܼҾÓ×°±¸¡¢ÖÇÄÜÆû³µ¡¢ÎïÁªÍøµÈµÈ£©¡£¡£¡£¡£


ÆäÖÐÈý¸öÎó²îÓ°Ïì´ó´ó¶¼WiFi×°±¸£¬£¬£¬£¬£¬ÊôÓÚWi-Fi 802.11±ê×¼Ö¡¾ÛºÏºÍÖ¡·ÖƬ¹¦Ð§ÖеÄÉè¼ÆÈ±ÏÝ£¬£¬£¬£¬£¬¶øÆäËûÎó²îÊÇWi-Fi²úÆ·Öеıà³Ì¹ýʧ¡£¡£¡£¡£


ºÚ¿ÍÖ»ÒªÔÚÄ¿µÄ×°±¸µÄWi-Fi¹æÄ£ÄÚ£¬£¬£¬£¬£¬¾ÍÄÜʹÓÃFragAttacksÎó²îÇÔÈ¡Ãô¸ÐÓû§Êý¾Ý²¢Ö´ÐжñÒâ´úÂ룬£¬£¬£¬£¬ÉõÖÁ¿ÉÒÔ½ÓÊÜÕû¸ö×°±¸¡£¡£¡£¡£


c7c7ÓéÀÖÆ½Ì¨ADLabµÚһʱ¼ä¶ÔÎó²î¾ÙÐÐÁËÆÊÎö£¬£¬£¬£¬£¬²¢Ìá³öÁËÏìÓ¦µÄ»º½â½¨Òé¡£¡£¡£¡£ÓÉÓÚWiFi²úÆ·µÄЭÒéÕ»£¬£¬£¬£¬£¬°üÀ¨ÁËSoft Mac¼°Full Mac¶àÖÖʵÏּƻ®¡£¡£¡£¡£FragAttacksϵÁÐÎó²î²»µ«±£´æÓ°Ïì²Ù×÷ϵͳÄںˡ¢WiFiÇý¶¯£¬£¬£¬£¬£¬»¹Ó°ÏìWiFiµÄSOCоƬ£¬£¬£¬£¬£¬ÒÔÊÇÎó²îµÄÓ°Ïìºã¾Ã±£´æ¡£¡£¡£¡£Çëʵʱ¹Ø×¢²¢¸üÐÂ×°±¸¹©Ó¦É̵ÄÇå¾²¸üС£¡£¡£¡£


ÐÞ¸´¼°»º½â½¨Òé


¡ñ ʵʱ¸üÐÂ×°±¸¹©Ó¦ÉÌÐû²¼µÄFragAttacksÎó²îÇå¾²¸üС£¡£¡£¡£

¡ñ È·±£Äú»á¼ûµÄËùÓÐÍøÕ¾ºÍÔÚÏßЧÀͶ¼ÆôÓÃÁËÇå¾²³¬Îı¾´«ÊäЭÒéHTTPS(ºÃ±È×°ÖÃHTTPS Everywhere²å¼þ)¡£¡£¡£¡£

¡ñ ÀýÈçÔÚWi-Fi 6£¨802.11ax£©×°±¸ÖнûÓÃ·ÖÆ¬£¬£¬£¬£¬£¬½ûÓóɶÔÖØÐÂÌìÉúÃÜÔ¿ÒÔ¼°½ûÓö¯Ì¬·ÖƬ¡£¡£¡£¡£


Îó²îÁÐ±í¼°ÏêϸӰÏì


Wi-FiÉè¼ÆÈ±ÏÝÏà¹ØµÄÎó²î°üÀ¨£º


CVE񅧏
Îó²îÏÈÈÝ
Îó²îÓ°Ïì
CVE-2020-24588
Õë¶ÔA-MSDU¾ÛºÏµÄ×¢Èë¹¥»÷£¨ÎÞЧµÄSPP A-MSDU±£»£»£»£»¤»úÖÆ£©

¹¥»÷Õ߿ɲåÈë¶ñÒâÖ¡£¬£¬£¬£¬£¬¸Ä¶¯Êý¾Ý°ü

CVE-2020-24587
»ìÏýÃÜÔ¿¹¥»÷£¨ÖØ×éʱʹÓòî±ðÃÜÔ¿¼ÓÃܵķ֯¬ÃÜÈ¡Óû§µÄÃô¸ÐÊý¾Ý
CVE-2020-24586
·ÖƬ»º´æ¹¥»÷£¨ÖØÐÂÅþÁ¬µ½ÍøÂçʱ²»É¨³ý·ÖƬ»º´æ£©ÇÔÈ¡Óû§Ãô¸ÐÊý¾Ý»ò¸Ä¶¯í§ÒâÊý¾Ý°ü


Wi-FiʵÏÖÏà¹ØµÄÎó²î°üÀ¨£º


CVE±àºÅÎó²îÏÈÈÝÎó²îÓ°Ïì
CVE-2020-26145

ÔÚ¼ÓÃÜͨѶÖУ¬£¬£¬£¬£¬ÈÔ½ÓÊÜδ¼ÓÃܹ㲥·ÖƬ×÷ΪÍêÕûÖ¡

×ÔÁ¦ÓÚÍøÂçÉèÖ㬣¬£¬£¬£¬²åÈëí§ÒâÖ¡£¬£¬£¬£¬£¬´Ó¶ø¸Ä¶¯Êý¾Ý°ü


CVE-2020-26144

ÔÚ¼ÓÃÜͨѶÖУ¬£¬£¬£¬£¬ÈÔ½ÓÊÜδ¼ÓÃܵÄA-MSDUÖ¡

CVE-2020-26140

ÔÚÊܱ£»£»£»£»¤µÄÍøÂçÖнÓÊÜδ¼ÓÃÜÊý¾ÝÖ¡

CVE-2020-26143

ÔÚÊܱ£»£»£»£»¤µÄÍøÂçÖнÓÊÜ·ÖÆ¬µÄδ¼ÓÃÜÊý¾ÝÖ¡

CVE-2020-26139

ת·¢EAPOL֡ʱδÑéÖ¤·¢ËͶ˵ÄÉí·Ý

ºÍCVE-2020-24588Á¬ÏµÆðÀ´£¬£¬£¬£¬£¬²åÈëÈι¥»÷Õ߿ɲåÈë¶ñÒâÖ¡£¬£¬£¬£¬£¬¸Ä¶¯Êý¾Ý°ü

CVE-2020-26146

¹ØÓÚ·ÇÒ»Á¬Êý¾Ý°ü±àºÅµÄ¼ÓÃÜ·ÖÆ¬ÒÀÈ»¾ÙÐÐÖØÐÂ×éºÏ

ÇÔÈ¡Óû§Ãô¸ÐÊý¾Ý

CVE-2020-26147


¶Ô·ÖƬ¾ÙÐÐÖØÐÂ×éÊÊʱ²»Çø·Ö¼ÓÃÜ»òδ¼ÓÃÜ

¹¥»÷Õ߿ɲåÈë¶ñÒâÖ¡£¬£¬£¬£¬£¬¸Ä¶¯Êý¾Ý°ü


CVE-2020-26142

½«·ÖƬ֡×÷ΪÍêÕûÖ¡¾ÙÐд¦Öóͷ£


CVE-2020-26141

²»ÑéÖ¤·ÖƬ֡µÄTKIP MIC


ͨ¹ýÕâһϵÁÐÎó²î£¬£¬£¬£¬£¬¹¥»÷ÕßÍêÈ«¿ÉÒÔ»ñµÃÓû§µÄÃô¸ÐÐÅÏ¢»òÖ±½Ó¿ØÖÆÖÇÄÜ×°±¸£¬£¬£¬£¬£¬Èç¿ØÖÆÖÇÄܵçÔ´²å×ù£¬£¬£¬£¬£¬ÉõÖÁÖ±½Ó½ÓÊÜÍøÂçÖб£´æÎó²îµÄÅÌËã»ú£¬£¬£¬£¬£¬°Ý¼ûÏÂÎIJο¼×ÊÁÏ[2]¡£¡£¡£¡£


Îó²îÆÊÎö


ÎÒÃÇѡȡÁËÔÚËùÓÐ×°±¸ÆÕ±é±£´æµÄCVE-2020-24586¡¢CVE-2020-24587¡¢CVE-2020-24588Èý¸öÉè¼ÆÎó²î¾ÙÐÐÆÊÎö¡£¡£¡£¡£ÓÉÓÚCVE-2020-24588µÄÎó²îÓ°Ïì½Ï´ó£¬£¬£¬£¬£¬ÎÒÃÇ×ÅÖØ¾ÙÐÐÏÈÈÝCVE-2020-24588¡£¡£¡£¡£ 


1¡¢ÊÖÒÕÅä¾°

ÓÉÓÚ802.11MAC²ãЭÒéãýÃðÁËÏ൱¶à¿ªÏúÓÃ×÷Á´Â·µÄά»¤£¬£¬£¬£¬£¬ÎªÁËÌá¸ßMAC²ãµÄЧÂÊ£¬£¬£¬£¬£¬802.11nÒýÈëÖ¡¾ÛºÏÊÖÒÕ£¬£¬£¬£¬£¬±¨ÎÄÖ¡¾ÛºÏÊÖÒÕ°üÀ¨£ºA-MSDU(MACЧÀÍÊý¾Ýµ¥Î»¾ÛºÏ) ¼° A-MPDU(MACЭÒéÊý¾Ýµ¥Î»¾ÛºÏ)¡£¡£¡£¡£


A-MSDUÔÊÐí¶ÔÄ¿µÄµØ¼°Ó¦Óö¼ÏàͬµÄ¶à¸öA-MSDU×ÓÖ¡¾ÙÐоۺÏ£¬£¬£¬£¬£¬¾ÛºÏºóµÄ¶à¸ö×ÓÖ¡Ö»ÓÐÒ»¸öÅäºÏµÄMACÖ¡Í·£¬£¬£¬£¬£¬µ±¶à¸ö×ÓÖ¡¾ÛºÏµ½Ò»Æðºó£¬£¬£¬£¬£¬´Ó¶øïÔÌ­ÁË·¢ËÍÿһ¸ö802.11±¨ÎÄËùÐèµÄPLCP Preamble¡¢PLCP HeaderºÍ802.11MACÍ·µÄ¿ªÏú£¬£¬£¬£¬£¬Í¬Ê±ïÔÌ­ÁËÓ¦´ðÖ¡µÄÊýÄ¿£¬£¬£¬£¬£¬´Ó¶øÌá¸ßÎÞÏß´«ÊäЧÂÊ¡£¡£¡£¡£A-MSDU±¨ÎÄÖ¡¾ÛºÏÊÖÒÕÊÇ802.11nЭÒéµÄÇ¿ÖÆÒªÇ󣬣¬£¬£¬£¬ËùÓÐÖ§³Ö802.11nЭÒéµÄ×°±¸¶¼±ØÐèÖ§³Ö¡£¡£¡£¡£


ÏÂͼʾÒâÁËÔÚ802.11ЭÒéÕ»ÖУ¬£¬£¬£¬£¬·¢ËͶ˺ÍÎüÊÕ¶ËÊÇÈçÄÇÀïÖÃA-MSDUÊý¾ÝµÄ¡£¡£¡£¡£


1.png

ͼ1. 802.11ЭÒéÊý¾Ý´¦Öóͷ£Á÷³Ì 


ÔÚ802.11ЭÒéÕ»ÖУ¬£¬£¬£¬£¬·¢ËͶËδÀ´×Ô3-7²ãµÄÍøÂçÊý¾Ý¾­ÓÉÊý¾ÝÁ´Â·²ãµÄLLC×Ó²ãÌí¼ÓLLC/SNAPÍ·ºó·â×°³ÉMSDU(MACЧÀÍÊý¾Ýµ¥Î»£©£¬£¬£¬£¬£¬MSDU¾­ÓÉÌí¼ÓDA¡¢SA¡¢³¤¶È¼°padingºó£¬£¬£¬£¬£¬·â×°³ÉA-MSDU×ÓÖ¡£¬£¬£¬£¬£¬ÔÚMAC×Ó²ãµÄ¶¥²ã½«¶à¸öA-MSDU×ÓÖ¡·â×°³ÉA-MSDU£¬£¬£¬£¬£¬¾­MAC×Ó²ãºó£¬£¬£¬£¬£¬Ö¡Êý¾Ý±»Ìí¼ÓÉÏMACÍ·¼°Ö¡Î²·â×°³É802.11Êý¾ÝÖ¡£¡£¡£¡£¨MPDU£©£¬£¬£¬£¬£¬MPDU/PSDU¾­ÓÉÎïÀí²ãÌí¼ÓPLCP Preamble£¨PLCPǰµ¼Â룩¼°PLCP Header£¨PHYÍ·£©£¬£¬£¬£¬£¬ÎÞÏß²à×îºóͨ¹ýÉ䯵¿Ú½«¶þ½øÖÆÁ÷·¢Ë͵½ÎüÊÕ¶Ë¡£¡£¡£¡£


ÎüÊÕ¶Ëͨ¹ýÏ෴·¾¶¶Ô802.11Êý¾ÝÖ¡¾ÙÐвð½â£¬£¬£¬£¬£¬×îºó»ñµÃ·¢ËͶ˵Ä3-7²ãµÄÍøÂçÊý¾Ý¡£¡£¡£¡£


A-MSDUµÄЭÒéÊý¾Ý×é³ÉÈçͼ2Ëùʾ£¬£¬£¬£¬£¬ÎÒÃÇ´ÓÉϵ½Ï¾ÙÐл®±ç°×Ã÷£º

£¨1£©Ò»¸öMSDUÓÉLCC/SNAPÍ·¡¢IPÍ·¡¢TCP/UDPÍ·¼°Ð­ÒéÊý¾ÝData×é³É¡£¡£¡£¡£

£¨2£©MSDUÌí¼ÓDA(Ä¿µÄµØµã)£¬£¬£¬£¬£¬SA(Ô´µØµã)£¬£¬£¬£¬£¬ºóÐøÊý¾Ý³¤¶È¼°Padding(ËÄ×Ö½Ú¶ÔÆë)×é³ÉÒ»¸öMSDU×ÓÖ¡¡£¡£¡£¡£

£¨3£©¶à¸öMSDU×ÓÖ¡×é³ÉÒ»¸ö802.11Ö¡µÄA-MSDUÓò¡£¡£¡£¡£

£¨4£©802.11Êý¾Ý֡ͨ¹ýQOS ControlµÄA-MSDU PresentλÀ´ÌåÏÖÕâÊÇÒ»¸ö°üÀ¨A-MSDUÓòµÄÊý¾ÝÖ¡¡£¡£¡£¡£


2.png

 Í¼2. A-MSDUÊý¾Ý×é³ÉʾÒâ


ÔÚ802.11ЭÒéÖУ¬£¬£¬£¬£¬Ò»¸öͨË×µÄ802.11Êý¾ÝÖ¡ÓëA-MSDUÊý¾ÝÖ¡µÄ½á¹¹ÊÇÏàͬµÄ£¬£¬£¬£¬£¬Ö»ÊÇQOS ControlÓòµÄA-MSDU Presetλ Ϊ1£¬£¬£¬£¬£¬Ôò±êʾÁ˸ÃÊý¾ÝÖ¡ÊÇÒ»¸öA-MSDUÊý¾ÝÖ¡¡£¡£¡£¡£A-MSDU PresetλΪ0£¬£¬£¬£¬£¬Ôò±êʾÕâÊÇͨË×802.11Êý¾ÝÖ¡¡£¡£¡£¡£


ÔÚ802.11ЭÒéÖÐWEP¼°CCMPÖ»±£»£»£»£»¤802.11MACµÄÓÐÓÃÔØºÉ£¬£¬£¬£¬£¬ÖÁÓÚ802.11Ö¡Í·ÒÔ¼°Ï²ãЭÒéµÄ±êÍ·ÔòÔ­·â²»¶¯£¬£¬£¬£¬£¬Ò²¾ÍÊÇ˵802.11ЭÒéÖÐÊý¾ÝÖ¡ÖÐQOS Control²¢Ã»ÓмÓÃÜ£¬£¬£¬£¬£¬ÕâΪ¹¥»÷ÕßÌṩÁ˹¥»÷Èë¿Ú¡£¡£¡£¡£


3.png

ͼ3. CCMP¼ÓÃܵÄ802.11Êý¾ÝÖ¡ÃûÌÃ


Ϊ±ÜÃâÖÐÐÄÈ˹¥»÷£¬£¬£¬£¬£¬IEEEÔÚ2011ÄêÉè¼ÆÁËSPPA-MSDU»úÖÆÀ´±£»£»£»£»¤A-MSDU Presetλ¼°A-MSDUµÄPayload¡£¡£¡£¡£SPP A-MSDUͨ¹ýÔÚRSN capabilities ÓòÖÐÌí¼ÓSPP A-MSDU Capable¼°SPP A-MSDU RequiredÀ´±êʾÊÇ·ñÖ§³ÖSPP A-MSDU»úÖÆ¼°ÊÇ·ñ½ÓÄÉSPP A-MSDU»úÖÆ¡£¡£¡£¡£


4.png

ͼ4. RSN Capabilities ÓòÊý¾ÝÃûÌÃ


2¡¢Õë¶ÔA-MSDU¾ÛºÏµÄÖ¡×¢Èë¹¥»÷(CVE-2020-24588)


ËäÈ»ÓÐSPP A-MSDU»úÖÆÀ´±£»£»£»£»¤A-MSDU Presetλ²»±»¸Ä¶¯£¬£¬£¬£¬£¬¿ÉÊÇÔÚÏÖʵµÄ²âÊÔÖУ¬£¬£¬£¬£¬ÏÕЩËùÓеÄ×°±¸¶¼²»×ñÕÕSPP A-MSDU»úÖÆ£¬£¬£¬£¬£¬ÕâʹµÃÖÐÐÄÈ˹¥»÷³ÉΪ¿ÉÄÜ¡£¡£¡£¡£


ÎÒÃǼÙÉè·¢ËͶ˷¢ËÍÁËÒ»¸öÕý³£µÄ802.11Êý¾ÝÖ¡£¬£¬£¬£¬£¬ÕâÊÇÒ»¸öÄÚÀï·â×°µÄÊÇÒ»¸öͨË×TCP°ü£¬£¬£¬£¬£¬Æädst=¡°192.168.1.2", src="1.2.3.4", id=34


5.png

ͼ5. ԭʼµÄ802.11Êý¾ÝÖ¡


ÓÉÓÚÆ«ÒÆ0x18µÄQOS Control(0200£©²»Êܱ£»£»£»£»¤£¬£¬£¬£¬£¬¹¥»÷Õß¿ÉÒÔ½« QOS ControlÓòÖеÄA-MSDU Preset·­×ªÎª1£¬£¬£¬£¬£¬Ê¹µÃQOS ControlµÄֵΪ8200£¬£¬£¬£¬£¬Í¬Ê±ÔÚ֡ĩβעÈë¶ñÒâµÄA-MSDU×ÓÖ¡2£¨ÈçÏÂͼµÄºìÉ«Ïß±êʾ£©£¬£¬£¬£¬£¬×îºó·¢Ë͸øÎüÊÕ¶Ë¡£¡£¡£¡£


6.png

 Í¼6. ¸Ä¶¯ºóµÄ802.11A-MSDUÊý¾ÝÖ¡


ÓÉÓÚQOS ControlÓòÖеÄA-MSDU Preset·­×ªÎª1£¬£¬£¬£¬£¬µ±ÎüÊÕ¶ËÎüÊÕµ½Êý¾ÝÖ¡ºó£¬£¬£¬£¬£¬»á°´A-MSDUÃûÌÃÀ´²ð½âÄÚÀïµÄÊý¾Ý¡£¡£¡£¡£Êý¾Ý±»Ê¶±ð³ÉÁ½¸öA-MSDU×ÓÖ¡¡£¡£¡£¡£A-MSDU×ÓÖ¡1ÖеÄÊý¾ÝÊÇԭʼµÄMSDUÊý¾Ý£¬£¬£¬£¬£¬ÒÔÊǻᱻЭÒéÕ»ÑïÆú£¬£¬£¬£¬£¬µ«µÚ¶þ¸ö×ÓÖ¡»á±»×¼È·ÆÊÎö²¢´¦Öóͷ£¡£¡£¡£¡£ÕâÉÏÃæµÄÀý×ÓÖеڶþ¸ö×ÓÖ¡»á±»Ê¶±ð³ÉICMP ping°ü£¬£¬£¬£¬£¬ÎüÊÕ¶Ë»á»Ø¸´Ò»¸öICMP echo Reply¸ø·¢ËͶË¡£¡£¡£¡£


ÊÓÆµ1. ·¢ËͶËÊÕµ½ICMP echo Reply


ÏÂͼʾÒâÁËÖÐÐÄÈËÖ¡×¢ÈëÁ÷³Ì£º


7.png

 Í¼7. ÖÐÐÄÈËÖ¡×¢ÈëÁ÷³Ì 


£¨1£©STA£¨ÖÕ¶Ë£©ºÍAP£¨ÈÈÃÅ/ÎÞÏß·ÓÉÆ÷£©ÐŵÀA£¨ÈçÐŵÀ6£©, ½¨Éè¹ØÁª

£¨2£©MITMʹÓöàÐŵÀÖÐÐÄÈËÊÖÒÕʹµÃSTAÒÔΪAPÒѾ­Çл»µ½ÐŵÀB£¨ÈçÐŵÀ11£©¡£¡£¡£¡£

£¨3£©STAÔÚÐŵÀ11¸ø MITM·¢ËͼÓÃܵÄWifiÕý³£Êý¾ÝÖ¡¡£¡£¡£¡£

£¨4£©MITM½« ÎüÊÕµ½µÄWifiÖ¡QOSÓòµÄA-MSDU Preset±êʾÉèΪ1£¬£¬£¬£¬£¬Í¬Ê±²åÈë¸Ä¶¯µÄA-MSDUÊý¾Ý¡£¡£¡£¡£°ÑÒ»¸öÕý³£µÄWifiÖ¡¸Ä³ÉÒ»¸öA-MSDUÖ¡£¬£¬£¬£¬£¬²¢×¢ÈëÒ»¸öICMPÇëÇó°ü£¬£¬£¬£¬£¬²¢ÔÚͨµÀ6·¢¸øAP¡£¡£¡£¡£

£¨5£©APÎüÊÕµ½A-MSDUÊý¾ÝÖ¡£¬£¬£¬£¬£¬AP²ð½âA-MSDU£¬£¬£¬£¬£¬·Ö³É¶à¸öA-MSDU×ÓÖ¡£¬£¬£¬£¬£¬ÆäÖеÚÒ»¸öA-MSDU×Ó֡Ϊ²»·¨°ü£¬£¬£¬£¬£¬»á±»ÑïÆú£¬£¬£¬£¬£¬µ«ºóÐøµÄMSDU×ÓÖ¡»á±»ÏµÍ³Õý³£´¦Öóͷ£¡£¡£¡£¡£AP»á»Ø¸´ÊÕµ½Ò»¸öICMP Echo Ó¦´ð¸øMITM¡£¡£¡£¡£

£¨6£©MITMÊÕµ½APµÄ»Ø¸´ºó£¬£¬£¬£¬£¬½«ÎüÊÕµ½µÄWIFI֡ת·¢¸øSTA£¬£¬£¬£¬£¬ÕâÑùSTAÊÕµ½AP»Ø¸´µÄICMPÓ¦´ð¡£¡£¡£¡£


CVE-2020-24588µÄÐÞ¸´


½ñÄê3ÔÂWindowsÐû²¼ÁËÏìÓ¦µÄ²¹¶¡£¬£¬£¬£¬£¬ÐÞ¸´ÁËFragAttacksϵÁÐÎó²î£¬£¬£¬£¬£¬5ÔÂ11ÈÕLinuxÒ²Ðû²¼ÁËFragAttacksϵÁÐÎó²î²¹¶¡[6]£¬£¬£¬£¬£¬LinuxÕë¶ÔCVE-2020-24588µÄÐÞ¸´ÈçÏ£º


---

 net/wireless/util.c | 3 +++

 1 file changed, 3 insertions(+)

 

diff --git a/net/wireless/util.c b/net/wireless/util.c

index 39966a873e40..7ec021a610ae 100644

--- a/net/wireless/util.c

+++ b/net/wireless/util.c

@@ -771,6 +771,9 @@ void ieee80211_amsdu_to_8023s(struct sk_buff *skb, struct sk_buff_head *list,

 remaining = skb->len - offset;

 if (subframe_len > remaining)

 goto purge;

+/* mitigate A-MSDU aggregation injection attacks */

+if (ether_addr_equal(eth.h_dest, rfc1042_header))

+goto purge;

 

 offset += sizeof(struct ethhdr);

 last = remaining <= subframe_len + padding;

--


ÓÉÓÚÔÚA-MSDU¾ÛºÏ×¢Èë¹¥»÷ÖУ¬£¬£¬£¬£¬ÐèÒª½«Í¨Ë×¼ÓÃÜWi-Fi֡ת»»ÎªA-MSDUÖ¡¡£¡£¡£¡£ÕâÒâζ×ŵÚÒ»¸öA-MSDU×ÓÖ¡µÄǰ6×Ö½Ú¶ÔÓ¦ÓÚRFC1042µÄÖ¡Í·£¬£¬£¬£¬£¬liunxÄÚºËͨ¹ýÔöÌíÅжÏDA£¨Ä¿µÄµØµã£©ÊÇ·ñºÍrfc1042_header(\xaa\xaa\x03\x00\x00\x00)Ò»Ö£¬£¬£¬£¬£¬ÈôÊÇÏàµÈÔòÒÔΪÊǶñÒâ¹¥»÷£¬£¬£¬£¬£¬¿ÉÒÔ°ÑÕâ¸öA-MSDUÖ¡ÑïÆú¡£¡£¡£¡£


»ìÏýÃÜÔ¿¹¥»÷(CVE-2020-24587)


8.png

ͼ8.»ìÏýÃÜÔ¿¹¥»÷Á÷³Ì


ÔÚ°ì·¨1µ±ÖУ¬£¬£¬£¬£¬¹¥»÷ÕßÓÕµ¼Êܺ¦Õß»á¼ûÊܹ¥»÷Õß¿ØÖƵÄЧÀÍÆ÷£¬£¬£¬£¬£¬Í¨¹ýһЩÊֶΣ¬£¬£¬£¬£¬ºÃ±ÈÖ¸¶¨Ò»¸ö³¬³¤µÄURL£¬£¬£¬£¬£¬´Ó¶øÊ¹Êܺ¦Õß·¢Ë͵ÄÊý¾Ý°ü²»µÃ²»·Ö³ÉÁ½¶Î¾ÙÐд«Ê䣬£¬£¬£¬£¬·ÖƬµÄÊý¾Ý°üÓÃÃØÔ¿k¼ÓÃÜ£¬£¬£¬£¬£¬ÕâÁ½¸öÊý¾Ý°üΪºÍ¡£¡£¡£¡£¶ø¹¥»÷Õßͨ¹ý¶àÐŵÀµÄÖÐÐÄÈ˾ÙÐÐ×èµ²£¬£¬£¬£¬£¬Ò»µ©¼à²âµ½¹¥»÷ÕßÖ¸¶¨IPÊý¾Ý°ü£¬£¬£¬£¬£¬±ã½«´ËÊý¾Ý°üת·¢¸øAP£¬£¬£¬£¬£¬¼´APÒ»µ©ÊÕµ½´ËÊý¾Ý°üºó£¬£¬£¬£¬£¬¾Í½«Æä½âÃܺ󱣴æÄÚ´æµ±ÖС£¡£¡£¡£ 


ÔÚ°ì·¨2¾ÙÐÐ֮ǰ£¬£¬£¬£¬£¬Êܺ¦ÕßÐèÒªÓëAPÖØÐ¾ÙÐÐËÄ´ÎÎÕÊÖ²¢Ð­ÉÌеÄÃÜÔ¿¡£¡£¡£¡£Ö®ºó¹¥»÷ÕßÆÚ´ýÊܺ¦Õß·¢ËͰüÀ¨Ãô¸ÐÐÅÏ¢µÄÊý¾Ý°ü£¬£¬£¬£¬£¬¼´ºÍ¡£¡£¡£¡£¹¥»÷Õß½«Êý¾Ý°üºÅÂëΪn+1µÄÊý¾Ý°ü×èµ²£¬£¬£¬£¬£¬²¢½«ÆäÐòÁкÅÐÞ¸ÄΪs£¬£¬£¬£¬£¬È»ºóת·¢¸øAP£¬£¬£¬£¬£¬¼´Êý¾Ý°ü¡£¡£¡£¡£¶øAPÖ±½Ó°ÑËû¿´³ÉÐòÁкÅsÊý¾Ý°üµÄµÚ¶þ¸ö·ÖƬÐÅÏ¢£¬£¬£¬£¬£¬½«Ëû½âÃܺóÖØ×é³ÉеÄÊý¾Ý°ü£¬£¬£¬£¬£¬¶øÐµÄÊý¾Ý°üÖаüÀ¨Êܺ¦ÕßµÄÃô¸ÐÐÅÏ¢Óë¹¥»÷ÕßÖ¸¶¨µÄIP¡£¡£¡£¡£ÓÚÊÇÃô¸ÐÐÅÏ¢¾Í±»·¢Ë͵½Êܺ¦Õß¿ØÖƵÄЧÀÍÆ÷ÉÏ£¬£¬£¬£¬£¬Ôì³ÉÐÅϢй¶¡£¡£¡£¡£


·ÖƬ»º´æÍ¶¶¾¹¥»÷(CVE-2020-24586)


9.png

ͼ9.·ÖƬ»º´æÍ¶¶¾¹¥»÷Á÷³Ì


ÔÚ°ì·¨1ÖУ¬£¬£¬£¬£¬¹¥»÷ÕßÐá̽µ½Êܺ¦ÕßµÄMACµØµãºó£¬£¬£¬£¬£¬Î±ÔìÊܺ¦ÕßMACµØµãÈ¥ÅþÁ¬AP¡£¡£¡£¡£ÕâÑù¾Í¿ÉÒÔÕýµ±µÄÓÃÊܺ¦ÕßµÄÉí·ÝÔÚAPµÄÄÚ´æÖвåÈë·ÖƬ¡£¡£¡£¡£


ÔÚ°ì·¨2ÖУ¬£¬£¬£¬£¬Êܺ¦Õß¾ÙÐÐÕý³£µÄÈÏÖ¤ÊÂÇ飬£¬£¬£¬£¬´Ëʱ¹¥»÷Õß·¢ËÍÊý¾Ý°ü£¬£¬£¬£¬£¬Õâ¸öÊý¾Ý°üÖаüÀ¨¹¥»÷ÕßÖ¸¶¨µÄIPÊý¾Ý°ü¡£¡£¡£¡£È»ºóAP½âÃÜ´ËÊý¾Ý°ü£¬£¬£¬£¬£¬²¢ÉúÑÄÔÚÄÚ´æÖУ¬£¬£¬£¬£¬ÒÔÊܺ¦ÕßµÄMACµØµã×÷Ϊ±êʶ¡£¡£¡£¡£È»ºó¹¥»÷Õßͨ¹ý·¢ËÍɨ³ýÈÏÖ¤µÄÊý¾Ý°ü²¢¶Ï¿ªÅþÁ¬£¬£¬£¬£¬£¬ËæºóÔÚÊܺ¦ÕߺÍAPÖ®¼ä½¨ÉèÒ»¸ö¶àÐŵÀµÄÖÐÐÄÈË¡£¡£¡£¡£×¢ÖØ´ËʱAPÄÚ´æÖÐµÄ·ÖÆ¬²¢Ã»Óб»É¨³ý¡£¡£¡£¡£


Ö®ºóÊܺ¦ÕßÓëAPÖ®¼ä¾ÙÐÐÕý³£µÄÅþÁ¬¡£¡£¡£¡£´Ëʱ¹¥»÷ÕßÖ»ÐèÒªÆÚ´ýÊܺ¦Õß·¢Ë͵ڶþ¸ö·ÖƬ£¬£¬£¬£¬£¬Êý¾Ý°üºÅÂëΪn+1£¬£¬£¬£¬£¬¹¥»÷Õß½«´ËÊý¾Ý°ü×èµ²ºó£¬£¬£¬£¬£¬²¢½«´ËÊý¾Ý°üµÄÐòÁкÅÐÞ¸ÄΪs£¬£¬£¬£¬£¬È»ºóÆäת·¢¸øAP£¬£¬£¬£¬£¬¼´Êý¾Ý°ü£¬£¬£¬£¬£¬Ò»µ©APÊÕµ½´ËÊý¾Ý°ü£¬£¬£¬£¬£¬ºÍ»ìÏýÃÜÔ¿Îó²îÀàËÆ£¬£¬£¬£¬£¬AP»á½«´ËÊý¾Ý°ü½âÃÜ£¬£¬£¬£¬£¬²¢ºÍÖ®ËÞÊÀ±£´æ»º´æÖеÄÊý¾Ý°üÖØ×é³ÉеÄÊý¾Ý°ü£¬£¬£¬£¬£¬ÓÉÓÚÕâÁ½¸öÊý¾Ý°ü°üÀ¨ÏàͬµÄMACµØµãºÍÐòÁкÅ¡£¡£¡£¡£×îºó£¬£¬£¬£¬£¬AP½«ÖØ×éºóµÄÊý¾Ý°ü·¢Ë͸ø¹¥»÷Õß¿ØÖƵÄЧÀÍÆ÷£¬£¬£¬£¬£¬´Ó¶øÔì³ÉÃô¸ÐÐÅϢй¶¡£¡£¡£¡£


²Î¿¼Á´½Ó£º

¡¾1¡¿https://papers.mathyvanhoef.com/usenix2021.pdf

¡¾2¡¿https://www.youtube.com/embed/88YZ4061tYw

¡¾3¡¿https://www.fragattacks.com/#notpatched

¡¾4¡¿https://github.com/vanhoefm/fragattacks

¡¾5¡¿https://lore.kernel.org/linux-wireless/20210511180259.159598-1-johannes@sipsolutions.net/


c7c7ÓéÀÖÆ½Ì¨Æð¾¢·ÀÓùʵÑéÊÒ£¨ADLab£©


ADLab½¨ÉèÓÚ1999Ä꣬£¬£¬£¬£¬ÊÇÖйúÇå¾²ÐÐÒµ×îÔ罨ÉèµÄ¹¥·ÀÊÖÒÕÑо¿ÊµÑéÊÒÖ®Ò»£¬£¬£¬£¬£¬Î¢ÈíMAPPÍýÏë½¹µã³ÉÔ±£¬£¬£¬£¬£¬¡°ºÚȸ¹¥»÷¡±¿´·¨Ê×ÍÆÕß¡£¡£¡£¡£×èÖ¹ÏÖÔÚ£¬£¬£¬£¬£¬ADLabÒÑͨ¹ýCVEÀÛ¼ÆÐû²¼Çå¾²Îó²î½ü1100¸ö£¬£¬£¬£¬£¬Í¨¹ý CNVD/CNNVDÀÛ¼ÆÐû²¼Çå¾²Îó²î1000Óà¸ö£¬£¬£¬£¬£¬Ò»Á¬¼á³Ö¹ú¼ÊÍøÂçÇå¾²ÁìÓòÒ»Á÷Ë®×¼¡£¡£¡£¡£ÊµÑéÊÒÑо¿Æ«Ïòº­¸Ç²Ù×÷ϵͳÓëÓ¦ÓÃϵͳÇå¾²Ñо¿¡¢ÖÇÄÜÖÕ¶ËÇå¾²Ñо¿¡¢ÎïÁªÍøÖÇÄÜ×°±¸Çå¾²Ñо¿¡¢WebÇå¾²Ñо¿¡¢¹¤¿ØÏµÍ³Çå¾²Ñо¿¡¢ÔÆÇå¾²Ñо¿¡£¡£¡£¡£Ñо¿Ð§¹ûÓ¦ÓÃÓÚ²úÆ·½¹µãÊÖÒÕÑо¿¡¢¹ú¼ÒÖØµã¿Æ¼¼ÏîÄ¿¹¥¹Ø¡¢×¨ÒµÇ徲ЧÀ͵È¡£¡£¡£¡£


adlab.jpg