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Îó²îÇÔÈ¡Ãô¸ÐÓû§Êý¾Ý²¢Ö´ÐжñÒâ´úÂë £¬£¬£¬£¬£¬£¬£¬ÉõÖÁ¿ÉÒÔ½ÓÊÜÕû¸ö×°±¸¡£¡£¡£¡£¡£¡£¡£¡£


¿­·¢k8ADLabµÚһʱ¼ä¶ÔÎó²î¾ÙÐÐÁËÆÊÎö £¬£¬£¬£¬£¬£¬£¬²¢Ìá³öÁËÏìÓ¦µÄ»º½â½¨Òé¡£¡£¡£¡£¡£¡£¡£¡£ÓÉÓÚ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/


¿­·¢k8Æð¾¢·ÀÓùʵÑéÊÒ£¨ADLab£©


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


adlab.jpg