Apache TomcatÎļþÔ̺¬·ì϶·ÖÎö

°ä²¼¹¦·ò 2020-02-21

Ò»¡¢·ì϶¸ÅÊö


2020Äê2ÔÂ20ÈÕ£¬£¬£¬¹ú¶ÈÐÅÏ¢°²È«·ì϶¹²ÏíÆ½Ì¨£¨CNVD£©°ä²¼¹ØÓÚApache TomcatµÄ°²È«²¼¸æ£¬£¬£¬Apache TomcatÎļþÔ̺¬·ì϶£¨CNVD-2020-10487£¬£¬£¬¶ÔÓ¦CVE-2020-1938£©¡£¡£¡£Tomcat AJPºÍ̸ÓÉÓÚ´æÔÚʵÏÖȱµãµ¼ÖÂÓйزÎÊý¿É¿Ø£¬£¬£¬¹¥»÷ÕßÀûÓø÷ì϶¿Éͨ¹ý»ú¹ØÌض¨²ÎÊý£¬£¬£¬¶ÁÈ¡·þÎñÆ÷webappϵÄËÁÒâÎļþ¡£¡£¡£Èô·þÎñÆ÷¶Ëͬʱ´æÔÚÎļþÉÏ´«Ö°ÄÜ£¬£¬£¬¹¥»÷Õ߿ɽøÒ»²½ÊµÏÖÔ¶³Ì´úÂëµÄÖ´ÐС£¡£¡£


¶þ¡¢·ì϶·ÖÎö


ͨ¹ý¶ÔApache TomcatÔ´Âë½øÐзÖÎö£¬£¬£¬·¢ÏÖTomcatÔÚ´¦ÖÃajpºÍ̸ʱ´æÔÚ·ì϶£¬£¬£¬¿Éͨ¹ýŲÓÃrequest.setAttributeΪTomcatÉèÖÃËÁÒârequestÊôÐÔ£¬£¬£¬ÈçÏÂͼËùʾ£º£º£º


OG¶«·½Ìü¡¤(Öйú´ó½)


ͨ¹ý¶ÈÎö¸´ÏÖ·¢ÏÖTomcat ajpºÍ̸´æÔÚwebĿ¼ÏÂËÁÒâÎļþ¶ÁÈ¡·ì϶ÒÔ¼°JSPÎļþÔ̺¬·ì϶¡£¡£¡£µ±ajp URIÉèÖÃΪ·Çjspõ辶ʱ£¬£¬£¬Tomcat»áŲÓÃDefaultServlet´¦Ö㬣¬£¬´Ëʱ»áµ¼ÖÂwebĿ¼ËÁÒâÎļþ¶ÁÈ¡·ì϶¡£¡£¡£µ±ajp URIÉèÖÃΪjspõ辶ʱ£¬£¬£¬Tomcat»áŲÓÃJspServlet´¦Ö㬣¬£¬´Ëʱ»áµ¼ÖÂJSPÎļþÔ̺¬·ì϶¡£¡£¡£


2.1 WebĿ¼ËÁÒâÎļþ¶ÁÈ¡·ì϶


µ±ajp URIÉèÖÃΪ·Çjspõ辶ʱ£¬£¬£¬Tomcat»áŲÓÃDefaultServlet´¦ÖÃ,ÎÒÃDZØÒª½ÚÖÆÈçÏÂÁ½¸öÊôÐÔ£º£º£º

javax.servlet.include.path_info

javax.servlet.include.servlet_path


ÆäÖУ¬£¬£¬javax.servlet.include.servlet_pathÊôÐÔΪµ±Ç°ÏîÄ¿õè¾¶¡¢javax.servlet.include.path_infoÊôÐÔΪĿ¼õè¾¶¡£¡£¡£¶øºó£¬£¬£¬Í¨¹ýDefaultServletÀàµÄgetRelativePath²½Öè½øÐÐÆ´½Ó»ñµÃpathõè¾¶¡£¡£¡£ÈçÏÂͼËùʾ£º£º£º


OG¶«·½Ìü¡¤(Öйú´ó½)


×îºó£¬£¬£¬»á½«path´øÈëµ½getResource(path)²½ÖèÖÐÔì³ÉËÁÒâÎļþ¶ÁÈ¡¡£¡£¡£ÈçÏÂͼËùʾ£º£º£º


OG¶«·½Ìü¡¤(Öйú´ó½)


ÀûÓø÷ì϶³É¹¦¶ÁÈ¡µ½/WEB-INF/Ŀ¼ÏÂweb.xmlÎļþ¡£¡£¡£


OG¶«·½Ìü¡¤(Öйú´ó½)


2.2 JspÎļþÔ̺¬·ì϶


µ±ajp URIÉèÖÃΪjspõ辶ʱ£¬£¬£¬Tomcat»áŲÓÃJspServletµÄservice²½Öè´¦Ö㬣¬£¬ÈçÏÂͼËùʾ£º£º£º


OG¶«·½Ìü¡¤(Öйú´ó½)


ͬÑù»á»ñÈ¡javax.servlet.include.path_info¡¢javax.servlet.include.servlet_pathÕâÁ½¸öÊôÐÔ£¨¾­¹ýÉÏÃæµÄ·ÖÎöÎÒÃÇÒѾ­ÖªÏþÄܹ»Í¨¹ýajpºÍ̸½ÚÖÆÕâÁ½¸öÊôÐÔ£©¡£¡£¡£½«ÕâÁ½¸öÊôÐÔ¶ÔÓ¦µÄֵƴ½Óµ½jspURi±äÁ¿ÖУ¬£¬£¬×îºó½»¸øserviceJspFile²½Öè´¦Ö㬣¬£¬ÈçÏÂͼËùʾ£º£º£º


OG¶«·½Ìü¡¤(Öйú´ó½)


Venus.txtÎļþ´úÂëÈçÏÂËùʾ£º£º£º


OG¶«·½Ìü¡¤(Öйú´ó½)


³É¹¦RCEÁ˾ÖÈçÏÂͼËùʾ£º£º£º


OG¶«·½Ìü¡¤(Öйú´ó½)


Èý¡¢Ó°Ïì°æ±¾


Tomcat 6

Tomcat 7

Tomcat 8

Tomcat 9


ËÄ¡¢¶ã±Ü¹æ»®


½«TomcatÁ¢¼´Éý¼¶µ½9.0.31¡¢8.5.51»ò7.0.100°æ±¾½øÐÐÐÞ¸´¡£¡£¡£


½ûÓÃAJPºÍ̸¡£¡£¡£

±à×ë /conf/server.xml£¬£¬£¬ÕÒµ½ÈçÏÂÐУº£º£º

<Connector port="8009"protocol="AJP/1.3" redirectPort="8443" />

½«´ËÐÐ×¢½âµô£¨Ò²¿Éɾµô¸ÃÐУ©£º£º£º

<!--<Connectorport="8009" protocol="AJP/1.3"redirectPort="8443" />-->


ÅäÖÃsecretÀ´ÉèÖÃAJPºÍ̸µÄÈÏ֤ƾ֤¡£¡£¡£


ÀýÈ磨°ÑÎȱØÐ뽫YOUR_TOMCAT_AJP_SECRET¸ü¸ÄΪһ¸ö°²È«ÐԸߡ¢ÎÞ·¨±»µÈÏв½âµÄÖµ£©£º£º£º

<Connector port="8009"protocol="AJP/1.3" redirectPort="8443"address="YOUR_TOMCAT_IP_ADDRESS" secret="YOUR_TOMCAT_AJP_SECRET"/>