|
|
|
|
| |
Credit:
The information has been provided by iDefense.com.
The original article can be found at:
http://www.idefense.com/intelligence/vulnerabilities/display.php?id=412
|
| |
The vulnerability specifically exists in the 'CIDAFM()' function of the code responsible for handling AFM (Adobe Font Metrics) files. The number of character metrics is obtained from the "StartCharMetrics" line of an AFM file and that value is then multiplied by the size of a single character metric record in order to calculate the space required to store the metrics. If the result of the multiplication is larger than the largest value that can be held in an integer, the amount actually allocated will be much smaller. Following this, the function attempts to read as many metric records as were specified on the line into that memory. As the contents of the file can be specified by a local user, and as the function will stop reading if an error is detected in the input, a controlled heap overflow may occur which may allow the execution of arbitrary code.
Successful local exploitation allows an attacker to execute arbitrary code as the root user. In order to exploit this vulnerability an attacker would require the ability to send commands to an affected X server. This typically requires access to the console, or access to the same account as a user who is on the console. One method of gaining the required access would be to remotely exploit a vulnerability in, for example, a graphical webrowser. This would then allow an attacker to exploit this vulnerability and elevate their privileges to root.
Workaround:
Access to the vulnerable code can be prevented by removing the entry for the Type1 font module from your Xservers configuration file, often stored in /etc/X11 and named xorg.conf or XF86Config-4.
To do this, remove the following line from the 'Module' section:
Load "type1"
This will prevent Type 1 fonts from loading, which may affect the appearance or operation of some applications.
Vendor Status:
The X.Org foundation has addressed this vulnerability with libXfont version 1.2.1. Additionally, patches have been made available for older releases.
CVE Information:
CVE-2006-3739
Disclosure Timeline:
* 08/25/2006 - Initial vendor notification
* 08/25/2005 - Initial vendor response (X.Org)
* 09/10/2006 - Initial vendor response (XFree86)
* 09/12/2006 - Coordinated public disclosure
|
|
|
|
|