Apache Solr Deserialization Ô¶³Ì´úÂëÖ´ÐÐÎó²îÇ徲ͨ¸æ

Ðû²¼Ê±¼ä 2019-03-13

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


CVE±àºÅ£ºCVE-2019-0192£¬Î£ÏÕ¼¶±ð£º¸ßΣ£¬ CVSS·ÖÖµ£º¹Ù·½Î´ÆÀ¶¨


Ó°Ïì¹æÄ£


ÊÜÓ°Ïì°æ±¾£º 

Apache Solr 5.0.0 to 5.5.5

Apache Solr 6.0.0 to 6.6.5


Îó²î¸ÅÊö


Apache SolrÊÇÒ»¸ö¿ªÔ´µÄËÑË÷·þÎñÆ÷ ¡£¾ßÓи߶ȿɿ¿¡¢¿ÉÉìËõºÍÈÝ´íµÄ£¬ÌṩÂþÑÜʽË÷Òý¡¢¸´Öƺ͸ºÔØÆ½ºâÅÌÎÊ¡¢×Ô¶¯¹ÊÕÏ×ªÒÆºÍ»Ö¸´¡¢¼¯ÖÐÉèÖõȹ¦Ð§ ¡£


SolrΪÌìÏÂÉÏÐí¶à×î´óµÄ»¥ÁªÍøÕ¾µãÌṩËÑË÷ºÍµ¼º½¹¦Ð§ ¡£Solr ʹÓà Java ÓïÑÔ¿ª·¢£¬Ö÷Òª»ùÓÚ HTTP ºÍ Apache Lucene ʵÏÖ ¡£


Apache Solr Öд洢µÄ×ÊÔ´ÊÇÒÔ Document Ϊ¹¤¾ß¾ÙÐд洢µÄ ¡£Ã¿¸öÎĵµÓÉһϵÁÐµÄ Field ×é³É£¬Ã¿¸ö Field ÌåÏÖ×ÊÔ´µÄÒ»¸öÊôÐÔ ¡£Solr ÖеÄÿ¸ö Document ÐèÒªÓÐÄÜΨһ±êʶÆä×ÔÉíµÄÊôÐÔ£¬Ä¬ÈÏÇéÐÎÏÂÕâ¸öÊôÐÔµÄÃû×ÖÊÇ id£¬ÔÚ Schema ÉèÖÃÎļþÖÐʹÓãº<uniqueKey>id</uniqueKey>¾ÙÐÐÐÎò ¡£


¸ÃÎó²îʵÖÊÊÇConfigAPIÔÊÐíͨ¹ýHTTP POSTÇëÇóÉèÖÃSolrµÄJMX·þÎñÆ÷ ¡£¹¥»÷Õß¿ÉÒÔͨ¹ýConfigAPI½«ÆäÉèÖÃÖ¸Ïò¶ñÒâRMI·þÎñÆ÷£¬Ê¹ÓÃSolrµÄ²»Çå¾²·´ÐòÁл¯À´´¥·¢Solr¶ËÉϵÄÔ¶³Ì´úÂëÖ´ÐÐ ¡£


ÏÖÔÚ¾Ýͳ¼Æ£¬ÔÚÈ«Çò¹æÄ£ÄÚ¶Ô»¥ÁªÍø¿ª·ÅApache SolrµÄ×ʲúÊýÄ¿¶à´ï15Íǫ̀£¬ÆäÖйéÊôÖйúµØÇøµÄÊÜÓ°Ïì×ʲúÊýĿΪ2ÍòÒÔÉÏ ¡£


Îó²îÆÊÎö


Apache SolrÖеÄConfigAPIÔÊÐíÉèÖÃÒ»¸öjmx.serviceUrl£¬Ëü½«½¨ÉèÒ»¸öеÄJMXConnectorServerFactory£¬²¢Í¨¹ý¡°°ó¶¨¡±²Ù×÷´¥·¢¶ÔÄ¿µÄRMI/LDAP·þÎñÆ÷µÄŲÓà ¡£¶ñÒâµÄRMI·þÎñÆ÷¿ÉÒÔÏìÓ¦í§ÒâµÄ¹¤¾ß£¬ÕâЩ¹¤¾ß½«ÔÚSolr¶ËʹÓÃjavaµÄObjectInputStream·´ÐòÁл¯£¬Õâ±»ÒÔΪÊDz»Çå¾²µÄ ¡£ÕâÖÖÀàÐ͵ÄÎó²î¿ÉÒÔʹÓÃysoserial¹¤¾ß ¡£Æ¾Ö¤Ä¿µÄÀà·¾¶£¬¹¥»÷Õß¿ÉÒÔʹÓÃÆäÖÐÒ»¸ö¡°gadget chain¡±À´´¥·¢Solr¶ËÉϵÄÔ¶³Ì´úÂëÖ´ÐÐ ¡£


