oidc-spa 8.6.6 → 8.6.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,7 @@
1
1
  import { assert } from "../tools/tsafe/assert";
2
2
  import { markTokenSubstitutionAsEnabled, substitutePlaceholderByRealToken } from "./tokenPlaceholderSubstitution";
3
3
  import { getIsHostnameAuthorized } from "../tools/isHostnameAuthorized";
4
+ import { getIsLikelyDevServer } from "../tools/isLikelyDevServer";
4
5
  const viteHashedJsAssetPathRegExp = /\/assets\/[^/]+-[a-zA-Z0-9_-]{8}\.js$/;
5
6
  export function enableTokenExfiltrationDefense(params) {
6
7
  const { resourceServersAllowedHostnames = [], serviceWorkersAllowedHostnames = [] } = params;
@@ -16,172 +17,198 @@ export function enableTokenExfiltrationDefense(params) {
16
17
  function patchFetchApiToSubstituteTokenPlaceholder(params) {
17
18
  const { resourceServersAllowedHostnames } = params;
18
19
  const fetch_actual = window.fetch;
19
- window.fetch = async function fetch(input, init) {
20
- const request = input instanceof Request ? input : new Request(input, init);
21
- let didSubstitute = false;
22
- let url;
23
- {
24
- const url_before = `${request.url}`;
25
- url = substitutePlaceholderByRealToken(url_before);
26
- if (url !== url_before) {
27
- didSubstitute = true;
28
- }
29
- }
30
- prevent_fetching_of_hashed_js_assets: {
31
- const { pathname } = new URL(url, window.location.href);
32
- if (!viteHashedJsAssetPathRegExp.test(pathname)) {
33
- break prevent_fetching_of_hashed_js_assets;
34
- }
35
- throw new Error("oidc-spa: Blocked request to hashed js static asset.");
36
- }
37
- const headers = new Headers();
38
- request.headers.forEach((value, key) => {
39
- const nextValue = substitutePlaceholderByRealToken(value);
40
- if (nextValue !== value) {
41
- didSubstitute = true;
42
- }
43
- headers.set(key, nextValue);
44
- });
45
- let body;
46
- handle_body: {
47
- from_init: {
48
- if (!init) {
49
- break from_init;
20
+ //@ts-expect-error
21
+ const fetchLater_actual = window.fetchLater;
22
+ const createFetchOrFetchLater = (params) => {
23
+ const { isFetchLater } = params;
24
+ const fn = async (input, init) => {
25
+ const request = input instanceof Request ? input : new Request(input, init);
26
+ let didSubstitute = false;
27
+ let url;
28
+ {
29
+ const url_before = `${request.url}`;
30
+ url = substitutePlaceholderByRealToken(url_before);
31
+ if (url !== url_before) {
32
+ didSubstitute = true;
50
33
  }
51
- if (!init.body) {
52
- break from_init;
34
+ }
35
+ prevent_fetching_of_hashed_js_assets: {
36
+ const { pathname } = new URL(url, window.location.href);
37
+ if (!viteHashedJsAssetPathRegExp.test(pathname)) {
38
+ break prevent_fetching_of_hashed_js_assets;
53
39
  }
54
- if (input instanceof Request && input.body !== null) {
55
- break from_init;
40
+ throw new Error("oidc-spa: Blocked request to hashed js static asset.");
41
+ }
42
+ const headers = new Headers();
43
+ request.headers.forEach((value, key) => {
44
+ const nextValue = substitutePlaceholderByRealToken(value);
45
+ if (nextValue !== value) {
46
+ didSubstitute = true;
56
47
  }
57
- if (typeof init.body === "string") {
58
- body = substitutePlaceholderByRealToken(init.body);
59
- if (init.body !== body) {
60
- didSubstitute = true;
48
+ headers.set(key, nextValue);
49
+ });
50
+ let body;
51
+ handle_body: {
52
+ from_init: {
53
+ if (!init) {
54
+ break from_init;
61
55
  }
62
- break handle_body;
63
- }
64
- if (init.body instanceof URLSearchParams) {
65
- let didUrlSearchParamsSubstitute = false;
66
- const next = new URLSearchParams();
67
- init.body.forEach((value, key) => {
68
- const nextValue = substitutePlaceholderByRealToken(value);
69
- if (nextValue !== value) {
70
- didUrlSearchParamsSubstitute = true;
56
+ if (!init.body) {
57
+ break from_init;
58
+ }
59
+ if (input instanceof Request && input.body !== null) {
60
+ break from_init;
61
+ }
62
+ if (typeof init.body === "string") {
63
+ body = substitutePlaceholderByRealToken(init.body);
64
+ if (init.body !== body) {
65
+ didSubstitute = true;
71
66
  }
72
- next.append(key, nextValue);
73
- });
74
- if (didUrlSearchParamsSubstitute) {
75
- didSubstitute = true;
67
+ break handle_body;
76
68
  }
77
- body = didUrlSearchParamsSubstitute ? next : init.body;
78
- break handle_body;
79
- }
80
- if (init.body instanceof FormData) {
81
- let didFormDataSubstitute = false;
82
- const next = new FormData();
83
- init.body.forEach((value, key) => {
84
- if (typeof value === "string") {
69
+ if (init.body instanceof URLSearchParams) {
70
+ let didUrlSearchParamsSubstitute = false;
71
+ const next = new URLSearchParams();
72
+ init.body.forEach((value, key) => {
85
73
  const nextValue = substitutePlaceholderByRealToken(value);
86
74
  if (nextValue !== value) {
87
- didFormDataSubstitute = true;
75
+ didUrlSearchParamsSubstitute = true;
88
76
  }
89
77
  next.append(key, nextValue);
90
- return;
78
+ });
79
+ if (didUrlSearchParamsSubstitute) {
80
+ didSubstitute = true;
81
+ }
82
+ body = didUrlSearchParamsSubstitute ? next : init.body;
83
+ break handle_body;
84
+ }
85
+ if (init.body instanceof FormData) {
86
+ let didFormDataSubstitute = false;
87
+ const next = new FormData();
88
+ init.body.forEach((value, key) => {
89
+ if (typeof value === "string") {
90
+ const nextValue = substitutePlaceholderByRealToken(value);
91
+ if (nextValue !== value) {
92
+ didFormDataSubstitute = true;
93
+ }
94
+ next.append(key, nextValue);
95
+ return;
96
+ }
97
+ next.append(key, value);
98
+ });
99
+ if (didFormDataSubstitute) {
100
+ didSubstitute = true;
91
101
  }
92
- next.append(key, value);
93
- });
94
- if (didFormDataSubstitute) {
95
- didSubstitute = true;
102
+ body = didFormDataSubstitute ? next : init.body;
103
+ break handle_body;
96
104
  }
97
- body = didFormDataSubstitute ? next : init.body;
105
+ if (init.body instanceof Blob) {
106
+ break from_init;
107
+ }
108
+ body = init.body;
98
109
  break handle_body;
99
110
  }
100
- if (init.body instanceof Blob) {
101
- break from_init;
102
- }
103
- body = init.body;
104
- break handle_body;
105
- }
106
- if (request.body === null) {
107
- body = undefined;
108
- break handle_body;
109
- }
110
- const shouldInspectBody = (() => {
111
- let ct = headers.get("Content-Type");
112
- if (ct === null) {
113
- return false;
114
- }
115
- ct = ct.toLocaleLowerCase();
116
- if (!ct.startsWith("application/json") &&
117
- !ct.startsWith("application/x-www-form-urlencoded")) {
118
- return false;
111
+ if (request.body === null) {
112
+ body = undefined;
113
+ break handle_body;
119
114
  }
120
- const len_str = headers.get("Content-Length");
121
- if (len_str === null) {
122
- // NOTE: This will have performance implications for large bodies
123
- // but we have no other way to know the size
115
+ const shouldInspectBody = (() => {
116
+ let ct = headers.get("Content-Type");
117
+ if (ct === null) {
118
+ return false;
119
+ }
120
+ ct = ct.toLocaleLowerCase();
121
+ if (!ct.startsWith("application/json") &&
122
+ !ct.startsWith("application/x-www-form-urlencoded")) {
123
+ return false;
124
+ }
125
+ const len_str = headers.get("Content-Length");
126
+ if (len_str === null) {
127
+ // NOTE: This will have performance implications for large bodies
128
+ // but we have no other way to know the size
129
+ return true;
130
+ }
131
+ const len = parseInt(len_str, 10);
132
+ if (!Number.isFinite(len) || len > 100000) {
133
+ return false;
134
+ }
124
135
  return true;
136
+ })();
137
+ if (!shouldInspectBody) {
138
+ body = request.body;
139
+ break handle_body;
125
140
  }
126
- const len = parseInt(len_str, 10);
127
- if (!Number.isFinite(len) || len > 100000) {
128
- return false;
141
+ const bodyText = await request.clone().text();
142
+ const nextBodyText = substitutePlaceholderByRealToken(bodyText);
143
+ if (nextBodyText !== bodyText) {
144
+ didSubstitute = true;
129
145
  }
130
- return true;
131
- })();
132
- if (!shouldInspectBody) {
133
- body = request.body;
134
- break handle_body;
135
- }
136
- const bodyText = await request.clone().text();
137
- const nextBodyText = substitutePlaceholderByRealToken(bodyText);
138
- if (nextBodyText !== bodyText) {
139
- didSubstitute = true;
146
+ body = nextBodyText;
140
147
  }
141
- body = nextBodyText;
142
- }
143
- block_authed_request_to_unauthorized_hostnames: {
144
- if (!didSubstitute) {
145
- break block_authed_request_to_unauthorized_hostnames;
146
- }
147
- const { hostname } = new URL(url, window.location.href);
148
- if (getIsHostnameAuthorized({
149
- allowedHostnames: resourceServersAllowedHostnames,
150
- extendAuthorizationToParentDomain: true,
151
- hostname
152
- })) {
153
- break block_authed_request_to_unauthorized_hostnames;
148
+ block_authed_request_to_unauthorized_hostnames: {
149
+ if (!didSubstitute) {
150
+ break block_authed_request_to_unauthorized_hostnames;
151
+ }
152
+ const { hostname } = new URL(url, window.location.href);
153
+ if (getIsHostnameAuthorized({
154
+ allowedHostnames: resourceServersAllowedHostnames,
155
+ extendAuthorizationToParentDomain: true,
156
+ hostname
157
+ })) {
158
+ break block_authed_request_to_unauthorized_hostnames;
159
+ }
160
+ throw new Error([
161
+ `oidc-spa: Blocked authed request to ${hostname}.`,
162
+ `To authorize this request add "${hostname}" to`,
163
+ "`resourceServersAllowedHostnames`."
164
+ ].join(" "));
165
+ }
166
+ const nextInit = {
167
+ method: request.method,
168
+ headers,
169
+ body,
170
+ mode: request.mode,
171
+ credentials: request.credentials,
172
+ cache: request.cache,
173
+ redirect: request.redirect,
174
+ referrer: request.referrer,
175
+ referrerPolicy: request.referrerPolicy,
176
+ integrity: request.integrity,
177
+ keepalive: request.keepalive,
178
+ signal: request.signal
179
+ };
180
+ {
181
+ //@ts-expect-error
182
+ const duplex = init?.duplex ?? (input instanceof Request ? input.duplex : undefined);
183
+ if (duplex !== undefined) {
184
+ //@ts-expect-error
185
+ nextInit.duplex = duplex;
186
+ }
154
187
  }
155
- throw new Error([
156
- `oidc-spa: Blocked authed request to ${hostname}.`,
157
- `To authorize this request add "${hostname}" to`,
158
- "`resourceServersAllowedHostnames`."
159
- ].join(" "));
160
- }
161
- const nextInit = {
162
- method: request.method,
163
- headers,
164
- body,
165
- mode: request.mode,
166
- credentials: request.credentials,
167
- cache: request.cache,
168
- redirect: request.redirect,
169
- referrer: request.referrer,
170
- referrerPolicy: request.referrerPolicy,
171
- integrity: request.integrity,
172
- keepalive: request.keepalive,
173
- signal: request.signal
174
- };
175
- {
176
- //@ts-expect-error
177
- const duplex = init?.duplex ?? (input instanceof Request ? input.duplex : undefined);
178
- if (duplex !== undefined) {
188
+ fetch_later: {
189
+ if (!isFetchLater) {
190
+ break fetch_later;
191
+ }
192
+ assert(fetchLater_actual !== undefined);
193
+ const activateAfter =
179
194
  //@ts-expect-error
180
- nextInit.duplex = duplex;
195
+ init?.activateAfter ?? (input instanceof Request ? input.activateAfter : undefined);
196
+ if (activateAfter !== undefined) {
197
+ //@ts-expect-error
198
+ nextInit.activateAfter = activateAfter;
199
+ }
200
+ return fetchLater_actual(url, nextInit);
181
201
  }
182
- }
183
- return fetch_actual(url, nextInit);
202
+ return fetch_actual(url, nextInit);
203
+ };
204
+ return fn;
184
205
  };
206
+ window.fetch = createFetchOrFetchLater({ isFetchLater: false });
207
+ // @ts-expect-error
208
+ if (window.fetchLater) {
209
+ // @ts-expect-error
210
+ window.fetchLater = createFetchOrFetchLater({ isFetchLater: true });
211
+ }
185
212
  }
186
213
  function patchXMLHttpRequestApiToSubstituteTokenPlaceholder(params) {
187
214
  const { resourceServersAllowedHostnames } = params;
@@ -224,6 +251,10 @@ function patchXMLHttpRequestApiToSubstituteTokenPlaceholder(params) {
224
251
  };
225
252
  XMLHttpRequest.prototype.send = function send(body) {
226
253
  const state = stateByInstance.get(this);
254
+ // NOTE: Vite's dev server instantiates a websocket before earlyInit runs.
255
+ if (state === undefined && getIsLikelyDevServer()) {
256
+ return send_actual.call(this, body);
257
+ }
227
258
  assert(state !== undefined, "32323484");
228
259
  let nextBody = body;
229
260
  if (typeof body === "string") {
@@ -1 +1 @@
1
- {"version":3,"file":"tokenExfiltrationDefense.js","sourceRoot":"","sources":["../../src/core/tokenExfiltrationDefense.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tokenExfiltrationDefense.js","sourceRoot":"","sources":["../../src/core/tokenExfiltrationDefense.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,14 @@
1
+ import { isBrowser } from "./isBrowser";
1
2
  let isLikelyDevServer_cache = undefined;
3
+ const hasRefreshReg = isBrowser && "$RefreshReg$" in window;
2
4
  export function getIsLikelyDevServer() {
3
5
  if (isLikelyDevServer_cache !== undefined) {
4
6
  return isLikelyDevServer_cache;
5
7
  }
6
8
  const isLikelyDevServer = (() => {
9
+ if (hasRefreshReg) {
10
+ return true;
11
+ }
7
12
  const origin = window.location.origin;
8
13
  if (/^https?:\/\/localhost/.test(origin)) {
9
14
  return true;
@@ -1 +1 @@
1
- {"version":3,"file":"isLikelyDevServer.js","sourceRoot":"","sources":["../../src/tools/isLikelyDevServer.ts"],"names":[],"mappings":"AAAA,IAAI,uBAAuB,GAAwB,SAAS,CAAC;AAE7D,MAAM,UAAU,oBAAoB;IAChC,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE;QAC5B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAEtC,IAAI,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC,EAAE,CAAC;IAEL,uBAAuB,GAAG,iBAAiB,CAAC;IAE5C,OAAO,iBAAiB,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"isLikelyDevServer.js","sourceRoot":"","sources":["../../src/tools/isLikelyDevServer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,IAAI,uBAAuB,GAAwB,SAAS,CAAC;AAE7D,MAAM,aAAa,GAAG,SAAS,IAAI,cAAc,IAAI,MAAM,CAAC;AAE5D,MAAM,UAAU,oBAAoB;IAChC,IAAI,uBAAuB,KAAK,SAAS,EAAE,CAAC;QACxC,OAAO,uBAAuB,CAAC;IACnC,CAAC;IAED,MAAM,iBAAiB,GAAG,CAAC,GAAG,EAAE;QAC5B,IAAI,aAAa,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;QAEtC,IAAI,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,IAAI,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC;QAChB,CAAC;QAED,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC,EAAE,CAAC;IAEL,uBAAuB,GAAG,iBAAiB,CAAC;IAE5C,OAAO,iBAAiB,CAAC;AAC7B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oidc-spa",
3
- "version": "8.6.6",
3
+ "version": "8.6.8",
4
4
  "description": "OIDC Client for Client Centric Web Applications",
5
5
  "repository": {
6
6
  "type": "git",