Microsoft patch breaks Impress/PowerPoint compatibility
Posted: Thu Dec 09, 2010 5:25 pm
The inability to open PowerPoint files in Microsoft Office 2007 that were created by Impress is due to a compatibility problem brought on by a recent Microsoft Office patch that was rolled out in mid November.
I'm in the midst of investigating the problem and have started pulling together the relevant documentation along with reports from various forums to try and come up with a solution or at least a work-around. The patch was created to fix the problems mentioned in Microsoft Security Bulletin MS10-087. I believe the relevant vulnerabilities were:
- PowerPoint Integer Underflow Causes Heap Corruption Vulnerability - CVE-2010-2573
- Office Art Drawing Records Vulnerability - CVE-2010-3334
- Drawing Exception Handling Vulnerability - CVE-2010-3335
- MSO Large SPID Read AV Vulnerability - CVE-2010-3336
The binary file formats commonly known as "Office 97 - 2003" were implemented by OpenOffice.org through reverse engineering and guess work. Thus the OOo implementation of the format may not have been perfect but it was good enough for Microsoft Office to recognize and read it. This latest patch from Microsoft changes how MSO parses those files in order to fix the vulnerabilities. The down side is that the change now means that some "97 - 2003" binary PowerPoint documents created by OOo are no longer considered valid by MSO. The vulnerabilities associated with the patch have not been publicly disclosed and were sent directly to Microsoft so I doubt any of the OOo developers have had a chance to look at what's changed.
We've performed testing and have confirmed that PowerPoint files created by OOo 3.2.1 under Solaris 10 could be opened by MSO 2007 under Windows XP before the patch was applied but after the patch was applied we would get the error "PowerPoint can't open ... because part of the file is missing." The ... just represents the name of the file you tried to open. The vulnerability and resulting patch exist for MSO XP, MSO 2003, MSO 2007, and MS 2010. We've taken the file that couldn't be opened by MSO 2007 under Windows XP and it was able to open properly by MSO 2003 under Windows 7. After our initial poking around, we believe the problem is somehow related to images or other artwork on master slides but haven't been able to narrow it down beyond that yet.
If you need to share files with a person running MSO 2003, there shouldn't be able problem as MSO 2003 can open up the PowerPoint files created by Impress. However if you need to share files with a person running MSO 2007, you have three options.
- Impress saves to .ppt then use a copy of MSO 2003 to re-save the file in order to make it readable by MSO 2007.
- Impress saves to .odp since MSO 2007 can read ODP files.
- Impress saves to .ppt then use the Microsoft Office 2007 PowerPoint Viewer to open and/or print the file. The viewer can be found at C:\Program Files\Microsoft Office\Office12\PPTVIEW.EXE
We're putting together a group of problem files to analyze, so send me a private message if you have files that have experienced this problem and would be willing to add your document to our collection. I plan to keep updating this thread as well as the one of OOoForum.org as I find out more information.
I'm in the midst of investigating the problem and have started pulling together the relevant documentation along with reports from various forums to try and come up with a solution or at least a work-around. The patch was created to fix the problems mentioned in Microsoft Security Bulletin MS10-087. I believe the relevant vulnerabilities were:
- PowerPoint Integer Underflow Causes Heap Corruption Vulnerability - CVE-2010-2573
- Office Art Drawing Records Vulnerability - CVE-2010-3334
- Drawing Exception Handling Vulnerability - CVE-2010-3335
- MSO Large SPID Read AV Vulnerability - CVE-2010-3336
The binary file formats commonly known as "Office 97 - 2003" were implemented by OpenOffice.org through reverse engineering and guess work. Thus the OOo implementation of the format may not have been perfect but it was good enough for Microsoft Office to recognize and read it. This latest patch from Microsoft changes how MSO parses those files in order to fix the vulnerabilities. The down side is that the change now means that some "97 - 2003" binary PowerPoint documents created by OOo are no longer considered valid by MSO. The vulnerabilities associated with the patch have not been publicly disclosed and were sent directly to Microsoft so I doubt any of the OOo developers have had a chance to look at what's changed.
We've performed testing and have confirmed that PowerPoint files created by OOo 3.2.1 under Solaris 10 could be opened by MSO 2007 under Windows XP before the patch was applied but after the patch was applied we would get the error "PowerPoint can't open ... because part of the file is missing." The ... just represents the name of the file you tried to open. The vulnerability and resulting patch exist for MSO XP, MSO 2003, MSO 2007, and MS 2010. We've taken the file that couldn't be opened by MSO 2007 under Windows XP and it was able to open properly by MSO 2003 under Windows 7. After our initial poking around, we believe the problem is somehow related to images or other artwork on master slides but haven't been able to narrow it down beyond that yet.
If you need to share files with a person running MSO 2003, there shouldn't be able problem as MSO 2003 can open up the PowerPoint files created by Impress. However if you need to share files with a person running MSO 2007, you have three options.
- Impress saves to .ppt then use a copy of MSO 2003 to re-save the file in order to make it readable by MSO 2007.
- Impress saves to .odp since MSO 2007 can read ODP files.
- Impress saves to .ppt then use the Microsoft Office 2007 PowerPoint Viewer to open and/or print the file. The viewer can be found at C:\Program Files\Microsoft Office\Office12\PPTVIEW.EXE
We're putting together a group of problem files to analyze, so send me a private message if you have files that have experienced this problem and would be willing to add your document to our collection. I plan to keep updating this thread as well as the one of OOoForum.org as I find out more information.