&tldr; What prevents us from replacing an old Sparkle.framework with a newer Sparkle.framework?
Sparkle is a framework commonly used in Mac OS X applications to manage updates. Recently, a vulnerability to man-in-the-middle attacks was reported; and, due to the large number of well-known applications which use Sparkle, IT managers around the world are starting to lose sleep.
Some affected applications, like VLC, have reportedly already released a fix. However, since Sparkle has been around for so long, there are potentially many other applications which are no longer actively developed but which are still vulnerable to the same problem. We have encountered one such application already.
Since the Sparkle.framework is a run-time framework, it stands to reason that replacing the old (in many cases 1.5, or 1.6) code with newer (1.13.1) code within the application bundle will allow the application to run in many cases. So far, our light testing is an encouraging two for two (meaning, the application could start, and a check for updates would occur); but, while encouraging to the optimists, this is by no means a comprehensive answer.
So, reaching out to the professionals -- what are the drawbacks (or, impediments) to replacing old versions of Sparkle.framework in application bundles with the latest version? Could this in fact mitigate vulnerabilities while waiting for all of the affected applications to be updated.
The answer may change, depending upon the version of Sparkle currently used, and which function calls were supported by which version. It also depends if any function has been deprecated in newer versions of Sparkle, which is something I don't know.