Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Limiting In-app Navigation, Use of openExternal, and Electron.js Version Upgrade #57

Open
masood opened this issue Nov 27, 2023 · 0 comments

Comments

@masood
Copy link

masood commented Nov 27, 2023

Summary:
Thank you for designing the Infiniti Clips Desktop Application making it open-source and available. The application does a great job of following secure practices. We list pointers of concern below that can help make the application more secure.

  1. [In-app Navigation] The application currently limits in-app navigation with a listener on the ‘new-window’ event [Ref]. Electron has updated this event and recommends using setWindowOpenHandler. [Link] Similarly, it may be useful to also set an event.preventDefault() on the ‘will-navigate’ event as a precaution.
  2. [Use of openExternal] We observed that the application uses shell.openExternal(). It may be helpful to consider sanitizing the URL before making this call. Passing a file-based link, for example, can lead to triggering an executable.
  3. [Keeping up-to-date w/ Electron.js]: The application uses an old version of Electron.js (v21.2.0) and Chromium which are vulnerable to numerous known V8 and Blink attacks. Upgrading to an even newer version will be a great idea as well [Link]

Thank you!

Platform(s) Affected:
Windows, Linux, MacOS


Mir Masood Ali, PhD student, University of Illinois Chicago
Mohammad Ghasemisharif, PhD Candidate, University of Illinois Chicago
Chris Kanich, Associate Professor, University of Illinois Chicago
Jason Polakis, Associate Professor, University of Illinois Chicago

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant