Skip to main content

Non-encrypted confidential information - Keys


Confidential information is stored in plain text allowing an attacker to view it without any encryption.


Obtain sensitive information that can compromise system resources.


Encrypt all sensitive information that is transported or stored within the application according to the organizations policies.


Attacker with access to source code from the Internet.

Expected Remediation Time

⌚ 30 minutes.


Default score using CVSS 3.1. It may change depending on the context of the vulnerability.


  • Attack vector: N
  • Attack complexity: L
  • Privileges required: L
  • User interaction: N
  • Scope: U
  • Confidentiality: L
  • Integrity: N
  • Availability: N


  • Exploit code madurity: P
  • Remediation level: X
  • Report confidence: X


  • Vector string: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N/E:P/RL:X/RC:X
  • Score:
    • Base: 4.3
    • Temporal: 4.1
  • Severity:
    • Base: Medium
    • Temporal: Medium

Code Examples

Compliant code

All sensitive credentials are stored as encrypted secrets

import { initializeDB } from db_model;

const firebaseConfig = {
//Get encrypted keys from the server

async function getUsers(db) {

Non compliant code

There are sensitive credentials stored in the source code

import { initializeDB } from db_model;

const firebaseConfig = {
const ADMIN = "admin";
const PASSWORD = "1234"

async function getUsers(db) {