|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
CWE-379: Creation of Temporary File in Directory with Incorrect Permissions
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) Example Languages: 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) Example
Language: 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:
September 12, 2011
|
|
CWE is a Software Assurance strategic initiative co-sponsored by the National Cyber Security Division of the U.S. Department of Homeland Security. This Web site is sponsored and managed by The MITRE Corporation to enable stakeholder collaboration. Copyright © 2006-2012, The MITRE Corporation. CWE, CWSS, CWRAF, and the CWE logo are trademarks of The MITRE Corporation. Contact cwe@mitre.org for more information. |
|||



