Apple Code-Signing Flaw: Developers Beware

Paul Davis

Okta’s Research and Exploitation team released details on June 12 about an issue with third-party code-signing validation using Apple’s APIs. The flaw, which dates back to 2005, makes it possible for attackers to make malicious code appear to be signed by Apple when, in fact, it is not. Multiple third-party applications are affected – particularly those which offer “whitelisting services” – because developers misinterpreted the code-signing API, leading to incomplete signature validation in their applications.

The flaw affects packages from third-party vendors, including Google (CVE-2018-10405), Facebook (CVE-2018-6336) and VirusTotal (CVE-2018-10408), among others. Affected packages are listed on Okta’s advisory page. However, this flaw likely affects many other vendors.

Tenable’s analysis

This flaw exists because of the difference in the way the system loader (Mach-O) validates signed code and the way it’s validated by third-party security applications using the code- signing API.

The flaw takes advantage of the checking of the Fat/Universal file format and its use of several Mach-O files that apply to specific native CPU architectures. According to Okta, for the vulnerability to work:

  • “The first Mach-O in the Fat/Universal file must be signed by Apple, can be i386, x86_64, or even PPC.
  • The malicious binary, or non-Apple supplied code, must be ad-hoc signed and i386 compiled for an x86_64 bit target macOS.
  • The CPU_TYPE in the Fat header of the Apple binary must be set to an invalid type or a CPU Type that is not native to the host chipset.”

This results in a partial signature check “…but without checking the CA [certificate authority] root of trust.”

Tenable’s solution

Apple does not consider this an issue it would directly fix in the APIs. Instead, Apple has placed the onus on third-party developers who use the code-signing APIs.

Tenable Research has developed the following plugin for the issue and we continue to monitor the situation for our customers:

Plugin ID

Description

110519

Google Santa < 0.9.25

Additional information

Read more >

Published on Jun 13, 2018

People also viewed

Channel Sales Engineer

Santiago Santiago Chile Santiago, Chile Sales Engineering Sales
Your Role:The Channel Sales Engineer will support and will be working with production, engineering, and research and development, as well as external sales firms to determine how Tenable products and services could be designed or modified to best ...

Engineering Manager - UI

Los Angeles California United States West Jefferson Boulevard, Playa Vista, Los Angeles, California, United States, 90066 Cloud Platforms Research & Development
Your Role:Tenable is looking for an experienced UI Engineering manager, who would be responsible for leading a team of world class engineers.  This person would be expected to help grow and mentor experience engineers. Background in working with m...

Engineering Manager - UI

San Jose California United States E Santa Clara St., San Jose, California, United States, 95113 Cloud Platforms Research & Development
Your Role:Tenable is looking for an experienced UI Engineering manager, who would be responsible for leading a team of world class engineers.  This person would be expected to help grow and mentor experience engineers. Background in working with m...

Engineering Manager - UI

Columbia Maryland United States Columbia Gateway Drive, Columbia, Maryland, United States, 20146 Cloud Platforms Research & Development
Your Role:Tenable is looking for an experienced UI Engineering manager, who would be responsible for leading a team of world class engineers.  This person would be expected to help grow and mentor experience engineers. Background in working with m...

Commercial Territory Manager

Columbia Maryland United States Columbia Gateway Drive, Columbia, Maryland, United States, 20146 Sales Sales
Your Role:The Commercial Territory Manager will meet and exceed quarterly sales quota by developing new opportunities within specific geographical territory.  Researching and identifying potential accounts; outbound cold calling to soliciting new ...

Recruiter - UK

Uxbridge United Kingdom Furzeground Way , Stockley Park, Uxbridge, United Kingdom, UB11 1EZ Human Resources Human Resources
Your Role:Tenable is seeking a talented Recruiter who will source, screen and ultimately close exceptional sales, marketing and professional services talent. You’ll partner with Tenable’s Sales leadership to create and maintain a talent pipeline, ...

We have big plans for continued global growth, and we’re looking for people who are creative, flexible and dedicated to helping us build something great – something that matters.