From d4c6a2fbfdc59c388223e320c32ef6454f038563 Mon Sep 17 00:00:00 2001 From: Chris Duncan Date: Sun, 9 Aug 2026 21:17:23 -0700 Subject: [PATCH] Zero transfered buffers from worker on data parsing failure. --- src/lib/vault/vault-worker.ts | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/lib/vault/vault-worker.ts b/src/lib/vault/vault-worker.ts index 576f7d6..e326e7a 100644 --- a/src/lib/vault/vault-worker.ts +++ b/src/lib/vault/vault-worker.ts @@ -44,8 +44,12 @@ const listener = (event: MessageEvent): void => { iv = parseIv(action, data) parsed = parseData(action, data) } catch (err) { - BROWSER: self.postMessage({ taskUrl, taskId, error: new Error('Failed to process Vault request', { cause: err }) }) - NODE: parentPort?.postMessage({ data: { taskUrl, taskId, error: new Error('Failed to process Vault request', { cause: err }) } }) + BROWSER: self.postMessage({ taskUrl, taskId, error: new Error('Failed to parse Vault request data', { cause: err }) }) + NODE: parentPort?.postMessage({ data: { taskUrl, taskId, error: new Error('Failed to parse Vault request data', { cause: err }) } }) + for (const [k, v] of Object.entries(data)) { + if (v instanceof ArrayBuffer) new Uint8Array(v).fill(0) + delete data[k] + } return } const { seed, mnemonicPhrase, mnemonicSalt, index, encrypted, message, timeout } = parsed -- 2.52.0