Description Summary The software creates a temporary file in a directory whose
permissions allow unintended actors to determine the file's existence or
otherwise access that file.
Extended Description On some operating systems, the fact that the temporary file exists may be apparent to any user with sufficient privileges to access that directory. Since the file is visible, the application that is using the temporary file could be known. If one has access to list the processes on the system, the attacker has gained information about what the user is doing at that time. By correlating this with the applications the user is running, an attacker could potentially discover what a user's actions are. From this, higher levels of security could be breached.
Example 1 (Bad Code) C and C++ FILE *stream; char tempstring[] = "String to be written"; if( (stream = tmpfile()) == NULL ) { perror("Could not open new temporary file\n");
return (-1);
} /* write data to tmp file */ /* ... */ _rmtmp(); In cygwin and some older unixes one can ls /tmp and see that this temp file exists. (Bad Code) Java try { File temp = File.createTempFile("pattern", ".suffix");
temp.deleteOnExit();
BufferedWriter out = new BufferedWriter(new
FileWriter(temp));
out.write("aString");
out.close();
} catch (IOException e) { } This temp file is readable by all users.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Page Last Updated:
October 29, 2009
|
|
CWE is a Software Assurance strategic initiative sponsored by the National Cyber Security Division of the U.S. Department of Homeland Security. This Web site is hosted by The MITRE Corporation. Contact cwe@mitre.org for more information. |
|||
