Skip to main content

Sensitive information sent insecurely

Description

The system sends sensitive information through a channel or method which does not guarantee its confidentiality or integrity.

Impact

Compromise sensitive information traveling in a insecure channel

Recommendation

Guarantee that credentials be sent through a more secure channel, such as session variables or using HTTP POST method.

Threat

Anonymous attacker from adjacent network.

Expected Remediation Time

⌚ 60 minutes.

Score

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

Base

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

Temporal

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

Result

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

Code Examples

Compliant code

The decoder is securely configured with verification enabled

using System;
class jwtbuild {
public static void Main() {
IJwtDecoder decoder = new JwtDecoder(serializer, validator, urlEncoder, algorithm);
var secure_decode = decoder.Decode(token, secret, verify: true);
//Code that uses the secure decode to send information
}
}

Non compliant code

Example using an insecurely generated decode for the application

using System;
class jwtbuild {
public static void Main() {
IJwtDecoder decoder = new JwtDecoder(serializer, validator, urlEncoder, algorithm);
var insecure_decode = decoder.Decode(token, secret, verify: false);
//Code to use the insecure decode to send information
}
}

Requirements