The odd saga of CVE-2012-5639
A new release for any project with a fix for a 12-year old CVE is going to stand out pretty obviously; a recent release has a fix of that nature, but the trail of CVE-2012-5639 is rather elusive. The Apache OpenOffice project made its 4.1.15 release with fixes for four CVEs, including one for CVE-2012-5639 ("Loading internal / external resources without warning"), on December 22. But nearly everything about that CVE seems rather murky, and it is difficult to get a clear picture of what, exactly, was done in OpenOffice to address the problem.
There is also another project involved, of course, since LibreOffice
is descended from the same code base as OpenOffice. When the issue was
first raised, back
in 2012, Timo Warns was unsure if the problem of "remote file inclusion by
office applications should be considered security-relevant
". He noted
that OpenOffice and LibreOffice would both automatically include remote
content that was referred to in a document;
Microsoft Word did so as well. User expectations are not being met:
Users are aware that web browsers may access remote content even when opening local files. I don't think users are aware that office application may do the same. An 'offline mode' for office applications that is enabled by default could meet user expectations.
Kurt Seifried tried to find a way to disable that functionality in LibreOffice; Warns said that it could not be disabled and Daniel Kahn Gillmor added some further information about the problem. Given that, Seifried assigned the CVE number and opened a Red Hat bug for it.
Tracking bugs for Fedora were opened for LibreOffice and OpenOffice as well; all of the bugs were eventually closed, but not because the problem had been fixed. The OpenOffice bug report was not needed, since that package had not been shipped for several Fedora versions at that point; and the LibreOffice tracking bug was automatically closed when Fedora 17 (the release the bug was filed for) reached its end-of-life in August 2013. Meanwhile, the main bug was closed in October 2021 as "errata", which is meant to indicate it has been fixed in a release, but there is no indication in the bug or its history about the resolution. A comment from Caolan McNamara when the bug was filed seems to indicate that it will be a difficult problem to address, but that's it.
A bug was filed for LibreOffice at the same time as the Red Hat bugs, but it was closed as "invalid" nearly a year later, with a comment from Joel Madero indicating that it is not really a bug, much less a security bug. The bug report was, instead, a feature request, he said, which should not be considered a vulnerability. There is also, apparently, a bug report for OpenOffice that had its status changed to "security" in October 2020, which means that it can only be seen by project members. It is not at all clear what precipitated that change at that time.
Tracking entries for the CVE for Debian
and Ubuntu do not
shine much light either. The Ubuntu entry was published in
December 2019, while the Debian one has no date on it. Both refer to
a blog
post that describes a rudimentary "stealth mode" feature of
LibreOffice 4.2; it provides a setting to: "Block any links
from documents not among the trusted locations
". Given that it is an
opt-in feature, it may not completely address the concern leading to the CVE,
but it does at least give users and administrators a way to prevent loading
external content.
While the stealth mode feature has presumably gotten better since that release in 2014, it is still not enabled by default in the LibreOffice 7.2 installed on my system. There have been several CVEs (e.g. CVE-2020-12802) filed for content types that were not actually blocked by stealth mode, but those have been fixed. The feature set listed in the release notes for OpenOffice 4.1.15, which addresses the CVE, make no mention of a stealth mode, nor anything related, seemingly. The fixed bug list is also lacking in anything relevant.
OpenOffice is an open-source project, of course, so we can look at the code in the project's GitHub repository. However, the list of commits between the 4.1.14 and 4.1.15 releases is also not particularly enlightening. None of the commit messages refer to "external content", the CVE number, bug number, or anything else relevant. It is all rather odd.
One would guess that buried somewhere in that list of 143 commits for the most recent release is the change that addresses the CVE. But the project has not made it easy to figure out what the change is, what it does, how it works, or much of anything else. The locked bug entry is presumably just an oversight, but a fix for a CVE of this nature would seem to require at least a bit more information about what it is. If there is more information in the mailing lists or other project forums, the search engines do not know about it either, however.
The OpenOffice project has struggled mightily after LibreOffice went its own way; back in 2017, an LWN article described some of those struggles. The situation has perhaps gotten a bit better since that time—maintenance releases are coming out more frequently at least. LibreOffice has its own set of problems, of course, but has been cranking out feature releases on a regular basis and has far surpassed OpenOffice in everything but name recognition at this point.
In the end, the bug is not earth-shattering—and is not even considered to be a bug by some. It does seem clear that most users will not even consider the possibility that opening some document will actually reach out across the net to snag some, possibly malicious, content, though. The age-old advice not to open documents from untrusted sources is obviously relevant, but is, just as obviously, roundly ignored.
Fixing those kinds of problems is clearly to the good, even if users need to opt-in to get the protection. Unfortunately, OpenOffice users seemingly have no documented way to do so—or even to know if they need to. It is a rather strange way to run an office suite project.
| Index entries for this article | |
|---|---|
| Security | OpenOffice.org/LibreOffice |
