foigus' Notes
Mostly OS X Admin Related
Monthly Archives: February 2017
Adobe Package Expiration
Update, 3/9/2017: Adobe has posted another KBase article about this. Notably Adobe has re-signed Lightroom 4, Lightroom 5, and Scout. Thanks to Graham R Pugh for passing this article along.
Update, 11:30 a.m. CST, 2/24/2017: Adobe has posted a KBase article about this and how it relates to Acrobat. Thanks to Blake Garner for letting me know. I’ve used the information in that article to update the list of affected Acrobat package revisions.
On February 21, 2017 at 1:42 p.m. CST a certificate used to sign some of Adobe’s older software titles expired. This causes some Adobe packages to fail–specifically packages that are, at their core, Apple-standard packages. These titles include the following:
- Acrobat Pro DC Classic updates before
15.006.3019815.006.30173 - Acrobat Pro DC Continuous updates before
15.017.2005015.016.20041 - Acrobat Pro XI updates before 11.0.17
- Acrobat Reader DC Classic updates before 15.006.30172
- Acrobat Reader DC Continuous updates before 15.016.20039
- Acrobat Reader XI updates before 11.0.17
- Edge Code .98
- Edge Inspect 1.5.486
- Edge Reflow .51
- Lightroom 5
- Muse CC 2014.2.1
- Muse CC 2014.3.2.11
- Scout 1.1.3
While administrators may not intentionally be installing the non-Acrobat titles any more, there definitely can be forgotten titles included in long-ago created Creative Cloud Packager (CCP) packages. If macOS rejects a package due to an expired signing certificate, it will cause the entire CCP package to fail and no software will be installed.
Curiously the Acrobat packages newer than the above affected versions are signed with the same expired certificate as the earlier packages, but still pass macOS’s security muster. It is unknown why this is the case.
Rejected Adobe signing certificate:
Accepted Adobe signing certificate:
Apple packages embedded in a CCP package can be found with “find”:
$ find "lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents" -name "*.pkg" lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg
Once found, the embedded packages can be checked one of two ways:
- By opening the embedded package in Installer and clicking the (sometimes invisible) padlock in the upper right-hand corner. Problematic packages will have their certificate marked as “This certificate has expired” (pictured above with the Acrobat Pro XI 11.0.10 Updater)
- By using the “pkgutil –check-signature” command. Problematic packages will be noted as “Status: signed by a certificate that has since expired” rather than “Status: signed by a certificate trusted by Mac OS X”:
$ pkgutil --check-signature "lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg" Package "Adobe Photoshop Lightroom 5.pkg": Status: signed by a certificate that has since expired Certificate Chain: 1. Developer ID Installer: Adobe Systems, Inc. SHA1 fingerprint: 9D 75 C9 20 01 4A 65 04 94 A7 63 95 E3 91 93 47 04 E8 57 DF ----------------------------------------------------------------------------- 2. Developer ID Certification Authority SHA1 fingerprint: 3B 16 6C 3B 7D C4 B7 51 C9 FE 2A FA B9 13 56 41 E3 88 E1 86 ----------------------------------------------------------------------------- 3. Apple Root CA SHA1 fingerprint: 61 1E 5B 66 2C 59 3A 08 FF 58 D1 4A E2 24 52 D1 98 DF 6C 60
I believe Adobe’s response to this issue will be one of the following:
- “Do not use the affected packages. They are old and have been supplanted by newer technology.” This response works for Scout, Edge Code, and other non-Acrobat packages
- “Migrate to the newest version of the affected software.” This response works for Acrobat and Lightroom packages
Options to handle this issue include:
- If this issue affects a CCP package with multiple titles, a replacement package will need to be built without the affected titles (or with updated titles, if available). There is no support for editing CCP package contents nor controls for a customized installation. If the CCP package contained more than one software title, now might be a good time to consider building individual packages for each individual application
- For Acrobat XI and DC flavors (including Reader), install the latest version
- For Edge Code, move to Brackets
- For Muse, move to Muse CC 2015 or later
- If continuing to use a package is unavoidable, expanding and then flattening the package has the side effect of removing the signature
To expand and flatten a package to remove the digital signature:
- First let’s verify the package doesn’t install properly
$ sudo installer -pkg "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg" -target / Password: installer: Package name is lightroom_5_namedlicense installer: Installing at base path / installer: The install failed (The Installer encountered an error that caused the installation to fail. Contact the software manufacturer for assistance.)
- Then locate the embedded Apple package using the “find” command above
$ find "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents" -iname "*.pkg" /Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg
- And we can verify the signature is expired
$ pkgutil --check-signature "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg" Package "Adobe Photoshop Lightroom 5.pkg": Status: signed by a certificate that has since expired Certificate Chain: 1. Developer ID Installer: Adobe Systems, Inc. SHA1 fingerprint: 9D 75 C9 20 01 4A 65 04 94 A7 63 95 E3 91 93 47 04 E8 57 DF ----------------------------------------------------------------------------- 2. Developer ID Certification Authority SHA1 fingerprint: 3B 16 6C 3B 7D C4 B7 51 C9 FE 2A FA B9 13 56 41 E3 88 E1 86 ----------------------------------------------------------------------------- 3. Apple Root CA SHA1 fingerprint: 61 1E 5B 66 2C 59 3A 08 FF 58 D1 4A E2 24 52 D1 98 DF 6C 60
- We can use “pkgutil” to “expand” the package
$ pkgutil --expand "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg" "/tmp/Adobe Photoshop Lightroom 5.pkg"
- And delete the original, expired package
$ rm -rf "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg"
- “Flatten” the expanded package with “pkgutil” back to the location of the original
$ pkgutil --flatten "/tmp/Adobe Photoshop Lightroom 5.pkg" "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg"
- We can now check the embedded package is no longer signed
$ pkgutil --check-signature "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg/Contents/Resources/Setup/LTRM5.6en_US/Adobe Photoshop Lightroom 5.pkg" Package "Adobe Photoshop Lightroom 5.pkg": Status: no signature
- Then test the edited package
$ sudo installer -pkg "/Users/admin/Desktop/lightroom_5_namedlicense/Build/lightroom_5_namedlicense_Install.pkg" -target / Password: installer: Package name is lightroom_5_namedlicense installer: Installing at base path / installer: The install was successful.