¡¾Â©¶´Í¨¸æ¡¿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 ¸½Â¼

¶«É­Æ½Ì¨¼ò½é

¶«É­Æ½Ì¨¹«Ë¾½¨Á¢ÓÚ1996Äê £¬²¢ÓÚ2010Äê6ÔÂ23ÈÕÔÚÉî½»ËùÖÐС°åÕýʽ¹ÒÅÆÉÏÊÐ £¬ÊǹúÄÚ¼«¾ßʵÁ¦µÄ¡¢ÓµÓÐÍêÈ«×ÔÖ÷֪ʶ²úȨµÄÍøÂçÄþ¾²²úÎï¡¢¿ÉÐÅÄþ¾²¹ÜÀíÆ½Ì¨¡¢Äþ¾²·þÎñÓë½â¾ö·½°¸µÄ×ÛºÏÌṩÉÌ ¡£

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

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


¹ØÓÚ¶«É­Æ½Ì¨

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

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

image.png