Linux kernel iSCSI¶à¸ö°²È«·ì϶

°ä²¼¹¦·ò 2021-03-15

0x00 ·ì϶¸ÅÊö

2021Äê03ÔÂ12ÈÕ£¬£¬£¬GRIMMµÄ×êÑÐÈËÔ±Åû¶Linux Äں˵ÄiSCSI×ÓϵͳÖдæÔÚ3¸öÒÑÓÐ15Ä꺹ÇàµÄ°²È«·ì϶£¬£¬£¬ÓµÓÐͨ³£Óû§È¨Ï޵ı¾µØ¹¥»÷Õß¿ÉÄÜÀûÓÃÕâЩ·ìÏ¶ÈÆ¹ý³¬µÈÓû§Ä£Ê½Ö´Ðб£»£»£»¤£¨SMEP£©¡¢³¬µÈÓû§Ä£Ê½½Ó¼û±£»£»£»¤£¨SMAP£©ºÍÄÚºËÒ³±í¸ôÀ루 KPTI£©£¬£¬£¬×îÖÕ»ñµÃLinuxϵͳÉϵÄrootÓû§È¨ÏÞ¡£

0x01 ·ì϶ÏêÇé

image.png

 

SCSI£¨Ð¡ÐÍÍÆËã»úϵͳ½Ó¿Ú£©ÊÇÓÃÓÚ´«ÊäÊý¾ÝµÄ³ß¶È£¬£¬£¬¸ÃÊý¾Ý×î³õÊÇͨ¹ýÎïÀíµçÀ£¨ÈçÓ²ÅÌÇý¶¯Æ÷£©´«ÊäÒÔ½«ÍÆËã»úÓëÍâΧÉ豸ÏÎ½ÓÆðÀ´µÄ¡£SCSIÊÇÒ»¸ö¹ÅÀϵij߶È£¬£¬£¬×î³õ°ä²¼ÓÚ1986Ä꣬£¬£¬ÖØÒªÓÃÓÚ·þÎñÆ÷ÉÏ£¬£¬£¬¶øiSCSIÐÔÖÊÉÏÊÇ»ùÓÚTCPµÄSCSI¡£

×êÑÐÈËÔ±°µÊ¾£¬£¬£¬ÕâЩ·ì϶»áÓ°ÏìËùÓеÄLinux¿¯Ðаæ¡£Ä¬ÈÏÇé¿öÏÂϵͳ²»»á¼ÓÔØÊÜÓ°ÏìµÄscsi_transport_iscsiÄÚºËÄ£¿£¿£¿é£¬£¬£¬µ±LinuxÄں˼ÓÔØÄ£¿£¿£¿éʱ£¬£¬£¬ÒªÃ´ÊÇÓÉÓÚ¼ì²âµ½ÐÂÓ²¼þ£¬£¬£¬ÒªÃ´ÊÇÓÉÓÚÄں˺¯Êý¼ì²âµ½Ä³¸öÄ£¿£¿£¿éÃÔʧ£¬£¬£¬¹¥»÷Õß¿ÉÄÜ»áͨ¹ý¼ÓÔØ¸ÃÄ£¿£¿£¿é²¢ÀûÓøÃÄ£¿£¿£¿éÀ´½øÐÐȨÏÞÌáÉý¡£Ó°ÏìÁ÷³ÌͼÈçÏ£º

image.png

´ËÍ⣬£¬£¬ÔÚCentOS 8¡¢RHEL 8ºÍFedoraϵͳÉÏ£¬£¬£¬ÈôÊÇ×°ÖÃÁËrdma-coreÈí¼þ°ü£¬£¬£¬ÔòûÓÐrootȨÏÞµÄÓû§Äܹ»×Ô¶¯¼ÓÔØËùÐèµÄÄ£¿£¿£¿é¡£ÔÚDebianºÍUbuntuϵͳÉÏ£¬£¬£¬ÈôÊÇRDMAÓ²¼þ¿ÉÓ㬣¬£¬Ôòrdma-coreÈí¼þ°ü½«½ö×Ô¶¯¼ÓÔØÁ½¸ö±ØÐëµÄÄÚºËÄ£¿£¿£¿é¡£Òò¶ø£¬£¬£¬ÕâЩ·ì϶½«¸ü²»ÈÝÒ×±»ÀûÓá£

3¸ö·ì϶ÏêÇéÈçÏ£º

