angular-server-side-configuration information disclosure vulnerability in monorepo with node.js backend
Date: 2023-03
Affected: npm/angular-server-side-configuration
Attack vector: info-disclosure
Category: vulnerability-disclosure
Severity: Critical
CVE: CVE-2023-28444
CWE: CWE-200
CWE-538
CVSS: 9.9 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:L)

### Impact angular-server-side-configuration detects used environment variables in TypeScript (.ts) files during build time of an Angular CLI project. The detected environment variables are written to a ngssc.json file in the output directory. During deployment of an Angular based app, the environment variables based on the variables from ngssc.json are inserted into the apps index.html (or defined index file). With version 15 the environment variable detection was widened to the entire project, relative to the angular.json file from the Angular CLI. In a monorepo setup, this could lead to environment variables intended for a backend/service to be detected and written to the ngssc.json, which would then be populated and exposed via index.html. This has NO IMPACT, in a plain Angular project that has no backend component. ### Patches Vulnerability has been mitigated in 15.1.0, by adding an option `searchPattern` which restricts the detection file range by default. ```bash # Update via npm npm update angular-server-side-configuration ## Or more specific npm install angular-server-side-configuration@15.1.0 # Update via pnpm pnpm update angular-server-side-configuration ## Or more specific pnpm add angular-server-side-configuration@15.1.0 # Update via yarn yarn update angular-server-side-configuration ## Or more specific yarn add angular-server-side-configuration@15.1.0 ``` ### Workarounds Manually edit or create ngssc.json or run a script after ngssc.json generation ### R


Mitigations:

Architectural layers (MAESTRO):