@redplanethq/corebrain 2.8.26 → 2.8.27

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.
@@ -8,10 +8,26 @@ export declare function generateSecurityKey(): string;
8
8
  export declare function verifySecurityKey(rawToken: string | undefined): boolean;
9
9
  /** Extract the bearer token from an Authorization header, or null. */
10
10
  export declare function extractBearer(header: string | undefined): string | null;
11
+ /**
12
+ * Verify a short-lived xterm WS ticket. Ticket format:
13
+ *
14
+ * base64url(JSON({sid, exp})) "." base64url(HMAC-SHA256(hmacKey, payload))
15
+ *
16
+ * `hmacKey` is the gateway's stored `securityKeyHash` (hex string of
17
+ * sha256(rawKey)) — the webapp recomputes the same value from the raw key it
18
+ * decrypted from its DB, so both sides arrive at the same MAC key without
19
+ * having to share a separate secret.
20
+ *
21
+ * The ticket is bound to a single PTY: the caller must pass the `session_id`
22
+ * the WS is attaching to so we can reject tickets minted for a different
23
+ * session. Expiry is checked with a small (+5s) skew tolerance.
24
+ */
25
+ export declare function verifyTicket(rawTicket: string | undefined, sessionId: string): boolean;
11
26
  /**
12
27
  * Fastify onRequest hook. Skips authentication for paths in `skip`
13
- * (e.g. `/healthz/public`). Every other request must present a valid Bearer
14
- * securityKey there is no loopback bypass.
28
+ * (e.g. `/healthz/public`). On `TICKET_PATHS` requests may authenticate
29
+ * via `?ticket=…&session_id=…`; every other request must present a valid
30
+ * Bearer securityKey — there is no loopback bypass.
15
31
  */
16
32
  export declare function makeAuthHook(skip?: string[]): (req: FastifyRequest, reply: FastifyReply) => Promise<void>;
17
33
  //# sourceMappingURL=auth.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/server/api/auth.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,cAAc,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAG1D,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAQvE;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGvE;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,IAAI,GAAE,MAAM,EAAwB,IACjC,KAAK,cAAc,EAAE,OAAO,YAAY,mBAOvE"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/server/api/auth.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAC,cAAc,EAAE,YAAY,EAAC,MAAM,SAAS,CAAC;AAG1D,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3C;AAED,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAQvE;AAED,sEAAsE;AACtE,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAGvE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,YAAY,CAC3B,SAAS,EAAE,MAAM,GAAG,SAAS,EAC7B,SAAS,EAAE,MAAM,GACf,OAAO,CAoCT;AAWD;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,IAAI,GAAE,MAAM,EAAwB,IACjC,KAAK,cAAc,EAAE,OAAO,YAAY,mBAyBvE"}
@@ -1,4 +1,4 @@
1
- import { createHash, timingSafeEqual, randomBytes } from 'node:crypto';
1
+ import { createHash, createHmac, timingSafeEqual, randomBytes } from 'node:crypto';
2
2
  import { getPreferences } from '../../config/preferences.js';