Ê×ÏÈÐèÒªÏàʶһÏÂconfigAPI£¬ËûÖ÷Òª¹¦Ð§ÊǼìË÷»òÐÞ¸ÄÉèÖà ¡£ GETÈÏÕæ¼ìË÷£¬POSTÈÏÕæÖ´ÐÐÏÂÁî ¡£Í¨¹ý´«Èëset-propertyÊôÐÔ£¬½á¹¹¶ñÒâµÄÊý¾Ý£¬´«ÈëÖ¸Ïò¶ñÒâµÄrmi·þÎñÆ÷µÄÁ´½Ó£¬ÁýÕÖ֮ǰ·þÎñÆ÷µÄÔ­ÉèÖã¬Ê¹µÃÄ¿µÄ·þÎñÆ÷Óë¹¥»÷ÕߵĶñÒârmi·þÎñÆ÷ÏàÁ¬£¬¹¥»÷Õß¿ÉÒÔʹÓÃysoserial¹¤¾ß£¬Í¨¹ýrmi·þÎñÆ÷ÏòÔ¶¶ËÄ¿µÄ·þÎñÆ÷·¢ËÍÏÂÁ²¢ÔÚÄ¿µÄ·þÎñÆ÷ÉÏÖ´ÐУ¬ÊµÏÖÔ¶³ÌÏÂÁîÖ´ÐÐ ¡£


Îó²î´¥·¢µãÔÚJmxMonitoredMap.classÖеÄnewJMXConnectorServerº¯ÊýÖУ¬´Ëº¯Êý¿ÉÒÔÈ÷þÎñÆ÷ÓëеÄrmi·þÎñÆ÷ÏàÅþÁ¬£¬²¢ÇÒÿ´ÎŲÓô˺¯Êý¶¼»á±¬·¢Ò»¸ö²î±ðµÄ¹¤¾ß ¡£ÒÔÊǵ±¹¥»÷Õßͨ¹ýÁýÕÖ´«Èë×Ô¼ºµÄrmi·þÎñÆ÷µØµã£¬Ä¿µÄ·þÎñÆ÷¾Í»áÓëÖ®ÏàÁ¬£¬Ö´ÐÐÄÚ²¿µÄÏÂÁî ¡£


´úÂëÈçÏ£º


×ðÁú¿­Ê±¡¤(ÖйúÇø)ÈËÉú¾ÍÊDz«!


¸´ÏÖÈçÏ£º

ÏÂÔØApache Solr 5.5.3°æ±¾×÷Ϊ°Ð»ú£¨×¢ÖØ£¬Ò»¶¨ÒªÊ¹ÓÃjre7u25ÒÔÏÂjre£©£¬Ö´ÐÐsolr -e techproducts -Dcom.sun.management.jmxremoteÖ¸ÁÆô·þÎñ ¡£


ʹÓÃysoserial¹¤¾ß£¬Ö´ÐÐJava -cp ysoserial-0.0.6-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener 12363 Jdk7u21 "calc"Ö¸Á¼àÌý12363¶Ë¿Ú ¡£È»ºó´«ÈëÒÔÏÂÊý¾Ý£º


×ðÁú¿­Ê±¡¤(ÖйúÇø)ÈËÉú¾ÍÊDz«!


Àֳɵ¯³öÅÌËãÆ÷£¬Èçͼ£º


×ðÁú¿­Ê±¡¤(ÖйúÇø)ÈËÉú¾ÍÊDz«!


ÐÞ¸´½¨Òé


Apache Solr¹Ù·½ÒѾ­ÔÚApache Solr 7.0 ¼°Ö®ºó°æ±¾ÐÞ¸´Á˸ÃÎó²î£¬Óû§¿ÉÒÔ¸üÐÂÖÁApache Solr 7.0 ¼°Ö®ºó°æ±¾£ºhttp://mirror.bit.edu.cn/apache/lucene/solr/ ¡£


Apache Solr¹Ù·½ÒѾ­Ðû²¼ÁËSOLR-13301.patch ²¹¶¡£¬Óû§ÐèҪװÖò¹¶¡ºóÖØÐ±àÒëSolr£¬²¹¶¡µØµã£ºhttps://issues.apache.org/jira/secure/attachment/12961503/SOLR-13301.patch ¡£


²Î¿¼Á´½Ó

https://issues.apache.org/jira/browse/SOLR-13301