electron/spec-main
Biru Mohanathas ced2e8779f
feat: Allow detection of MITM HTTPS proxies like ZScaler (#30174)
* feat: Allow detection of MITM HTTPS proxies like ZScaler

For security purposes, Figma heavily restrics the origins that are
allowed to load within our Electron app. Unfortunately some corporate
environments use MITM proxies like ZScaler, which intercepts our
connection to `https://www.figma.com` and serves a redirect to e.g.
`https://gateway.zscloud.net` before finally redirecting back to
`https://www.figma.com`.

In order to detect this situation and handle it gracefully, we need to
be able to know whether or not the certificate for our own origin
(`https://www.figma.com`) is chained to a known root. We do this by
exposesing `CertVerifyResult::is_issued_by_known_root`.

If the certification verification passed without the certificate being
tied to a known root, we can safely assume that we are dealing with a
MITM proxy that has its root CA installed locally on the machine. This
means that HTTPS can't be trusted so we might as well make life easier
for corporate users by loosening our origin restrictions without any
manual steps.

* Tweak docs wording
2021-08-02 10:24:58 +09:00
..
fixtures feat: partially support chrome.tabs.update (#30069) 2021-07-27 13:36:22 -07:00
.eslintrc
.gitignore
ambient.d.ts fix: type internal APIs that can return null properly (#29852) 2021-07-27 14:48:12 +09:00
api-app-spec.ts fix: use correct userData path when unbundled (#30113) 2021-07-14 13:10:37 -07:00
api-auto-updater-spec.ts ci: enable arm64 macOS tests (#24832) 2021-01-21 18:36:52 -05:00
api-autoupdater-darwin-spec.ts chore: update to latest TypeScript, which has built-in WeakRef declarations (#27425) 2021-01-22 11:25:47 -08:00
api-browser-view-spec.ts feat: add win.setTopBrowserView() so that BrowserViews can be raised (#27007) 2021-02-10 16:23:35 +09:00
api-browser-window-spec.ts refactor: remove base::Value from WebContentsPreferences (#30193) 2021-07-26 09:04:09 -07:00
api-content-tracing-spec.ts ci: enable arm64 macOS tests (#24832) 2021-01-21 18:36:52 -05:00
api-context-bridge-spec.ts feat: add support for Blob's going over the ctx bridge (#29247) 2021-05-26 10:34:29 -07:00
api-crash-reporter-spec.ts test: deflake crashReporter.getLastCrashReport test (#30276) 2021-07-28 08:56:15 -07:00
api-debugger-spec.ts feat: expose sessionId in debugger module (#24170) 2020-07-02 13:04:20 -07:00
api-deprecate-spec.ts refactor: replace a few any-s with proper types (#25681) 2020-10-08 03:01:23 +02:00
api-desktop-capturer-spec.ts feat: enable context isolation by default (#26890) 2021-03-01 16:52:29 -05:00
api-dialog-spec.ts feat: add signal option to dialog.showMessageBox (#26102) 2021-07-15 07:59:27 +09:00
api-global-shortcut-spec.ts
api-in-app-purchase-spec.ts
api-ipc-main-spec.ts feat: enable context isolation by default (#26890) 2021-03-01 16:52:29 -05:00
api-ipc-renderer-spec.ts feat: enable context isolation by default (#26890) 2021-03-01 16:52:29 -05:00
api-ipc-spec.ts fix: ensure the typescript definitions only export correct value types (#28712) 2021-06-15 13:50:31 -07:00
api-menu-item-spec.ts fix: keep shifted character in menu accelerator (#29202) 2021-06-02 16:32:48 +09:00
api-menu-spec.ts chore: update to latest TypeScript, which has built-in WeakRef declarations (#27425) 2021-01-22 11:25:47 -08:00
api-native-theme-spec.ts spec: attempt to fix flaky nativeTheme spec (#29022) 2021-05-05 18:04:38 -07:00
api-net-log-spec.ts chore: update to latest TypeScript, which has built-in WeakRef declarations (#27425) 2021-01-22 11:25:47 -08:00
api-net-spec.ts ci: enable arm64 macOS tests (#24832) 2021-01-21 18:36:52 -05:00
api-notification-dbus-spec.ts
api-notification-spec.ts feat: custom toast xml and failure reporting for notifications (#25401) 2020-09-29 12:20:10 -07:00
api-power-monitor-spec.ts feat: add powerMonitor.onBatteryPower (#26494) 2020-11-16 16:31:46 -08:00
api-power-save-blocker-spec.ts
api-protocol-spec.ts fix: handle redirects within registered protocols (#29796) 2021-07-15 20:14:46 +09:00
api-screen-spec.ts fix: add a "set" trap to the "screen" module proxy (#26818) 2020-12-07 09:20:50 -08:00
api-service-workers-spec.ts test: use new uuid for each ServiceWorker test (#27444) 2021-01-23 10:37:51 +09:00
api-session-spec.ts feat: Allow detection of MITM HTTPS proxies like ZScaler (#30174) 2021-08-02 10:24:58 +09:00
api-shell-spec.ts test: disable shell.trashItem in renderer test on win-ia32 (#28868) 2021-04-27 14:35:31 -07:00
api-subframe-spec.ts feat: enable context isolation by default (#26890) 2021-03-01 16:52:29 -05:00
api-system-preferences-spec.ts chore: remove deprecated systemPreferences methods (#26849) 2020-12-16 08:34:24 +09:00
api-touch-bar-spec.ts
api-tray-spec.ts refactor: remove path from nativeImage converter (#26546) 2021-01-04 12:58:31 -08:00
api-view-spec.ts
api-web-contents-spec.ts chore: remove unused getWebPreferences method (#30160) 2021-07-19 09:29:23 -07:00
api-web-contents-view-spec.ts test: disable some tests under ASan which might receive SIGKILL because of OOM (#28156) 2021-03-16 17:02:47 -04:00
api-web-frame-main-spec.ts feat: add WebFrameMain.visibilityState (#28706) 2021-04-22 12:00:58 -04:00
api-web-frame-spec.ts chore: remove deprecated worldSafeExecuteJavaScript option (#28456) 2021-04-08 12:03:57 -04:00
api-web-request-spec.ts fix: handle redirects within registered protocols (#29796) 2021-07-15 20:14:46 +09:00
asar-spec.ts test: worker should be able to load asar files (#28858) 2021-04-27 12:07:05 -04:00
autofill-spec.ts
chromium-spec.ts chore: remove experimental from navigator.serial implementation (#30237) 2021-07-30 08:57:22 +09:00
crash-spec.ts build: give ASAN tests more memory to avoid SIGKILL or disabling tests (#28567) 2021-04-09 16:09:17 +09:00
events-helpers.ts chore: deprecate remote (#25293) 2020-09-10 09:17:17 -07:00
extensions-spec.ts feat: partially support chrome.tabs.update (#30069) 2021-07-27 13:36:22 -07:00
guest-window-manager-spec.ts fix: stop window.open from hanging when prevented (#29851) 2021-06-24 08:50:48 -07:00
index.js chore: remove experimental from navigator.serial implementation (#30237) 2021-07-30 08:57:22 +09:00
internal-spec.ts feat: remove deprecated additionalFeatures (#28548) 2021-04-19 15:46:54 -07:00
logging-spec.ts spec: fix check for electron_common_testing binding in logging-spec.ts (#30086) 2021-07-12 22:11:19 -07:00
modules-spec.ts feat: enable context isolation by default (#26890) 2021-03-01 16:52:29 -05:00
node-spec.ts fix: improper wrapping of fs.promises.readFile (#29528) 2021-06-07 21:19:39 +02:00
package.json build(deps-dev): bump ws from 7.2.1 to 7.4.6 in /spec-main (#29421) 2021-06-18 14:20:29 -07:00
pipe-transport.ts
release-notes-spec.ts chore: graceful handling of notes with sub-lists (#25279) 2020-09-03 14:42:48 -05:00
security-warnings-spec.ts chore: remove deprecated remote module (#25734) 2021-03-09 17:12:40 -08:00
spec-helpers.ts test: deflake crashReporter.getLastCrashReport test (#30276) 2021-07-28 08:56:15 -07:00
spellchecker-spec.ts fix: webFrame spell checker APIs crashing in sandboxed renderers (#29053) 2021-05-10 14:19:23 +02:00
types-spec.ts chore: bump Node.js to v16.2.0 (#29244) 2021-06-17 08:50:56 +02:00
version-bump-spec.ts build: update version-bumper to support alpha (#30165) 2021-07-19 17:58:15 -07:00
video-helpers.js chore: fix minor script warnings (#25575) 2020-09-23 13:21:34 -07:00
visibility-state-spec.ts feat: enable context isolation by default (#26890) 2021-03-01 16:52:29 -05:00
webview-spec.ts docs: add <webview> 'did-attach' event documentation (#29899) 2021-07-14 20:59:20 +09:00
window-helpers.ts
yarn.lock build(deps-dev): bump ws from 7.2.1 to 7.4.6 in /spec-main (#29421) 2021-06-18 14:20:29 -07:00