¡¾·ì϶¹«¸æ¡¿Spring Cloud Function SpEL±í°×ʽעÈë·ì϶(CVE-2022-22963)

°ä²¼¹¦·ò 2022-03-28


0x00 ·ì϶¸ÅÊö


CVE   ID

CVE-2022-22963

ʱ    ¼ä

2022-03-25

Àà    ÐÍ

´úÂëÖ´ÐÐ

µÈ    ¼¶

ÑϳÁ

Ô¶³ÌÀûÓÃ

ÊÇ

Ó°ÏìÁìÓò


¹¥»÷¸´ÔÓ¶È

µÍ

Óû§½»»¥


PoC/EXP

Òѹ«¿ª

ÔÚÒ°ÀûÓÃ


 

0x01 ·ì϶ÏêÇé

Spring Cloud Function ÊÇ»ùÓÚSpring Boot µÄº¯ÊýÍÆËã¿ò¼Ü£¬Ëü³éÏó³öËùÓд«Êäϸ½ÚºÍ»ù´¡ÉèÊ©£¬ÔÊÐí¿ª·¢ÈËÔ±±£ÁôËùÓÐÊìϤµÄ¹¤¾ßºÍÁ÷³Ì£¬²¢×¨Ò»ÓÚÒµÎñÂß¼­¡£

½üÈÕ£¬Spring Cloud Function ½¨¸´ÁËÒ»¸öSpEL±í°×ʽעÈë·ì϶£¬¿ÉÀûÓø÷ì϶ÔÚδÈÏÖ¤µÄÇé¿öÏÂÔÚÖ¸±ê Spring Cloud FunctionϵͳÖÐÔ¶³ÌÖ´ÐÐËÁÒâ´úÂë¡£

µ±Ê¹Ó÷ÓÉÖ°ÄÜʱ£¬Spring Cloud Function½«ÒªÇóÍ·Öеġ°spring.cloud.function.routing-expression¡±²ÎÊý×÷Ϊ SpEL±í°×ʽ½øÐд¦Ö㬠Ôì³ÉSpEL±í°×ʽעÈë·ì϶£¬³É¹¦ÀûÓô˷ì϶¿ÉʵÏÖËÁÒâ´úÂëÖ´ÐС£Ä¿Ç°·ì϶µÄPoC/EXPÒѹ«¿ª£¬½¨ÒéÓйØÓû§¾¡¿ì²ÉÈ¡°²È«´ëÊ©¡£

·ì϶¸´ÏÖÈçÏÂ:

image.png


Ó°ÏìÁìÓò

3.0.0.RELEASE <= Spring Cloud Function <= 3.1.6

Spring Cloud Function <= 3.2.2

ÒÔ¼°¹Ù·½²»ÔÙÖ§³ÖµÄ¾É°æ±¾¡£


0x02 °²È«½¨Òé

Ŀǰ´Ë·ì϶ÒѾ­½¨¸´£¬ÊÜÓ°ÏìÓû§Äܹ»Éý¼¶µ½Spring Cloud Function 3.1.7»ò3.2.3¡£

ÏÂÔØÁ´½Ó£º

https://github.com/spring-cloud/spring-cloud-function/tags

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

https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f

×¢£ºÓû§¿ÉÅŲéÀûÓ÷¨Ê½ÖжÔspring-cloud-function×é¼þµÄÒýÓÃÇé¿ö£¬²¢²é³­µ±Ç°Ê¹Óð汾ÊÇ·ñÊܵ½Ó°Ïì¡£ÈôÊÇ·¨Ê½Ê¹ÓÃMaven´ò°ü£¬¿É²é¿´ÏîÖ÷ÕÅpom.xmlÎļþÖÐÊÇ·ñÒýÈëÓйØ×é¼þ¡£


0x03 ²Î¿¼Á´½Ó

https://spring.io/blog/2022/03/29/cve-report-published-for-spring-cloud-function

https://tanzu.vmware.com/security/cve-2022-22963

https://github.com/spring-cloud/spring-cloud-function/commit/0e89ee27b2e76138c16bcba6f4bca906c4f3744f

https://pizz33.github.io/2022/03/23/%E6%BC%8F%E6%B4%9E%E5%A4%8D%E7%8E%B0-Spring%20Cloud%20Function%20SpEL%E8%A1%A8%E8%BE%BE%E5%BC%8F%E6%B3%A8%E5%85%A5/


0x04 °æ±¾ÐÅÏ¢


°æ±¾

ÈÕÆÚ

Åú¸ÄÄÚÈÝ

V1.0

2022-03-28

³õ´Î°ä²¼

V2.0

2022-03-29

ÐÂÔö¸´ÏÖ½ØÍ¼¡¢Åú¸ÄÓ°ÏìÁìÓòµÈ



0x05 ¸½Â¼

GA»Æ½ð¼×¼ò½é

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

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

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


¹ØÓÚGA»Æ½ð¼×

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

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

image.png