Malicious websites can take advantage of the browsers' extensions APIs to run code within the browser and steal sensitive information such as bookmarks, browsing history, or even user cookies.
Of course an attacker can with cookies can capture the user's active sessions and access sensitive accounts such as email inboxes, social profiles, or bank accounts, etc.
In addition, the same APIs (always talking about extensions used by browsers) can be used to enable malicious files to be downloaded and stored on the user's device. This data is stored in the storage of an extension, and can later be used to track users across the web.
These types of attacks are no longer theoretical, having recently been proven in a study published by Dolière Francis Somé, a researcher at the Université Côte d'Azur and INRIA, the French research institute.
Somé developed a tool and looked over 78.000 extensions for Chrome, Firefox and Opera. He managed to identify 197 extensions that allowed the API's internal communication interface to appear with web applications. This can give malicious websites access to the data stored in a user's browser, data that should normally not be accessible.
|Read browsing history||40||-||-||1|
|Get extensions installed||33||-||-||33|
|Store / retrieve data||85||2||3||90|
|Total of unique extensions||171||16||10||197|
The French researcher reports that he was surprised by the results, as only 15 (7,61%) of 197 extensions were development tools, a category of extensions that usually have full control over what happens to a browser and are from applications that do not must have security holes.
About 55% of all extensions had less than 1.000 installations, but over 15% had over 10.000.
Somé said he advised browser developers of his findings before publishing the survey to the public in early January.
"Everyone recognized the problems," Somé says. “Firefox has removed all the extensions I mentioned. Opera has also removed all extensions but there are 2 more that can be exploited to enable downloads. "
“Chrome also recognized the problem. We are still discussing together the possible measures to be taken. ”
The researcher also created a tool that allows users to check if their extensions contain a susceptible API that can exploit malicious websites. The tool is web-based and hosted on this page.
To use it, you'll need to copy-paste the contents of the manifest.json file of the extension you are interested in.