C and C++ Binaries


MISC.NULLDACL : Null Security Descriptor

Summary

SetSecurityDescriptorDacl() is called with a NULL security descriptor, which can lead to security vulnerabilities.

Properties

Class Name Null Security Descriptor
Significance security
Mnemonic MISC.NULLDACL
Categories
CWE CWE:284 Improper Access Control
OWASP-2017 OWASP-2017:A5 Broken access control
OWASP-2021 OWASP-2021:A1 Broken access control
Availability Available for C and C++.
Enabling Checks for this warning class are enabled by default. To disable them, add the following WARNING_FILTER rule to the project configuration file.
WARNING_FILTER += discard class="Null Security Descriptor"

Example

#include <windows.h>

int set_security_descriptor_dacl_bad()
{
    ACL sacl = {0,0,0,0,0};
    ACL dacl = {0,0,0,0,0};
    SECURITY_DESCRIPTOR sec = {0,0,0,0,0,&sacl,&dacl};
    return SetSecurityDescriptorDacl(&sec, TRUE, NULL, TRUE); // Warning issued here
}

Relevant Configuration File Parameters

The following configuration file parameters affect checks for this warning class.