3
3
  export function hashKey(key) {
4
4
  return createHash('sha256').update(key).digest('hex');
@@ -27,15 +27,95 @@ export function extractBearer(header) {
27
27
  return null;
28
28
  return header.slice('Bearer '.length).trim();
29
29
  }
30
+ /**
31
+ * Verify a short-lived xterm WS ticket. Ticket format:
32
+ *
33
+ * base64url(JSON({sid, exp})) "." base64url(HMAC-SHA256(hmacKey, payload))
34
+ *
35
+ * `hmacKey` is the gateway's stored `securityKeyHash` (hex string of
36
+ * sha256(rawKey)) — the webapp recomputes the same value from the raw key it
37
+ * decrypted from its DB, so both sides arrive at the same MAC key without
38
+ * having to share a separate secret.
39
+ *
40
+ * The ticket is bound to a single PTY: the caller must pass the `session_id`
41
+ * the WS is attaching to so we can reject tickets minted for a different
42
+ * session. Expiry is checked with a small (+5s) skew tolerance.
43
+ */
44
+ export function verifyTicket(rawTicket, sessionId) {
45
+ if (!rawTicket || !sessionId)
46
+ return false;
47
+ const hmacKey = getPreferences().gateway?.securityKeyHash;
48
+ if (!hmacKey)
49
+ return false;
50
+ const dot = rawTicket.indexOf('.');
51
+ if (dot <= 0 || dot === rawTicket.length - 1)
52
+ return false;
53
+ const payloadB64 = rawTicket.slice(0, dot);
54
+ const sigB64 = rawTicket.slice(dot + 1);
55
+ const expected = createHmac('sha256', hmacKey).update(payloadB64).digest();
56
+ let provided;
57
+ try {
58
+ provided = Buffer.from(sigB64, 'base64url');
59
+ }
60
+ catch {
61
+ return false;
62
+ }
63
+ if (provided.length !== expected.length)
64
+ return false;
65
+ if (!timingSafeEqual(provided, expected))
66
+ return false;
67
+ let payload;
68
+ try {
69
+ payload = JSON.parse(Buffer.from(payloadB64, 'base64url').toString('utf8'));
70
+ }
71
+ catch {
72
+ return false;
73
+ }
74
+ if (typeof payload.sid !== 'string' || typeof payload.exp !== 'number') {
75
+ return false;
76
+ }
77
+ if (payload.sid !== sessionId)
78
+ return false;
79
+ // 5s skew tolerance for clock drift between webapp and gateway hosts.
80
+ if (payload.exp + 5_000 < Date.now())
81
+ return false;
82
+ return true;
83
+ }
84
+ /**
85
+ * Paths where `?ticket=…` is accepted in lieu of `Authorization: Bearer`.
86
+ * Kept tiny and explicit — the ticket auth path is only for browser-direct
87
+ * WebSocket attaches; every other route still requires the full security key.
88
+ */
89
+ const TICKET_PATHS = new Set([
90
+ '/api/coding/coding_xterm_session',
91
+ ]);
30
92
  /**
31
93
  * Fastify onRequest hook. Skips authentication for paths in `skip`
32
- * (e.g. `/healthz/public`). Every other request must present a valid Bearer
33
- * securityKey there is no loopback bypass.
94
+ * (e.g. `/healthz/public`). On `TICKET_PATHS` requests may authenticate
95
+ * via `?ticket=…&session_id=…`; every other request must present a valid
96
+ * Bearer securityKey — there is no loopback bypass.
34
97
  */
35
98
  export function makeAuthHook(skip = ['/healthz/public']) {
36
99
  return async function authHook(req, reply) {
37
100
  if (skip.some((s) => req.url === s || req.url.startsWith(s + '?')))
38
101
  return;
102
+ // Ticket auth for the browser-direct xterm WS. A request that targets
103
+ // a TICKET_PATH and supplies `?ticket=…` is verified via HMAC instead
104
+ // of Bearer — the browser never sees the gateway's raw securityKey.
105
+ const pathOnly = req.url.split('?')[0] ?? req.url;
106
+ if (TICKET_PATHS.has(pathOnly)) {
107
+ const q = req.query;
108
+ if (q?.ticket) {
109
+ if (verifyTicket(q.ticket, q.session_id ?? ''))
110
+ return;
111
+ reply.code(401).send({
112
+ ok: false,
113
+ error: { code: 'UNAUTHORIZED', message: 'invalid or expired ticket' },
114
+ });
115
+ return;
116
+ }
117
+ // no ticket present → fall through to Bearer (legacy webapp proxy path)
118
+ }
39
119
  const token = extractBearer(req.headers['authorization']);
40
120
  if (!verifySecurityKey(token ?? undefined)) {
41
121
  reply.code(401).send({ ok: false, error: { code: 'UNAUTHORIZED', message: 'invalid or missing security key' } });
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/server/api/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAE,eAAe,EAAE,WAAW,EAAC,MAAM,aAAa,CAAC;AAErE,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,MAAM,UAAU,OAAO,CAAC,GAAW;IAClC,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,UAAU,mBAAmB;IAClC,OAAO,OAAO,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;AACvD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAA4B;IAC7D,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC,OAAO,EAAE,eAAe,CAAC;IAC3D,IAAI,CAAC,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5B,MAAM,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC9B,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAClC,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACvC,OAAO,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,IAAI,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACvD,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,aAAa,CAAC,MAA0B;IACvD,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,CAAC;AAC9C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,OAAiB,CAAC,iBAAiB,CAAC;IAChE,OAAO,KAAK,UAAU,QAAQ,CAAC,GAAmB,EAAE,KAAmB;QACtE,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAAE,OAAO;QAC3E,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC;QAC1D,IAAI,CAAC,iBAAiB,CAAC,KAAK,IAAI,SAAS,CAAC,EAAE,CAAC;YAC5C,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAC,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAC,IAAI,EAAE,cAAc,EAAE,OAAO,EAAE,iCAAiC,EAAC,EAAC,CAAC,CAAC;QAC9G,CAAC;IACF,CAAC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/server/api/auth.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-builder.d.ts","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAEN,KAAK,QAAQ,EAGb,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAgB,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAsHhE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,YAAY,GACtB,OAAO,CAOT;AAED,wBAAgB,aAAa,IAAI;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CA0DlE"}
1
+ {"version":3,"file":"manifest-builder.d.ts","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"AAIA,OAAO,EAEN,KAAK,QAAQ,EAGb,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,EAAgB,YAAY,EAAC,MAAM,gBAAgB,CAAC;AAsHhE;;;;;GAKG;AACH,wBAAgB,aAAa,CAC5B,KAAK,EAAE,YAAY,GAAG,SAAS,EAC/B,IAAI,EAAE,MAAM,YAAY,GACtB,OAAO,CAOT;AAED,wBAAgB,aAAa,IAAI;IAAC,QAAQ,EAAE,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAC,CA8DlE"}
@@ -169,6 +169,10 @@ export function buildManifest() {
169
169
  enabled: isSlotEnabled(slots, 'browser'),
170
170
  engines: ['chromium'],
171
171
  },
172
+ // Browser-direct xterm via HMAC tickets is available whenever the
173
+ // coding slot is on (that's where the xterm WS route lives). When
174
+ // off, the webapp falls back to its proxy path.
175
+ directXterm: isSlotEnabled(slots, 'coding'),
172
176
  },
173
177
  folders: listFolders(),
174
178
  tools,
@@ -1 +1 @@
1
- {"version":3,"file":"manifest-builder.js","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"manifest-builder.js","sourceRoot":"","sources":["../../../src/server/api/manifest-builder.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redplanethq/corebrain",
3
- "version": "2.8.26",
3
+ "version": "2.8.27",
4
4
  "type": "module",
5
5
  "engines": {
6
6
  "node": ">=16"