Bug 253553 (CVE-2007-4460) - CVE-2007-4460 id3lib doesn't use mkstemp() to create a name of a temporary file
Summary: CVE-2007-4460 id3lib doesn't use mkstemp() to create a name of a temporary file
Keywords:
Status: CLOSED ERRATA
Alias: CVE-2007-4460
Product: Fedora
Classification: Fedora
Component: id3lib
Version: 7
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Hans de Goede
QA Contact: Fedora Extras Quality Assurance
URL: http://bugs.debian.org/cgi-bin/bugrep...
Whiteboard: impact=moderate,source=cve
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2007-08-20 15:30 UTC by Lubomir Kundrak
Modified: 2007-11-30 22:12 UTC (History)
0 users

Fixed In Version: 3.8.3-17.fc7
Clone Of:
Environment:
Last Closed: 2007-08-24 05:41:05 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Lubomir Kundrak 2007-08-20 15:30:09 UTC
Description of problem:

233     String filename = tag.GetFileName();
234     String sTmpSuffix = ".XXXXXX";
...
242     strcpy(sTempFile, filename.c_str());
243     strcat(sTempFile, sTmpSuffix.c_str());
244 
245 #if ((defined(__GNUC__) && __GNUC__ >= 3  ) || !defined(HAVE_MKSTEMP))
246     // This section is for Windows folk && gcc 3.x folk
247     fstream tmpOut;
248     createFile(sTempFile, tmpOut);

When compiled with gcc 3 or higher, file with a predictable name is created.
This can possibly be explited to conduct a symlink attack and either leak
information or overwrite arbitrary file on behalf of user using the library
(though I a have not had a look at createFile(), maybe the only problem is two
programs using the temporary file concurently).

Additional info:

The CVE identifier for this issue had been requested.
See URL for debian bug.

Comment 1 Lubomir Kundrak 2007-08-21 21:11:54 UTC
Mitre assigned CVE-2007-4460 identifier to this issue.

Comment 2 Fedora Update System 2007-08-24 05:40:59 UTC
id3lib-3.8.3-17.fc7 has been pushed to the Fedora 7 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.