¡¾Â©¶´Í¨¸æ¡¿Linux Netfilter»º³åÇøÒç³ö©¶´£¨CVE-2022-34918£©

Ðû²¼Ê±¼ä 2022-07-07
 

0x00 ©¶´¸ÅÊö

CVE   ID

CVE-2022-34918

·¢ÏÖʱ¼ä

2022-07-06

Àà    ÐÍ

»º³åÇøÒç³ö

µÈ    ¼¶

¸ßΣ

Ô¶³ÌÀûÓÃ

·ñ

Ó°Ï췶Χ


¹¥»÷ÅÓ´ó¶È


Óû§½»»¥


PoC/EXP

ÒѹûÈ»

ÔÚÒ°ÀûÓÃ


 

0x01 ©¶´ÏêÇé

NetfilterÊÇLinux 2.4.xÒýÈëµÄÒ»¸ö×Óϵͳ £¬Ëü×÷ΪLinuxµ×²ã°ü´¦Öÿò¼Ü £¬ÌṩһÕûÌ×µÄhookº¯ÊýµÄ¹ÜÀí»úÖÆ £¬¿ÉÒÔÓÃÓÚ¶ÔÊý¾Ý°ü½øÐйýÂË¡¢Ð޸ġ¢µØÖ·×ª»»(SNAT/DNAT)µÈ´¦Öá£

½üÈÕ £¬Linux Netfilter×ÓϵͳÖб»Åû¶´æÔÚÒ»¸ö»º³åÇøÒç³ö©¶´£¨CVE-2022-34918£© £¬Ó°ÏìÁËLinuxÄں˶à¸ö°æ±¾ £¬Ä¿Ç°¸Ã©¶´µÄϸ½Ú¼°PoCÒѹûÈ»¡£

nft_set_elem_initº¯Êý£¨/net/netfilter/nf_tables_api.c)ÖÐÓÉÓÚ¶ÔÓû§ÊäÈëµÄÈõ¼ì²éµ¼Ö»º³åÇøÒç³ö £¬ÀÖ³ÉÀûÓôË©¶´¿ÉʵÏÖµ±µØÈ¨ÏÞÌáÉý£¨LPE£©Îªroot¡£µ«ÒªÀûÓôË©¶´ £¬ÐèÒª»ñµÃ·ÇÌØÈ¨Óû§ÃüÃû¿Õ¼ä £¬ÒÔ»ñµÃ CAP_NET_ADMIN ȨÏÞ¡£

 

Ó°Ï췶Χ

5.8 <= LinuxÄÚºË <= 5.18.9

 

0x02 Äþ¾²½¨Òé

Ŀǰ´Ë©¶´µÄ²¹¶¡ÒѾ­Ðû²¼ £¬ÊÜÓ°ÏìÓû§¿É¼°Ê±ÐÞ¸´¡£

²¹¶¡ÏÂÔØÁ´½Ó£º

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/commit/?id=7e6bc1f6cabcd30aba0b11219d8e01b952eacbb6

ÏÂÔØÁ´½Ó£º

https://kernel.org/

 

0x03 ²Î¿¼Á´½Ó

https://www.openwall.com/lists/oss-security/2022/07/05/1

https://lore.kernel.org/netfilter-devel/cd9428b6-7ffb-dd22-d949-d86f4869f452@randorisec.fr/T/#u

 

0x04 °æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

ÐÞ¸ÄÄÚÈÝ

V1.0

2022-07-07

Ê×´ÎÐû²¼

 

0x05 ¸½Â¼

¶¶È¦Îª¶Ä¶øÉú¼ò½é

¶¶È¦Îª¶Ä¶øÉú½¨Á¢ÓÚ1996Äê £¬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ´´½¨µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢Äþ¾²¸ß¿Æ¼¼ÆóÒµ¡£ÊǹúÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢Äþ¾²²úÎï¡¢Äþ¾²·þÎñ½â¾ö·½°¸µÄÁ캽ÆóÒµÖ®Ò»¡£

¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°¶¶È¦Îª¶Ä¶øÉú´óÏà £¬¹«Ë¾Ô±¹¤½ü4000ÈË £¬Ñз¢ÍŶÓ1200ÓàÈË, ¼¼Êõ·þÎñÍŶÓ1300ÓàÈË¡£ÔÚÈ«¹ú¸÷Ê¡¡¢ÊС¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö £¬ÓµÓÐÁýÕÖÈ«¹úµÄÏúÊÛÌåϵ¡¢ÇþµÀÌåϵºÍ¼¼ÊõÖ§³ÖÌåϵ¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐС°å¹ÒÅÆÉÏÊС££¨¹ÉƱ´úÂ룺002439£©

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

 

¹ØÓÚ¶¶È¦Îª¶Ä¶øÉú

¶¶È¦Îª¶Ä¶øÉúÄþ¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÖ÷ÒªÕë¶ÔÖØÒªÄþ¾²Â©¶´µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвÇ鱨ºÍÄþ¾²³ÂËß¡£

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

image.png