Google fixed the vulnerability with Google Maps that was reported through Google Vulnerability Reward Program (VRP) and in return, the researchers are paid with financial rewards.
The XSS vulnerability with Google Maps discovered by Zohar Shachar, Head of Application Security at Wix, and reported to Google through their bug bounty program.
XSS with Google Maps
The vulnerability resides in Google Maps that are used for creating your map. Once you have the maps created you can export them in various formats such as CSV, XLSX, KML, or GPX.
Shachar exported the map in KML format that was used to display geographic data in an Earth browser such as Google Earth.
The map name was found to be present in the CDATA tag “which means our code will not be rendered by the browser.”
According to Shachar, “by adding ‘]]>’ at the beginning of your payload (I.e. as the beginning of the ‘map name’), you can escape from the CDATA and add arbitrary XML content (which will be rendered as XML) – leading immediately to XSS.”
He also provided the steps to reproduce the issue. The bug was reported to Google and they paid 5000$ bounty.
Bypassing the Fix
To fix the closing of the CDATA tag Google added another CDATA tag, Shachar reported the issue again to Google.
“I was genuinely surprised the bypass was so simple. I reported it so quickly (literally 10 minutes between checking my mailbox and reporting a bypass), that right after sending this mail I started doubting myself.”
Within two hours, Google acknowledged the issue and reopened the case, and updated the bug.
The first XSS issue was reported to Google on April 23 & fixed on June 7, the bypass to the patch reported on the same day and the issue fixed, the second payout provided on June 18. For each vulnerability report Shachar $5,000, so the total reward is $10,000.
“Ever since this Google-maps fix bypass incident I started to always re-validate fixes, even for simple things, and it has been paying off. I full-heartedly encourage you to do the same,” Shachar said.