You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The original https://github.com/microsoft/vscode-arduino code (which this repo forked from) has a remote code execution vulnerability. That is why the extension was deprecated. Please see the link below for details.
@MatthewSteeves Fair enough. When I reported this vulnerability to Microsoft, they said their resolution was to deprecate the plugin. So the vulnerability may have been a contributing factor, if not the entire reason, for deprecation.
@lersi The core issue is that the plugin launches an unauthenticated localhost webserver. This webserver exposes sensitive capabilities. Anyone who can send network requests to this webserver (say a malicious webpage) can exploit the capabilities of the webserver.
To reproduce:
Activate the plugin
Run sudo netstat -tunpl and note the webserver's port
Run curl -X POST -H 'Content-Type: application/json' --data '{"link": "https://www.example.com/"}' http://localhost:55842/api/openlink (but first update the port).
The full RCE exploit is a bit more involved. I plan to share it at a later time. But the crux of the matter is this exposed webserver.
My suggestion would be to remove the webserver entirely, and use a different IPC mechanism between the UI and the code that invokes arduino-cli.
Hello folks,
The original https://github.com/microsoft/vscode-arduino code (which this repo forked from) has a remote code execution vulnerability. That is why the extension was deprecated. Please see the link below for details.
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2024-43488
It may be worth validating whether the vulnerability was transferred to this repo.
The text was updated successfully, but these errors were encountered: