C and C++ Binaries


BADFUNC.PATH.AFXLOADLIBRARY : Use of AfxLoadLibrary

Summary

A use of AfxLoadLibrary(), which is vulnerable to path spoofing if the file name argument is not securely specified.

Properties

Class Name Use of AfxLoadLibrary
Significance style
Mnemonic BADFUNC.PATH.AFXLOADLIBRARY
Categories
CWE CWE:676 Use of Potentially Dangerous Function
CERT-C CERT-C:WIN00-C Be specific when dynamically loading libraries
DISA-3r10 DISA-3r10:V-6157 The designer will ensure the application does not contain invalid URL or path references.
BSI BSI:AfxLoadLibrary  
OWASP-2017 OWASP-2017:A9 Using components with known vulnerabilities
OWASP-2021 OWASP-2021:A6 Vulnerable and outdated components
Availability Available for C and C++.
Enabling Checks for this warning class are disabled by default. To enable them, add the following WARNING_FILTER rule to the project configuration file.
WARNING_FILTER += allow class="Use of AfxLoadLibrary"
To enable all BSI-related classes, including all BSI-specific BADFUNC classes, use the bsi configuration preset.

Resolution

HINSTANCE AFXAPI AfxLoadLibrary(LPCTSTR lpszModuleName)

When you see a Use of AfxLoadLibrary warning, make sure that the file name argument lpszModuleName to AfxLoadLibrary() is a fully-specified path name (including file extension) from a trusted source.

Once you are satisfied that these conditions hold, you can change the warning state to Suppressed.

Relevant Configuration File Parameters

This class is implemented using a BAD_FUNCTION_* rule set in the general template configuration file.

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