Description
The software implements an IOCTL with functionality that should be restricted, but it does not properly enforce access control for the IOCTL.
Modes of Introduction:
– Architecture and Design
Likelihood of Exploit:
Related Weaknesses
Consequences
Integrity, Availability, Confidentiality:
Attackers can invoke any functionality that the IOCTL offers. Depending on the functionality, the consequences may include code execution, denial-of-service, and theft of data.
Potential Mitigations
Phase: Architecture and Design
Effectiveness:
Description:
In Windows environments, use proper access control for the associated device or device namespace. See References.
CVE References
- CVE-2009-2208
- Operating system does not enforce permissions on an IOCTL that can be used to modify network settings.
- CVE-2008-3831
- Device driver does not restrict ioctl calls to its direct rendering manager.
- CVE-2008-3525
- ioctl does not check for a required capability before processing certain requests.
- CVE-2008-0322
- Chain: insecure device permissions allows access to an IOCTL, allowing arbitrary memory to be overwritten.
- CVE-2007-4277
- Chain: anti-virus product uses weak permissions for a device, leading to resultant buffer overflow in an exposed IOCTL.
- CVE-2007-1400
- Chain: sandbox allows opening of a TTY device, enabling shell commands through an exposed ioctl.
- CVE-2006-4926
- Anti-virus product uses insecure security descriptor for a device driver, allowing access to a privileged IOCTL.
- CVE-1999-0728
- Unauthorized user can disable keyboard or mouse by directly invoking a privileged IOCTL.
More Stories
The Most Dangerous Vulnerabilities in Apache Tomcat and How to Protect Against Them
Apache Tomcat is an open-source web server and servlet container that is widely used in enterprise environments to run Java...
ZDI-CAN-18333: A Critical Zero-Day Vulnerability in Microsoft Windows
Zero-day vulnerabilities are a serious threat to cybersecurity, as they can be exploited by malicious actors to gain unauthorized access...
CWE-669 – Incorrect Resource Transfer Between Spheres
Description The product does not properly transfer a resource/behavior to another sphere, or improperly imports a resource/behavior from another sphere,...
CWE-67 – Improper Handling of Windows Device Names
Description The software constructs pathnames from user input, but it does not handle or incorrectly handles a pathname containing a...
CWE-670 – Always-Incorrect Control Flow Implementation
Description The code contains a control flow path that does not reflect the algorithm that the path is intended to...
CWE-671 – Lack of Administrator Control over Security
Description The product uses security features in a way that prevents the product's administrator from tailoring security settings to reflect...