DPDK vhost¶à¸öÇå¾²Îó²îͨ¸æ
Ðû²¼Ê±¼ä 2020-09-290x00 Îó²î¸ÅÊö
Êý¾ÝÆ½Ãæ¿ª·¢Ì×¼þDPDKÊÇÓÉ6WINDºÍIntelµÈ¶à¼Ò¹«Ë¾¿ª·¢£¬Ö÷Òª»ùÓÚLinuxϵͳÔËÐУ¬ÓÃÓÚ¿ìËÙÊý¾Ý°ü´¦Öóͷ£µÄº¯Êý¿âÓëÇý¶¯ÜöÝÍ£¬¿ÉÒÔ¼«´óÌá¸ßÊý¾Ý´¦Öóͷ£ÐÔÄܺÍÍÌÍÂÁ¿£¬²¢Ìá¸ßÊý¾ÝÆ½ÃæÓ¦ÓóÌÐòµÄÊÂÇéЧÂÊ¡£
2020Äê09ÔÂ28ÈÕ£¬DPDK¿ª·¢ÍŶÓÐû²¼ÁËDPDK vhost¶à¸ö¸ßΣÎó²îµÄÇ徲ͨ¸æ¡£ÆäÖаüÀ¨Ô¶³Ì´úÂëÖ´ÐÐÎó²î¡¢»º³åÇøÒç³öÎó²îºÍ¾Ü¾ø·þÎñÎó²îµÈ¡£
0x01 Îó²îÏêÇé

