C and C++ Binaries


BADFUNC.TEMP.TMPNAM : Use of tmpnam

Summary

A use of tmpnam(), tmpnam_r(), _tmpnam(), _ttmpnam(), _wtmpnam(), tempnam(), _ttempnam(), _wtempnam(), or GetTempFileName(), which are associated with temporary file vulnerabilities.

Properties

Class Name Use of tmpnam
Significance security
Mnemonic BADFUNC.TEMP.TMPNAM
Categories
CWE CWE:242 Use of Inherently Dangerous Function
  CWE:377 Insecure Temporary File
  CWE:676 Use of Potentially Dangerous Function
CERT-C CERT-C:CON33-C Avoid race conditions when using library functions
  CERT-C:FIO01-C Be careful using functions that use file names for identification
  CERT-C:FIO21-C Do not create temporary files in shared directories
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 enabled by default. To disable them, add the following WARNING_FILTER rule to the project configuration file.
WARNING_FILTER += discard class="Use of tmpnam"

Resolution

When you see a Use of tmpnam warning, make sure that security risks have been minimized as much as possible.

If so, 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.