Vulnerability in Microsoft Font Driver Could Allow Remote Code Execution
technet.microsoft.com
technet.microsoft.com
In hindsight it's to be expected that the code doesn't do enough "safe" checks which were developed only after the famous Gates memo of 2002 (reposted by Microsoft on the 10 years anniversary of it: https://news.microsoft.com/2012/01/11/memo-from-bill-gates/ ) and probably even more so as the code is copyrighted by Adobe and not Microsoft. And even more so as "Microsoft Windows does not release any OpenType fonts natively (but has the DLL because) third-party applications could install them."
(By the way, I highly admire the traditional Windows for caring about backward compatibility. I hope this doesn't change even if it's obviously harder.)
Releasing a patch on a Monday means it is likely highly critical and weaponizable (which was the impression I got reading the release).
I'm not sure about Windows itself, but I know for a fact that Office includes at least one OpenType font: Cambria Math. It relies on the OpenType math typesetting information (which was largely designed by Microsoft). In addition, TrueType's layout information in not sophisticated enough for many languages (e.g. Arabic), so these users are most certainly using OpenType fonts.
I know close to nothing about them.
- TTF = Required Tables + Tables Related to TrueType Outlines
- PostScript Flavor OTF = Required Tables + Tables Related to PostScript Outlines + Advanced Typographic Tables
- TrueType Flavor OTF = Required Tables + Tables Related to TrueType Outlines + Advanced Typographic Tables
Note that in a PostScript flavor OTF the glyph outlines are simply an entire Adobe CFF font embedded in a table. CFF is in turn a compact representation of a PostScript Type 1 font. There's an entire CFF spec too: https://partners.adobe.com/public/developer/en/font/5176.CFF...
Also note that this exploit was for Adobe's code and their fonts don't have any imperative hinting instructions (hints in CFF are purely declarative), which makes your first point moot.
OpenType Layout is most certainly used in "regular" fonts if you happen to be one of the 2+ billion people whose non-"sensible" languages can't be written without such features.
I think you mean Word and PSD, not JPEG - otherwise spot on.
http://www.joelonsoftware.com/items/2008/02/19.html
"These are binary formats, so loading a record is usually a matter of just copying (blitting) a range of bytes from disk to memory, where you end up with a C data structure you can use. There’s no lexing or parsing involved in loading a file. Lexing and parsing are orders of magnitude slower than blitting."
PSD is much the same - it's why interop with PSDs is such a challenge.
JPEG has to be parsed and decompressed - another source of problems, but not remotely in the same category.
Especially read the linked PDF if you love pain and misery but enjoy understanding complex stuff :)
There was one great observation I couldn't resist repeating. The font renderer is performing various checks to validate 'n', the count of arguments passed on the stack, to a particular function. However:
Turns out, a negative value of n passes all the checks!
Oops. It's possible to use this bug to target memory well beyond the stack. It's game over!The best bugs are the simplest bugs.
How heavily fuzzed are font libraries on non-Microsoft platforms?
iOS 8.4 security release notes: https://support.apple.com/en-us/HT204941
FontParser
Impact: Processing a maliciously crafted font file may lead to an unexpected application termination or arbitrary code execution
I couldn't immediately find a CVE for the old one, and Microsoft's security disclosures seem more suited towards IT pros and consumers, so they don't seem to have full details about what happened in that one.
And in the spirit of being helpful, you can run the following command to verify the above and see if Windows Update already auto-installed this KB (if so, it will be listed):
systeminfo | findstr /ic:"os name" /c:"system type" /c:"3079904"Yes
> you are running 64-bit Windows v8.1, correct?
Yes
> you can run the following command to verify the above and see if Windows Update already auto-installed this KB (if so, it will be listed)
I did, and it is not.
I'm actually a huge windows fan, so I'm not really just talking snack about them. The new universal app platform should make some stuff like this obsolete over time, I hope.
I'm gonna assume this affects XP as well -- yet another reason to just ban that OS from all networks forever.
No, support ended on July 14th. And yeah, it is affected by this.
From what I've been hearing, yeah, many places are still running it on varying scales.
http://answers.microsoft.com/en-us/windows/forum/windows_7-s...
Mine will applied after restart.
https://bugs.documentfoundation.org/show_bug.cgi?id=62764&re...
Interesting quote on their mindset at the time: "Due to the modular design of Windows NT moving Window Manager and GDI to kernel mode will make no difference to the security subsystem or to the overall security of the operating system this will also have no effect on the C2 or E3 security certification evaluation, other than making it easier to document the internal architecture of Windows NT."
From: https://msdn.microsoft.com/en-us/library/cc750820.aspx