¡¾·ì϶¹«¸æ¡¿Linux Netfilter»º³åÇøÒç¶Âí½Å£¨CVE-2022-34918£©
°ä²¼¹¦·ò 2022-07-070x00 ·ì϶¸ÅÊö
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 ¸½Â¼
GA»Æ½ð¼×¼ò½é
GA»Æ½ð¼×³ÉÁ¢ÓÚ1996Ä꣬ÊÇÓÉÁôÃÀ²©Ê¿ÑÏÍû¼ÑŮʿ´´½¨µÄ¡¢Õ¼ÓÐÆëÈ«×ÔÖ÷֪ʶ²úȨµÄÐÅÏ¢°²È«¸ß¿Æ¼¼ÆóÒµ¡£ÊǹúÄÚ×î¾ßʵÁ¦µÄÐÅÏ¢°²È«²úÆ·¡¢°²È«·þÎñ½â¾ö¹æ»®µÄÁ캽ÆóÒµÖ®Ò»¡£
¹«Ë¾×ܲ¿Î»ÓÚ±±¾©ÊÐÖйشåÈí¼þÔ°GA»Æ½ð¼×´óÏ㬹«Ë¾Ô±¹¤½ü4000ÈË£¬Ñз¢ÍŶÓ1200ÓàÈË, ¼¼Êõ·þÎñÍŶÓ1300ÓàÈË¡£ÔÚÈ«¹ú¸÷Ê¡¡¢ÊÓ×¢×ÔÖÎÇøÉèÁ¢·ÖÖ§»ú¹¹ÁùÊ®¶à¸ö£¬Õ¼Óи²¸ÇÈ«¹úµÄÏúÊÛϵͳ¡¢Çþ·ϵͳºÍ¼¼ÊõÖ§³Öϵͳ¡£¹«Ë¾ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉîÛÚÖÐÓ×°å¹ÒÅÆÉÏÊС££¨¹ÉƱ´úÂ룺002439£©
¶àÄêÀ´£¬GA»Æ½ð¼×ÖÂÁ¦ÓÚÌṩӵÓйú¼Ê¾ºÕùÁ¦µÄ×ÔÖ÷´´Ðµİ²È«²úÆ·ºÍ×î¼Ñʵ¼Ê·þÎñ£¬Ô®ÊÖ¿Í»§È«ÃæÌáÉýÆäIT»ù´¡ÉèÊ©µÄ°²È«ÐԺͳö²úЧÁ¦£¬Îª´òÔìºÍÌáÉý¹ú¼Ê»¯µÄÃñ×åÐÅÏ¢°²È«²úÒµÁì¾üÆ·ÅÆ¶ø²»Ð¸ÖÂÁ¦¡£
¹ØÓÚGA»Æ½ð¼×
GA»Æ½ð¼×°²È«Ó¦¼±ÏìÓ¦ÖÐÐÄÖØÒªÕë¶Ô³ÁÒª°²È«·ì϶µÄÔ¤¾¯¡¢¸ú×ٺͷÖÏíÈ«Çò×îеÄÍþвµý±¨ºÍ°²È«»ã±¨¡£
¹Ø×¢ÒÔϹ«¼ÒºÅ£¬»ñȡȫÇò×îа²È«×ÊѶ£º



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