´Ë´ÎÐû²¼µÄDPDK vhostÇå¾²Îó²îÈçÏ£º
Îó²î±àºÅ | Îó²îÀàÐÍ | ÑÏÖØË®Æ½ | ÆÀ·Ö |
CVE-2020-14374 | Ô¶³Ì´úÂëÖ´ÐÐ | ¸ß | 8.8 |
CVE-2020-14375 | »º³åÇøÒç³ö | ¸ß | 7.8 |
CVE-2020-14376 | »º³åÇøÒç³ö | ¸ß | 7.8 |
CVE-2020-14377 | »º³åÇøÒç³ö | ¸ß | 7.1 |
CVE-2020-14378 | ¾Ü¾ø·þÎñ | µÍ | 3.3 |
Ó°Ïì¹æÄ£
dpdk:<18.11.10
dpdk:<19.11.5
Îó²îÏêÇé
DPDK vhost´úÂëÖ´ÐÐÎó²î£¨CVE-2020-14374£©
¸ÃÎó²îÊÇÓÉÓÚcopy_dataº¯ÊýÖеĽçÏß¼ì²é²»×¼È·µ¼Ö»º³åÇøÒç³ö¡£¹¥»÷Õß¿ÉÒÔʹÓûº³åÇøÒç³öÔÚvhost_cryptoÓ¦ÓóÌÐòÖеÄÈκεصãдÈëí§ÒâÊý¾Ý¡£
ÀÖ³ÉʹÓøÃÎó²îµÄ¹¥»÷Õß¿ÉÒÔÔÚvhost_cryptoÀú³ÌÖÐÖ´ÐÐÔ¶³Ì´úÂ룬²¢¿Éµ¼ÖÂÐéÄâ»úÌÓÒÝ¡£
BugzillaÁ´½Ó£ºhttps://bugs.dpdk.org/show_bug.cgi?id=272
DPDK vhost»º³åÇøÒç³öÎó²î£¨CVE-2020-14375£©
¸ÃÎó²îÊÇÓÉÓÚDPDK vhost_crypto.cÖÐVirtio RingÐÎò·û¼°ÄÚ´æÇøÓòÖеÄÊý¾Ý¿ÉÒÔ±»ÐéÄâ»úºÍÖ÷ʱ»ú¼û¡£¹¥»÷Õßͨ¸æÐ޸ĸÃÄÚ´æÇøÓòµÄÄÚÈÝ£¬¿ÉÔì³É»º³åÇøÒç³ö¡£²¢ÇÒµ±Öª×ãÎó²îCVE-2020-14374µÄÇéÐÎʱ¿ÉÔì³É´úÂëÖ´ÐС£
BugzillaÁ´½Ó£ºhttps://bugs.dpdk.org/show_bug.cgi?id=272
DPDK vhost»º³åÇøÒç³öÎó²î£¨CVE-2020-14376£©
DPDK vhost_crypto.cÔÚ´ÓÐéÄâ»úÄÚ´æ¸´ÖÆ iv_data Êý¾Ýµ½Ö÷»úʱ£¬È±ÉÙ½çÏß¼ì²éÄÚ´æ¿ÉÄܵ¼Ö»º³åÇøÒç³ö¡£
¹¥»÷Õßͨ¹ý¿ØÖÆcipher->para.iv_len ²ÎÊý£¬×î¶à¿ÉÒÔ¸´ÖÆ4GÊý¾Ýµ½ iv_data µÄ»º³åÇø£¬¿ÉÔì³É»º³åÇøÒç³ö£¬²¢ÔÚÌØ¶¨Ìõ¼þϵ¼Ö´úÂëÖ´ÐС£
BugzillaÁ´½Ó£ºhttps://bugs.dpdk.org/show_bug.cgi?id=272
DPDK vhost»º³åÇøÒç³öÎó²î£¨CVE-2020-14377£©
DPDK vhost_crypto.cÖÐȱ·¦¶Ô cipher->para.dst_data_len µÄУÑé¡£¹¥»÷Õßͨ¹ý¿ØÖƸòÎÊý£¬¿ÉÒÔÔì³É»º³åÇøÔ½½ç¶ÁÈ¡¡£
¸ÃÎó²î¿ÉÒÔ½«´ó×ÚµÄÖ÷»úÄÚ´æÄÚÈݶÁÈ¡µ½ÐéÄâ»úÄÚ´æÖУ¬²¢ÇÒ¿ÉÒÔÓëÎó²îCVE-2020-14374 ÍŽáʹÓ㬿ɵ¼ÖÂvhost_cryptoÀú³ÌÊý¾Ý±»í§Òâ¶ÁÈ¡¡£
BugzillaÁ´½Ó£ºhttps://bugs.dpdk.org/show_bug.cgi?id=272
DPDK vhost¾Ü¾ø·þÎñÎó²î£¨CVE-2020-14378£©
DPDK vhost_crypto.cÖУ¬move_descº¯ÊýÖеÄÕûÊýÏÂÒç»áµ¼ÖÂÐí¶àcpuÖÜÆÚ±»³¤Ê±¼äÔËÐеÄÑ»·ËùÍÌÊÉ¡£¹¥»÷Õß×î¶àÄܵ¼ÖÂmove_descÏÝÈë4,294,967,295µü´úÑ»·ÖС£ ͬʱƾ֤ʹÓÃvhost_cryptoµÄ·½·¨£¬Õâ¿ÉÄÜ»áÓ°ÏìÆäËûÐéÄâÇéÐλòDPDK lcoreÖ´ÐÐЧÂÊ¡£
ÀÖ³ÉʹÓôËÎó²îµÄ¹¥»÷Õß¿ÉÔì³É¾Ü¾ø·þÎñ¡£
BugzillaÁ´½Ó£ºhttps://bugs.dpdk.org/show_bug.cgi?id=272
0x02 ´¦Öóͷ£½¨Òé
½¨ÒéÉý¼¶ÖÁDPDK×îа汾¡£
ÏÂÔØÁ´½Ó£º
https://fast.dpdk.org/rel/dpdk-19.11.5.tar.xz
http://fast.dpdk.org/rel/dpdk-18.11.10.tar.xz
0x03 ²Î¿¼Á´½Ó
https://seclists.org/oss-sec/2020/q3/200
https://bugs.dpdk.org/show_bug.cgi?id=272
0x04 ʱ¼äÏß
2020-09-28 DPDKÐû²¼Ç徲ͨ¸æ
2020-09-29 VSRCÐû²¼Ç徲ͨ¸æ
0x05 ¸½Â¼
CVSSÆÀ·Ö±ê×¼¹ÙÍø£ºhttp://www.first.org/cvss/



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