¡¾Îó²îͨ¸æ¡¿Linux SnapÍâµØÌáȨÎó²î£¨CVE-2021-44731£©

Ðû²¼Ê±¼ä 2022-02-18

0x00 Îó²î¸ÅÊö

CVE   ID

CVE-2021-44731

ʱ    ¼ä

2022-02-17

Àà    ÐÍ

ȨÏÞÌáÉý

µÈ    ¼¶

¸ßΣ

Ô¶³ÌʹÓÃ

·ñ

Ó°Ïì¹æÄ£


¹¥»÷ÖØÆ¯ºó

¸ß

Óû§½»»¥

ÎÞ

PoC/EXP

ÊÇ

ÔÚҰʹÓÃ


 

0x01 Îó²îÏêÇé

SnapÊÇCanonical¹«Ë¾ÍƳöµÄÒ»ÖÖеÄÈí¼þ°ü¹ÜÀí·½·¨£¬£¬£¬£¬£¬½â¾öÁËlinuxÒÀÀµÐÔµÄÎÊÌ⣬£¬£¬£¬£¬Snap Èí¼þ°üÓµÓÐÔ½·¢Îȹ̺ÍÇå¾²µÄÌØÕ÷¡£¡£¡£¡£Snap-confine ÊÇ snapd ÄÚ²¿Ê¹ÓõÄÒ»¸ö³ÌÐò£¬£¬£¬£¬£¬ÓÃÓÚ¹¹½¨ snap Ó¦ÓóÌÐòµÄÖ´ÐÐÇéÐΡ£¡£¡£¡£

2ÔÂ17ÈÕ£¬£¬£¬£¬£¬Qualys Çå¾²Ñо¿Ö°Ô±¹ûÕæÅû¶ÁËÔÚsnap-confine Öз¢Ã÷µÄÒ»¸öÍâµØÈ¨ÏÞÌáÉýÎó²î (CVE-2021-44731)£¬£¬£¬£¬£¬Æä CVSSv3ÆÀ·ÖΪ7.8£¬£¬£¬£¬£¬ÀÖ³ÉʹÓôËÎó²îÔÊÐíÈκηÇÌØÈ¨Óû§ÔÚÒ×Êܹ¥»÷µÄÖ÷»úÉÏ»ñµÃ root ȨÏÞ£¬£¬£¬£¬£¬ÏÖÔÚÑо¿Ö°Ô±ÒÑÐû²¼ÁË´ËÎó²îµÄPoC¡£¡£¡£¡£µ«ÓÉÓÚsnap-confine ʹÓÃÁËÒ»ÖÖºÜÊǾßÓзÀÓùÐԵıà³ÌÆø¸Å£¬£¬£¬£¬£¬Òò´ËʹÓà snap-confine ÖеÄÎó²î¼«¾ßÌôÕ½ÐÔ¡£¡£¡£¡£

snapd 2.54.2 snap-confine¶þ½øÖÆÎļþÔÚΪsnap×¼±¸Ë½ÓйÒÔØÃüÃû¿Õ¼äʱ±£´æ¾ºÕùÌõ¼þ£¬£¬£¬£¬£¬¿ÉÄÜÔÊÐíÍâµØ¹¥»÷Õßͨ¹ýÔÚsnapµÄ˽ÓйÒÔØÃüÃû¿Õ¼äÄڰ󶨹ÒÔØ×Ô¼ºµÄÄÚÈÝÀ´»ñµÃrootȨÏÞ£¬£¬£¬£¬£¬²¢µ¼ÖÂsnap-confineÖ´ÐÐí§Òâ´úÂ룬£¬£¬£¬£¬´Ó¶øÊµÏÖȨÏÞÌáÉý¡£¡£¡£¡£

³ýCVE-2021-44731Í⣬£¬£¬£¬£¬Ñо¿Ö°Ô±»¹ÔÚsnap-confine¡¢util-linux¡¢glibcºÍsystemdÖз¢Ã÷ÁËÆäËü6¸öÎó²î£¬£¬£¬£¬£¬7¸öÎó²îÈçÏ£º

l  CVE-2021-44731£ºsnap-confine µÄ setup_private_mount() ÖеľºÕùÌõ¼þ

l  CVE-2021-44730£ºsnap-confine µÄ sc_open_snapd_tool() ÖеÄÓ²Á´½Ó¹¥»÷

l  CVE-2021-3996£ºutil-linux µÄ libmount ÖÐδ¾­ÊÚȨµÄÐ¶ÔØ

l  CVE-2021-3995£ºutil-linux µÄ libmount ÖÐδ¾­ÊÚȨµÄÐ¶ÔØ

l  CVE-2021-3998£ºÀ´×Ô glibc µÄ realpath() µÄÒâÍâ·µ»ØÖµ

l  CVE-2021-3999£ºglibc µÄ getcwd() ÖеĻº³åÇøÒç³ö

