¡¾Îó²îͨ¸æ¡¿Ollama·¾¶±éÀú´úÂëÖ´ÐÐÎó²î£¨CVE-2024-37032£©

Ðû²¼Ê±¼ä 2024-06-28


Ò»¡¢Îó²î¸ÅÊö

Îó²îÃû³Æ

Ollama·¾¶±éÀú´úÂëÖ´ÐÐÎó²î

CVE   ID

CVE-2024-37032

Îó²îÀàÐÍ

·¾¶±éÀú¡¢RCE

·¢Ã÷ʱ¼ä

2024-06-25

Îó²îÆÀ·Ö

9.1

Îó²îÆ·¼¶

ÑÏÖØ

¹¥»÷ÏòÁ¿

ÍøÂç

ËùÐèȨÏÞ

ÎÞ

ʹÓÃÄѶÈ

µÍ

Óû§½»»¥

ÎÞ

PoC/EXP

ÒѹûÕæ

ÔÚҰʹÓÃ

ÒÑ·¢Ã÷

 

OllamaÊÇÒ»¸ö¹¦Ð§Ç¿Ê¢¡¢Ò×ÓÚʹÓÃÇÒÖ§³Ö¶àÖÖ´óÐÍÓïÑÔÄ£×Ӻͻúеѧϰ¿ò¼ÜµÄ¿ªÔ´¿ò¼Ü£¬Ëü¼«´óµØ¼ò»¯ÁË´óÐÍÓïÑÔÄ£×ÓÔÚÍâµØ°²ÅźÍÖÎÀíµÄÀú³Ì£¬ÎªÑо¿ºÍ¿ª·¢Ö°Ô±ÌṩÁ˼«´óµÄ±ãµ±¡£

2024Äê6ÔÂ25ÈÕ£¬ÓÅ·¢¹ú¼ÊÍøÕ¾¹ÙÍø¼¯ÍÅVSRC¼à²âµ½Ollama·¾¶±éÀú´úÂëÖ´ÐÐÎó²î£¨CVE-2024-37032£¬±»³ÆΪProbllama£©µÄÊÖÒÕϸ½ÚÔÚ»¥ÁªÍøÉϹûÕ棬¸ÃÎó²îµÄCVSSv3ÆÀ·ÖΪ9.1£¬ÏÖÔÚPoCÒѾ­¹ûÕæÅû¶¡£

Ollama 0.1.34֮ǰÔÚ»ñÈ¡Ä£×Óʱ£¨Í¨¹ýÅÌÎÊapi/pull¶Ëµã£©£¬ÓÉÓÚ¶Ôdigest ×Ö¶Îȱ·¦Êʵ±ÑéÖ¤£¬ÍþвÕß¿ÉÌṩÔÚdigest×Ö¶ÎÖаüÀ¨Â·¾¶±éÀúpayloadµÄ¶ñÒâÇåµ¥Îļþ£¬Ê¹ÓøÃÎó²îʵÏÖí§ÒâÎļþ¶ÁÈ¡/дÈë»òµ¼ÖÂÔ¶³Ì´úÂëÖ´ÐС£

  

¶þ¡¢Îó²î¸´ÏÖ

image.png

 


Èý¡¢Ó°Ïì¹æÄ£

Ollama < 0.1.34

 


ËÄ¡¢Çå¾²²½·¥

4.1 Éý¼¶°æ±¾

ÏÖÔÚ¸ÃÎó²îÒѾ­ÐÞ¸´£¬ÊÜÓ°ÏìÓû§¿ÉÉý¼¶µ½Ollama 0.1.34 »ò¸ü¸ß°æ±¾¡£

ÏÂÔØÁ´½Ó£º

https://ollama.com/

4.2 ÔÝʱ²½·¥

