¡¾Îó²îͨ¸æ¡¿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µÄ¶ñÒâÇåµ¥Îļþ£¬Ê¹ÓøÃÎó²îʵÏÖí§ÒâÎļþ¶ÁÈ¡/дÈë»òµ¼ÖÂÔ¶³Ì´úÂëÖ´ÐС£
¶þ¡¢Îó²î¸´ÏÖ
Èý¡¢Ó°Ïì¹æÄ£
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¶à¸öÎó²îͨ¸æºÍΣº¦Ô¤¾¯£¬ÎÒÃǽ«Ò»Á¬¸ú×ÙÈ«Çò×îеÄÍøÂçÇå¾²ÊÂÎñºÍÎó²î£¬ÎªÆóÒµµÄÐÅÏ¢Çå¾²±£¼Ý»¤º½¡£
¹Ø×¢ÎÒÃÇ£º