Skip to content

Report formatting dialog allows opening a shell on secure screens

Critical
seanbudd published GHSA-3jj9-295f-h69w Jan 3, 2023

Software

NVDA

Affected versions

<2022.3.2

Patched versions

2022.3.2

Description

Summary

The report formatting dialog can be used to open a shell with system privileges on secure screens
This means an unauthenticated user can execute arbitrary code with system privileges.

Patch commit(s)

9823556

Limitations

None

Technical details

Proof of concept

  1. On the sign on screen or at a UAC prompt
  2. Use NVDA+control+v to open the voice settings dialog
  3. Press NVDA+f twice to open the formatting dialog
  4. Press ctrl+p to open the print dialog
  5. Select something that lets you print to a file (Microsoft Print to PDF will work)
  6. Open a shell from the file dialog

Indicators of compromise

Unknown

Workarounds

None

Timeline

  • Reported late October 2022
  • Fix released in 2022.3.2 in November 2022

For more information

If you have any questions or comments about this advisory:

Severity

Critical

CVSS overall score

This score calculates overall vulnerability severity from 0 to 10 and is based on the Common Vulnerability Scoring System (CVSS).
/ 10

CVSS v3 base metrics

Attack vector
Local
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

CVSS v3 base metrics

Attack vector: More severe the more the remote (logically and physically) an attacker can be in order to exploit the vulnerability.
Attack complexity: More severe for the least complex attacks.
Privileges required: More severe if no privileges are required.
User interaction: More severe when no user interaction is required.
Scope: More severe when a scope change occurs, e.g. one vulnerable component impacts resources in components beyond its security scope.
Confidentiality: More severe when loss of data confidentiality is highest, measuring the level of data access available to an unauthorized user.
Integrity: More severe when loss of data integrity is the highest, measuring the consequence of data modification possible by an unauthorized user.
Availability: More severe when the loss of impacted component availability is highest.
CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

CVE ID

No known CVE

Weaknesses

No CWEs

Credits