Usage of hard-coded secret

Overview

  • Rule ID: javascript_lang_hardcoded_secret

  • Applicable Languages: Javascript

  • Weakness ID: CWE-798

Description

Storing secrets directly in your code poses a security risk. Instead, use environment variables or a secret management system to protect your sensitive information.

Remediation Guidelines

  • Do not store plaintext secrets in your code. This exposes sensitive information to unnecessary risk.

      passport.use(new OAuth2Strategy({
        authorizationURL: 'https://www.example.com/oauth2/authorize',
        tokenURL: 'https://www.example.com/oauth2/token',
        clientID: 'my-id-123',
        clientSecret: 'shh-my-secret',
        callbackURL: 'http://localhost:3000/auth/example/callback'
          },
      function(accessToken, refreshToken, profile, cb) {
        User.findOrCreate({ exampleId: profile.id }, function (err, user) {
          return cb(err, user);
        });
      }
    ));
    
  • Use environment variables to store sensitive information, such as secrets. This approach keeps credentials out of your codebase and facilitates more secure management.

  • Consider implementing a key-management system to handle secrets and other sensitive data securely. This method offers enhanced security features for managing and accessing credentials.

References

Configuration

To omit this rule during a scan, and to provide you with continuous 24/7 code-level scanning, you can employ our SAST TOOL

Last updated