Linux kernel iSCSI¶à¸öÇå¾²Îó²î
Ðû²¼Ê±¼ä 2021-03-150x00 Îó²î¸ÅÊö
2021Äê03ÔÂ12ÈÕ£¬£¬£¬£¬GRIMMµÄÑо¿Ö°Ô±Åû¶Linux Äں˵ÄiSCSI×ÓϵͳÖб£´æ3¸öÒÑÓÐ15ÄêÀúÊ·µÄÇå¾²Îó²î£¬£¬£¬£¬¾ßÓÐͨË×Óû§È¨ÏÞµÄÍâµØ¹¥»÷ÕßÄܹ»Ê¹ÓÃÕâЩÎó²îÈÆ¹ý³¬µÈÓû§Ä£Ê½Ö´Ðб£»£»£»¤£¨SMEP£©¡¢³¬µÈÓû§Ä£Ê½»á¼û±£»£»£»¤£¨SMAP£©ºÍÄÚºËÒ³±í¸ôÀ루 KPTI£©£¬£¬£¬£¬×îÖÕ»ñµÃLinuxϵͳÉϵÄrootÓû§È¨ÏÞ¡£¡£¡£¡£¡£¡£
0x01 Îó²îÏêÇé

SCSI£¨Ð¡ÐÍÅÌËã»úϵͳ½Ó¿Ú£©ÊÇÓÃÓÚ´«ÊäÊý¾ÝµÄ±ê×¼£¬£¬£¬£¬¸ÃÊý¾Ý×î³õÊÇͨ¹ýÎïÀíµçÀ£¨ÈçÓ²ÅÌÇý¶¯Æ÷£©´«ÊäÒÔ½«ÅÌËã»úÓëÍâΧװ±¸ÅþÁ¬ÆðÀ´µÄ¡£¡£¡£¡£¡£¡£SCSIÊÇÒ»¸ö¹ÅÀϵıê×¼£¬£¬£¬£¬×î³õÐû²¼ÓÚ1986Ä꣬£¬£¬£¬Ö÷ÒªÓÃÓÚЧÀÍÆ÷ÉÏ£¬£¬£¬£¬¶øiSCSIʵÖÊÉÏÊÇ»ùÓÚTCPµÄSCSI¡£¡£¡£¡£¡£¡£
Ñо¿Ö°Ô±ÌåÏÖ£¬£¬£¬£¬ÕâЩÎó²î»áÓ°ÏìËùÓеÄLinux¿¯Ðа档¡£¡£¡£¡£¡£Ä¬ÈÏÇéÐÎÏÂϵͳ²»»á¼ÓÔØÊÜÓ°ÏìµÄscsi_transport_iscsiÄÚºËÄ£¿£¿£¿£¿£¿é£¬£¬£¬£¬µ±LinuxÄں˼ÓÔØÄ£¿£¿£¿£¿£¿éʱ£¬£¬£¬£¬ÒªÃ´ÊÇÓÉÓÚ¼ì²âµ½ÐÂÓ²¼þ£¬£¬£¬£¬ÒªÃ´ÊÇÓÉÓÚÄں˺¯Êý¼ì²âµ½Ä³¸öÄ£¿£¿£¿£¿£¿éɥʧ£¬£¬£¬£¬¹¥»÷Õß¿ÉÄÜ»áͨ¹ý¼ÓÔØ¸ÃÄ£¿£¿£¿£¿£¿é²¢Ê¹ÓøÃÄ£¿£¿£¿£¿£¿éÀ´¾ÙÐÐȨÏÞÌáÉý¡£¡£¡£¡£¡£¡£Ó°ÏìÁ÷³ÌͼÈçÏ£º

±ðµÄ£¬£¬£¬£¬ÔÚ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/



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