l  CVE-2021-3997£ºsystemd µÄ systemd-tmpfiles Öв»ÊÜ¿ØÖƵĵݹé

 

Ó°Ïì¹æÄ£

Snapd£º2.54.2°æ±¾

glibc£º2021Äê1ÔÂÌá½»µÄc6e0b0b£¨"stdlib: Sync canonicalize with gnulib"£©Ö®ºóµÄ°æ±¾

util-linux£º2018Äê11ÔÂÌá½»µÄ5fea669£¨"libmount: Support unmount FUSE mounts"£©Ö®ºóµÄ°æ±¾

Systemd£º2019Äê2ÔÂÌá½»µÄe535840£¨"tmpfiles: let's bumpRLIMIT_NOFILE for tmpfiles"£©Ö®ºóµÄ°æ±¾

 

0x02 Çå¾²½¨Òé

ÏÖÔÚÕâЩÎó²îÒѾ­ÐÞ¸´£¬£¬£¬£¬£¬½¨ÒéÊÜÓ°ÏìÓû§ÊµÊ±Éý¼¶¸üС£¡£¡£¡£

Snapd£ºÔÚsnapd 2.54.3+18.04¡¢2.54.3+20.04»ò2.54.3+21.10.1°æ±¾ÖÐÐÞ¸´¡£¡£¡£¡£

ÏÂÔØÁ´½Ó£º

https://launchpad.net/ubuntu/+source/snapd/

util-linux¡¢glibcºÍsystemdµÄ²¹¶¡ÒÑÓÚ2022Äê1ÔÂÐû²¼£¬£¬£¬£¬£¬Á´½ÓÈçÏ£º

https://www.openwall.com/lists/oss-security/2022/01/10/2

https://www.openwall.com/lists/oss-security/2022/01/24/2

https://www.openwall.com/lists/oss-security/2022/01/24/4

 

0x03 ²Î¿¼Á´½Ó

https://blog.qualys.com/vulnerabilities-threat-research/2022/02/17/oh-snap-more-lemmings-local-privilege-escalation-vulnerability-discovered-in-snap-confine-cve-2021-44731

https://www.qualys.com/2022/02/17/cve-2021-44731/oh-snap-more-lemmings.txt

https://nvd.nist.gov/vuln/detail/CVE-2021-3997

 

0x04 °æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

ÐÞ¸ÄÄÚÈÝ

V1.0

2022-02-18

Ê×´ÎÐû²¼

 

0x05 ¸½Â¼

¼øºÚµ£±£Íø¼ò½é

¼øºÚµ£±£Íø¹«Ë¾½¨ÉèÓÚ1996Ä꣬£¬£¬£¬£¬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐС°åÕýʽ¹ÒÅÆÉÏÊУ¬£¬£¬£¬£¬ÊǺ£ÄÚ¼«¾ßʵÁ¦µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂçÇå¾²²úÆ·¡¢¿ÉÐÅÇå¾²ÖÎÀíÆ½Ì¨¡¢Ç徲ЧÀÍÓë½â¾ö¼Æ»®µÄ×ÛºÏÌṩÉÌ¡£¡£¡£¡£

¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°£¬£¬£¬£¬£¬ÔÚÌìϸ÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÓзÖÖ§»ú¹¹£¬£¬£¬£¬£¬ÓµÓÐÁýÕÖÌìϵÄÇþµÀϵͳºÍÊÖÒÕÖ§³ÖÖÐÐÄ£¬£¬£¬£¬£¬²¢ÔÚ±±¾©¡¢ÉϺ£¡¢³É¶¼¡¢¹ãÖÝ¡¢³¤É³¡¢º¼ÖÝµÈ¶àµØÉèÓÐÑз¢ÖÐÐÄ¡£¡£¡£¡£

¶àÄêÀ´£¬£¬£¬£¬£¬¼øºÚµ£±£ÍøÖÂÁ¦ÓÚÌṩ¾ßÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷Á¢ÒìµÄÇå¾²²úÆ·ºÍ×î¼Ñʵ¼ùЧÀÍ£¬£¬£¬£¬£¬×ÊÖú¿Í»§ÖÜÈ«ÌáÉýÆäIT»ù´¡ÉèÊ©µÄÇå¾²ÐÔºÍÉú²úЧÄÜ£¬£¬£¬£¬£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢Çå¾²¹¤ÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸Æð¾¢¡£¡£¡£¡£

 

¹ØÓÚ¼øºÚµ£±£Íø

¼øºÚµ£±£ÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖ÷ÒªÇå¾²Îó²îµÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÇå¾²±¨¸æ¡£¡£¡£¡£

¹Ø×¢ÒÔϹ«Öںţ¬£¬£¬£¬£¬»ñȡȫÇò×îÐÂÇå¾²×ÊѶ£º

image.png