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·þÎñÆ÷µØÖ·£¬Ö¸±ê·þÎñÆ÷¾Í»áÓëÖ®ÏàÁ¬£¬Ö´ÐÐÄÚ²¿µÄºÅÁî¡£


´úÂëÈçÏ£º


GA»Æ½ð¼×¡¤(ÖйúÇø)¹Ù·½ÍøÕ¾


¸´ÏÖÈçÏ£º

ÏÂÔØ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¶Ë¿Ú¡£¶øºó´«ÈëÒÔÏÂÊý¾Ý£º


GA»Æ½ð¼×¡¤(ÖйúÇø)¹Ù·½ÍøÕ¾


³É¹¦µ¯³öÍÆËãÆ÷£¬Èçͼ£º


GA»Æ½ð¼×¡¤(ÖйúÇø)¹Ù·½ÍøÕ¾


½¨¸´½¨Òé


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