¡¾·ì϶¹«¸æ¡¿Linux kernel eBPFȨÏÞÌáÉý·ì϶£¨CVE-2022-23222£©

°ä²¼¹¦·ò 2022-06-14

 

0x00 ·ì϶¸ÅÊö

CVE   ID

CVE-2022-23222

·¢ÏÖ¹¦·ò

2022-06-13

Àà    ÐÍ

LPE

µÈ    ¼¶

¸ßΣ

Ô¶³ÌÀûÓÃ

·ñ

Ó°ÏìÁìÓò


¹¥»÷¸´ÔÓ¶È

µÍ

Óû§½»»¥

ÎÞ

PoC/EXP

Òѹ«¿ª

ÔÚÒ°ÀûÓÃ


 

0x01 ·ì϶ÏêÇé

2022Äê1ÔÂ14ÈÕ£¬RedHat°ä²¼°²È«²¼¸æ£¬¹«¿ªÁËLinux ÄÚºËÖеÄÒ»¸ö±¾µØÈ¨ÏÞÌáÉý·ì϶£¨CVE-2022-23222£©£¬¸Ã·ì϶µÄCVSSv3ÆÀ·Ö×î¸ßΪ7.8¡£

LinuxÄں˵ÄBPFÑéÖ¤Æ÷£¨kernel/bpf/verifier.c£©µÄadjust_ptr_min_max_vals£¨£©ÖдæÔÚ°²È«ÎÊÌ⣬¶ÔÖ´ÐÐÖ¸ÕëÔËËãµÄ*_OR_NULLÖ¸ÕëÀàÐͶÌȱ²é³­£¬ÕâÄܹ»ÓÃÀ´ÈƹýÑéÖ¤Æ÷µÄ²é³­²¢ÌáÉýȨÏÞ¡£

6ÔÂ7ÈÕ£¬¸Ã·ì϶µÄ¼¼Êõϸ½ÚºÍPoC/EXPÔÚ»¥ÁªÍøÉϹ«¿ª£¬¿ÉÔÚ»ñµÃÖ¸±êϵͳÉϵÍȨÏÞ´úÂëÖ´ÐÐÄÜÁ¦µÄÇé¿öÏÂÀûÓô˷ì϶½«È¨ÏÞÌáÉýΪroot¡£

 

Ó°ÏìÁìÓò

5.8.0 <= Linux kernel <= 5.16

 

0x02 °²È«½¨Òé

Ŀǰ´Ë·ì϶ÒѾ­½¨¸´£¬ÊÜÓ°ÏìÓû§Äܹ»Éý¼¶¸üе½ÒÔϰ汾£º

Linux kernel >= 5.10.92

Linux kernel >= 5.15.15

Linux kernel >= 5.16.1

Linux kernel < 5.8.0

ÏÂÔØÁ´½Ó£º

https://kernel.org/

²é¿´Äں˰汾£ºuname -a

×¢£ºÔÚijЩLinux¿¯Ðа汾ÖÐĬÈϲ»ÈÝ·ÇÌØÈ¨Óû§Ê¹Óà eBPF¡£Red Hat Enterprise LinuxÓû§¿É²Î¿¼Red Hat¹Ù·½²¼¸æ£º

https://access.redhat.com/security/cve/cve-2022-23222

 

0x03 ²Î¿¼Á´½Ó

https://access.redhat.com/security/cve/cve-2022-23222

https://www.openwall.com/lists/oss-security/2022/06/07/3

https://tr3e.ee/posts/cve-2022-23222-linux-kernel-ebpf-lpe.txt

 

0x04 °æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

Åú¸ÄÄÚÈÝ

V1.0

2022-06-14

³õ´Î°ä²¼

 

0x05 ¸½Â¼

GA»Æ½ð¼×¼ò½é

GA»Æ½ð¼×¹«Ë¾³ÉÁ¢ÓÚ1996Ä꣬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐÓ×°åÕýʽ¹ÒÅÆÉÏÊУ¬ÊǹúÄÚ¼«¾ßʵÁ¦µÄ¡¢Õ¼ÓÐÆëÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂ簲ȫ²úÆ·¡¢¿ÉÐŰ²È«ÖÎÀíÆ½Ì¨¡¢°²È«·þÎñÓë½â¾ö¹æ»®µÄ×ÛºÏÌṩÉÌ¡£

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

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


¹ØÓÚGA»Æ½ð¼×

GA»Æ½ð¼×°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÖØÒªÕë¶Ô³ÁÒª°²È«·ì϶µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвµý±¨ºÍ°²È«»ã±¨¡£

¹Ø×¢ÒÔϹ«¼ÒºÅ£¬»ñȡȫÇò×îа²È«×ÊѶ£º

image.png