Skip to main content

Exposure of Sensitive Information to an Unauthorized Actor

CVE-2023-28444

Severity High
Score 7.5/10

Summary

The package angular-server-side-configuration in versions 15.0.0 before 15.1.0 helps configure an angular application at runtime on the server or in a docker container via environment variables. The 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.0.0 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. This vulnerability has been mitigated, by adding an option "searchPattern" which restricts the detection file range by default. As a workaround, manually edit or create "ngssc.json" or run script after "ngssc.json" generation.

  • LOW
  • NETWORK
  • NONE
  • UNCHANGED
  • NONE
  • NONE
  • HIGH
  • NONE

CWE-200 - Information Exposure

An information exposure vulnerability is categorized as an information flow (IF) weakness, which can potentially allow unauthorized access to otherwise classified information in the application, such as confidential personal information (demographics, financials, health records, etc.), business secrets, and the application's internal environment.

Advisory Timeline

  • Published