DPDK vhost¶à¸öÇå¾²Îó²îͨ¸æ

Ðû²¼Ê±¼ä 2020-09-29

0x00 Îó²î¸ÅÊö

Êý¾ÝÆ½Ãæ¿ª·¢Ì×¼þDPDKÊÇÓÉ6WINDºÍIntelµÈ¶à¼Ò¹«Ë¾¿ª·¢£¬£¬£¬£¬£¬£¬£¬£¬Ö÷Òª»ùÓÚLinuxϵͳÔËÐУ¬£¬£¬£¬£¬£¬£¬£¬ÓÃÓÚ¿ìËÙÊý¾Ý°ü´¦Öóͷ£µÄº¯Êý¿âÓëÇý¶¯ÜöÝÍ£¬£¬£¬£¬£¬£¬£¬£¬¿ÉÒÔ¼«´óÌá¸ßÊý¾Ý´¦Öóͷ£ÐÔÄܺÍÍÌÍÂÁ¿£¬£¬£¬£¬£¬£¬£¬£¬²¢Ìá¸ßÊý¾ÝÆ½ÃæÓ¦ÓóÌÐòµÄÊÂÇéЧÂÊ¡£¡£¡£¡£¡£¡£

2020Äê09ÔÂ28ÈÕ£¬£¬£¬£¬£¬£¬£¬£¬DPDK¿ª·¢ÍŶÓÐû²¼ÁËDPDK vhost¶à¸ö¸ßΣÎó²îµÄÇ徲ͨ¸æ¡£¡£¡£¡£¡£¡£ÆäÖаüÀ¨Ô¶³Ì´úÂëÖ´ÐÐÎó²î¡¢»º³åÇøÒç³öÎó²îºÍ¾Ü¾øÐ§ÀÍÎó²îµÈ¡£¡£¡£¡£¡£¡£

 

0x01 Îó²îÏêÇé

 

image.png


´Ë´ÎÐû²¼µÄ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/



 image.png