¡¾·ì϶¹«¸æ¡¿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