¸ÃÎó²î¹ØÓÚDocker ×°ÖÃÓ°ÏìÓÈÆäÑÏÖØ£¬ÓÉÓÚ·þÎñÆ÷ÒÔrootȨÏÞÔËÐв¢Ä¬ÈϾÙÐмàÌý0.0.0.0£¬ÕâʹµÃ¸ÃÎó²î¿ÉÒÔ±»Ô¶³ÌʹÓá£

±ðµÄ£¬Í¨³£ÇéÐÎÏÂOllamaûÓÐÉí·ÝÑéÖ¤£¬½¨Òé²»ÒªÔÚûÓÐÈκÎÉí·ÝÑéÖ¤µÄÇéÐÎÏÂ̻¶ÔÚ»¥ÁªÍøÉÏ¡£ÈôÊÇÐèÒªÔÚ»¥ÁªÍøÉϹûÕæ»á¼û£¬¿É½«Ollama °²ÅÅÔÚ·´ÏòÊðÀíºóÒÔÇ¿ÖÆÖ´ÐÐÉí·ÝÑéÖ¤¡£

4.3 ͨÓý¨Òé

l  °´ÆÚ¸üÐÂϵͳ²¹¶¡£¬ïÔ̭ϵͳÎó²î£¬ÌáÉý·þÎñÆ÷µÄÇå¾²ÐÔ¡£

l  ÔöǿϵͳºÍÍøÂçµÄ»á¼û¿ØÖÆ£¬Ð޸ķÀ»ðǽսÂÔ£¬¹Ø±Õ·ÇÐëÒªµÄÓ¦Óö˿ڻò·þÎñ£¬ïÔÌ­½«Î£ÏÕ·þÎñ£¨ÈçSSH¡¢RDPµÈ£©Ì»Â¶µ½¹«Íø£¬ïÔÌ­¹¥»÷Ãæ¡£

l  ʹÓÃÆóÒµ¼¶Çå¾²²úÆ·£¬ÌáÉýÆóÒµµÄÍøÂçÇå¾²ÐÔÄÜ¡£

l  ÔöǿϵͳÓû§ºÍȨÏÞÖÎÀí£¬ÆôÓöàÒòËØÈÏÖ¤»úÖƺÍ×îСȨÏÞÔ­Ôò£¬Óû§ºÍÈí¼þȨÏÞÓ¦¼á³ÖÔÚ×îµÍÏ޶ȡ£

l  ÆôÓÃÇ¿ÃÜÂëÕ½ÂÔ²¢ÉèÖÃΪ°´ÆÚÐ޸ġ£

4.4 ²Î¿¼Á´½Ó

https://github.com/ollama/ollama/pull/4175

https://nvd.nist.gov/vuln/detail/CVE-2024-37032

https://www.wiz.io/blog/probllama-ollama-vulnerability-cve-2024-37032#the-vulnerability-arbitrary-file-write-via-path-traversal-25

  

Îå¡¢°æ±¾ÐÅÏ¢

°æ±¾

ÈÕÆÚ

±¸×¢

V1.0

2024-06-28

Ê×´ÎÐû²¼

 

 

Áù¡¢¸½Â¼

6.1 ÓÅ·¢¹ú¼ÊÍøÕ¾¹ÙÍø¼ò½é

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

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

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

6.2 ¹ØÓÚÓÅ·¢¹ú¼ÊÍøÕ¾¹ÙÍø

ÓÅ·¢¹ú¼ÊÍøÕ¾¹ÙÍøÇå¾²Ó¦¼±ÏìÓ¦ÖÐÐÄÒÑÐû²¼1000¶à¸öÎó²îͨ¸æºÍΣº¦Ô¤¾¯£¬ÎÒÃǽ«Ò»Á¬¸ú×ÙÈ«Çò×îеÄÍøÂçÇå¾²ÊÂÎñºÍÎó²î£¬ÎªÆóÒµµÄÐÅÏ¢Çå¾²±£¼Ý»¤º½¡£

¹Ø×¢ÎÒÃÇ£º

image.png