Linux kernel iSCSI»º³åÇøÒç³ö·ì϶£¨CVE-2021-27365£©

ÓÉÓÚijЩiSCSIÊý¾Ý½á¹¹Ã»ÓÐÊʵ±µÄ³¤¶ÈÏÞ¶È»ò²é³­£¬£¬£¬²¢ÇÒ¿ÉÄܳ¬¹ýPAGE_SIZEÖµ¡£·ÇrootÓû§µÄ¹¥»÷ÕßÄܹ»·¢ËÍÓëiSCSI¹ØÁªµÄNetlinkÐÂÎÅ£¬£¬£¬²¢Ê¹Æä³¤¶ÈΪNetlinkÐÂÎŵÄ×î´ó³¤¶È£¬£¬£¬²¢×îÖÕÄܹ»ÔÚÖ¸±êϵͳÉÏÌáÉýȨÏÞ¡¢Ôì³ÉÐÅϢй¶»ò»Ø¾ø·þÎñ¡£

 

Linux kernel iSCSIÄÚºËÖ¸Õëй¶·ì϶£¨CVE-2021-27363£©

ÄÚºËÖ¸Õëй©Äܹ»ÓÃÀ´È·¶¨iscsi_transport½á¹¹µÄµØÖ·¡£µ±Ò»¸öiSCSI´«ÊäÔÚiSCSI×ÓϵͳÖÐ×¢²áʱ£¬£¬£¬´«ÊäµÄ¾ä±úÄܹ»Í¨¹ýsysfsÎļþϵͳÔÚ/sys/class/iscsi_transport/$TRANSPORT_NAME/handle´¦±»·ÇrootÓû§»ñÈ¡¡£µ±¶Áȡʱ£¬£¬£¬show_transport_handleº¯Êý(ÔÚdrivers/scsi/scsi_transport_iscsi.cÖÐ)»á±»Å²Ó㬣¬£¬´Ó¶øÐ¹Â¶Á˸þä±ú£¨¸Ã¾ä±úÏÖʵÉÏÊÇÄÚºËÄ£¿£¿£¿éÈ«¾Ö±äÁ¿ÖеÄiscsi_transport½á¹¹µÄÖ¸Õ룩¡£

 

Linux kernel iSCSIÔ½½ç¶ÁÈ¡·ì϶£¨CVE-2021-27364£©

ÓÉÓÚdrivers/scsi/scsi_transport_iscsi.c Êܵ½·ÇrootÓû§·¢Ë͵ĶñÒâ Netlink ÐÂÎŵÄÓ°Ï죬£¬£¬iSCSIÖдæÔÚÔ½½ç¶ÁÈ¡·ì϶¡£¹¥»÷ÕßÄܹ»ÀûÓø÷ì϶Ôì³ÉÐÅϢй¶»ò»Ø¾ø·þÎñ¡£

 

Ó°ÏìÁìÓò

ËùÓÐÒѼÓÔØscsi_transport_iscsiÄÚºËÄ£¿£¿£¿éµÄLinux¿¯Ðаæ

 

0x02 ´ëÖý¨Òé

ĿǰÕâЩ·ì϶¾ùÒÑÔÚ5.11.4¡¢5.10.21¡¢5.4.103¡¢4.19.179¡¢4.14.224¡¢4.9.260ºÍ4.4.260ÖÐÐÞ¸´£¬£¬£¬²¢ÇÒÐÞ¸´·¨Ê½ÒÑÓÚ3ÔÂ7ÈÕÔÚÖ÷ÏßLinuxÄÚºËÖÐÌṩ¡£¶ÔÓÚEOL²»Ö§³ÖµÄÄں˰汾£¨Èç3.xºÍ2.6.23£©£¬£¬£¬½«²»»á°ä²¼Èκβ¹¶¡¡£

ÏÂÔØÁ´½Ó£º

https://www.kernel.org/

 

0x03 ²Î¿¼Á´½Ó

https://blog.grimm-co.com/2021/03/new-old-bugs-in-linux-kernel.html

https://www.bleepingcomputer.com/news/security/15-year-old-linux-kernel-bugs-let-attackers-gain-root-privileges/

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

 

0x04 ¹¦·òÏß

2021-03-12  GRIMMÅû¶·ì϶

2021-03-15  VSRC°ä²¼°²È«¹«¸æ

 

0x05 ¸½Â¼

 

CVSSÆÀ·Ö³ß¶È¹ÙÍø£ºhttp://www.first.org/cvss/

image.png