Skip to main content

Authentication mechanism absence or evasion - BIOS

Description

The system lacks an authentication mechanism or has one that can be bypassed. Therefore, an attacker can access system resources by logging into the BIOS.

Impact

  • Access disk information through other systems.
  • Modify and disabling machine configurations.
  • Delete all machine information by formatting the disk.

Recommendation

Put in place for every resource with business-critical functionality a strong authentication process and ensure that every user attempting to access it is logged in.

Threat

Unauthorized internal attacker.

Expected Remediation Time

⌚ 120 minutes.

Score

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

Base

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

Temporal

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

Result

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

Code Examples

Compliant code

The application restricts access to sensitive resources only to authorized users

app.post('/accessAdmin', hashedSentCode, function(req, res, next){
User.register({ _id: req.user.id}, req.body, function(err, user){
//Validating user has privileges and is correctly logged in
if (req.body.isLoggedIn && user.isSuperAdmin){
run userMFA();
user.allowBIOSAccess = True;
}
res.redirect('/profile/BIOSManager');
}
});

Non compliant code

The application allows access to BIOS without verifying permissions and secure authentication

app.post('/accessAdmin', function(req, res, next){
User.register({ _id: req.user.id}, req.body, function(err, user){
user.allowBIOSAccess = True;
res.redirect('/profile/BIOSManager');
}
});

Requirements