fix(deploy): avoid source guard self-match
This commit is contained in:
2 files changed
+4
-2
No files matched your search
@@ -69,7 +69,9 @@ export async function releaseManifest(dist, sourceCommit) {
|
|||||||
}
|
}
|
||||||
publicPath(child);
|
publicPath(child);
|
||||||
const bytes = await fs.readFile(path.join(dist, child));
|
const bytes = await fs.readFile(path.join(dist, child));
|
||||||
if (bytes.includes(Buffer.from('PRIVATE KEY-----'))) fail(`Private-key material in artifact: ${child}`);
|
// Build the sentinel in memory so this guardrail can itself be included in
|
||||||
|
// the server-validated source snapshot without looking like a PEM body.
|
||||||
|
if (bytes.includes(Buffer.from(['PRIVATE', ' KEY-----'].join('')))) fail(`Private-key material in artifact: ${child}`);
|
||||||
files[child] = { sha256: sha256(bytes), size: bytes.length };
|
files[child] = { sha256: sha256(bytes), size: bytes.length };
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -92,7 +92,7 @@ function unsafeSignals(html, allowApprovedFormA = false) {
|
|||||||
if (/<script\b[^>]*\bsrc=["'][^"']*(?:jotform|googletagmanager|google-analytics|doubleclick)/i.test(html)) signals.push('active vendor tracking/form script');
|
if (/<script\b[^>]*\bsrc=["'][^"']*(?:jotform|googletagmanager|google-analytics|doubleclick)/i.test(html)) signals.push('active vendor tracking/form script');
|
||||||
if (!allowApprovedFormA && /data-(?:form|forms)-mode=["']live["']/i.test(html)) signals.push('live form mode');
|
if (!allowApprovedFormA && /data-(?:form|forms)-mode=["']live["']/i.test(html)) signals.push('live form mode');
|
||||||
if (/api\.azinstitute4autism\.com/i.test(html)) signals.push('production API origin');
|
if (/api\.azinstitute4autism\.com/i.test(html)) signals.push('production API origin');
|
||||||
if (/AIza[0-9A-Za-z_-]{20,}|-----BEGIN (?:RSA|OPENSSH|EC) PRIVATE KEY-----|(?:api[_-]?key|secret|password)\s*[:=]/i.test(html)) signals.push('credential-like content');
|
if (/AIza[0-9A-Za-z_-]{20,}|-----BEGIN (?:RSA|OPENSSH|EC) PRIVATE\sKEY-----|(?:api[_-]?key|secret|password)\s*[:=]/i.test(html)) signals.push('credential-like content');
|
||||||
return signals;
|
return signals;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user