Spring MVC ·´ÉäÐÍÎļþÏÂÔØÎó²îΣº¦Í¨¸æ

Ðû²¼Ê±¼ä 2020-02-04

Îó²î±àºÅºÍ¼¶±ð


CVE±àºÅ£ºCVE-2020-5398£¬£¬£¬ £¬£¬£¬Î£ÏÕ¼¶±ð£º¸ßΣ£¬£¬£¬ £¬£¬£¬CVSS·ÖÖµ£º7.5


Ó°Ïì°æ±¾


Spring Framework£º


5.2.0 to 5.2.2

5.1.0 to 5.1.12

5.0.0 to 5.0.15


Îó²î¸ÅÊö


Pivotal Software Spring FrameworkÊÇÃÀ¹úPivotal Software¹«Ë¾µÄÒ»Ì׿ªÔ´µÄJava¡¢JavaEEÓ¦ÓóÌÐò¿ò¼Ü¡£¡£¡£¡£¡£¡£¡£¸Ã¿ò¼Ü¿É×ÊÖú¿ª·¢Ö°Ô±¹¹½¨¸ßÖÊÁ¿µÄÓ¦Óᣡ£¡£¡£¡£¡£¡£


¿ËÈÕ£¬£¬£¬ £¬£¬£¬Pivotal Software£¨SpringϵÁУ©¹Ù·½Ðû²¼ Spring Framework ±£´æ RFD£¨·´ÉäÐÍÎļþÏÂÔØÎó²î£©µÄÎó²î±¨¸æ£¬£¬£¬ £¬£¬£¬´ËÎó²îΪ¹¥»÷¿Í»§¶ËµÄÎó²î£¬£¬£¬ £¬£¬£¬¹Ù·½½«Îó²îÑÏÖØË®Æ½ÆÀΪ¸ß¡£¡£¡£¡£¡£¡£¡£±¨¸æÖ¸³ö£¬£¬£¬ £¬£¬£¬µ±ÏìÓ¦ÖÐÉèÖÃÁË¡°Content-Disposition¡±Í·ÇÒfilenameÊôÐÔÊÇÓû§¿É¿ØÊ±ÈÝÒ×Êܵ½RFD¹¥»÷¡£¡£¡£¡£¡£¡£¡£¹¥»÷Ó¦Öª×ãÒÔÏÂËùÓÐÌõ¼þ²Å¿ÉÀֳɣº


1¡¢ÏìÓ¦headerÊÇͨ¹ýorg.springframework.http.ContentDisposition¾ÙÐÐÌí¼ÓµÄ


2¡¢ÎļþÃûÊÇͨ¹ýÒÔÏ·½·¨Ö®Ò»ÉèÖõģº


ContentDisposition.Builder#filename(String)

ContentDisposition.Builder#filename(String, US_ASCII)


3¡¢filenameµÄÖµÀ´×ÔÓû§ÌṩµÄÊäÈë


4¡¢Ó¦ÓóÌÐòδɨ³ýÓû§ÌṩµÄÊäÈë


5¡¢¹¥»÷ÕßÒѽ«ÏÂÔØµÄÏìÓ¦ÄÚÈÝÖÐ×¢Èë¶ñÒâÏÂÁî


¹¥»÷Õß¿ÉʹÓÃRFDÎó²î£¬£¬£¬ £¬£¬£¬Á¬ÏµÉ繤µÈ·½·¨£¬£¬£¬ £¬£¬£¬ÈÃÓû§ÏÂÔØÒ»¸ö¶ñÒâÎļþ²¢Ö´ÐУ¬£¬£¬ £¬£¬£¬´Ó¶øÎ£º¦Óû§µÄÖÕ¶ËÇå¾²¡£¡£¡£¡£¡£¡£¡£


Îó²îÑéÖ¤


ÔÝÎÞPOC/EXP¡£¡£¡£¡£¡£¡£¡£


ÐÞ¸´½¨Òé


ÏÖÔÚ³§ÉÌÒÑÐû²¼Éý¼¶²¹¶¡ÒÔÐÞ¸´Îó²î£¬£¬£¬ £¬£¬£¬ÇëÊÜÓ°ÏìµÄÓû§Éý¼¶ÖÁ Spring Framework 5.2.3£¬£¬£¬ £¬£¬£¬5.1.13 »ò 5.0.16 °æ±¾£ºhttps://github.com/spring-projects/spring-framework¡£¡£¡£¡£¡£¡£¡£


»òÕß½ÓÄÉ׼ȷÉèÖãº


1¡¢Ó¦ÓóÌÐòδÉèÖá° Content-Disposition¡±ÏìÓ¦header¡£¡£¡£¡£¡£¡£¡£


2¡¢ÏìÓ¦header²»ÊÇͨ¹ýorg.springframework.http.ContentDisposition¾ÙÐÐÌí¼ÓµÄ


3¡¢ÎļþÃûÊÇͨ¹ýÒÔÏ·½·¨Ö®Ò»ÉèÖõģº


ContentDisposition.Builder#filename(String, UTF_8)

ContentDisposition.Builder#filename(String, ISO_8859_1)


4¡¢filenameµÄÖµ²»ÊÇÀ´×ÔÓû§ÌṩµÄÊäÈë


5¡¢filenameÀ´×ÔÓû§ÌṩµÄÊäÈ룬£¬£¬ £¬£¬£¬µ«ÓÉÓ¦ÓóÌÐòɨ³ý¡£¡£¡£¡£¡£¡£¡£


²Î¿¼Á´½Ó


https://pivotal.io/security/cve-2020-5398