Files
reverse-engineering-anything/src/composition/releaseExposure.ts
T
Matt Van Horn f183381739 feat(audit): report what a shipped app exposes to static analysis
Adds `audit_release_exposure` and `rea audit-release-exposure` to report
source maps, Electron fuse implications, extractable payloads, debug
information, build metadata, and credential markers. Checks carry stable
IDs, observations, statuses, and fixed remediation, while incomplete and
unassessed checks remain visible without implying a security verdict.
Credential findings include only rule IDs and locations. The CLI
supports `--fail_on` severity thresholds and exits 3 when an exposed
check meets the threshold.
2026-11-01 02:41:37 -08:00

17 lines
796 B
TypeScript

import { ReleaseExposureReader } from "../artifacts/ReleaseExposureReader.js";
import { ReleaseExposureService } from "../application/releaseExposure/ReleaseExposureService.js";
import { createDesktopApplicationService } from "./desktop.js";
import { createElectronFuseService } from "./electronFuses.js";
import { createGoBinaryService } from "./go.js";
import { createRustBinaryService } from "./rust.js";
/** Compose the read-only release-exposure audit. */
export const createReleaseExposureService = (): ReleaseExposureService =>
new ReleaseExposureService({
reader: new ReleaseExposureReader(),
electronFuses: createElectronFuseService(),
desktop: createDesktopApplicationService(),
goBinaries: createGoBinaryService(),
rustBinaries: createRustBinaryService(),
});