Multiple Vulnerabilities in Apple Products Could Allow for Arbitrary Code Execution  
 

ITS ADVISORY NUMBER:
2024-102

DATE(S) ISSUED:
09/16/2024

SUBJECT:
Multiple Vulnerabilities in Apple Products Could Allow for Arbitrary Code Execution  

OVERVIEW:
Multiple vulnerabilities have been discovered in Apple products, the most severe of which could allow for arbitrary code execution. Successful exploitation of the most severe of these vulnerabilities could allow for arbitrary code execution in the context of the logged on user. Depending on the privileges associated with the user, an attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than those who operate with administrative user rights.

THREAT INTELLEGENCE:

There are currently no reports of the vulnerabilities being exploited.

SYSTEMS AFFECTED:

  • Versions prior to iOS 18 and iPadOS 18
  • Versions prior to macOS Sequoia 15
  • Versions prior to tvOS 18
  • Versions prior to watchOS 11
  • Versions prior to visionOS 2
  • Versions prior to iOS 17.7 and iPadOS 17.7
  • Versions prior to macOS Sonoma 14.7
  • Versions prior to macOS Ventura 13.7

RISK:
Government:

  • Large and medium government entities: High
  • Small government entities: Medium

Businesses:

  • Large and medium business entities: High
  • Small business entities: Medium

Home users: Low

TECHNICAL SUMMARY:
Multiple vulnerabilities have been discovered in Apple products, the most severe of which could allow for arbitrary code execution. Details of the vulnerabilities are as follows:

TacticExecution (TA0002):

Technique: Exploitation for Client Execution (T1203):

  • An attacker with physical access may be able to use Siri to access sensitive user data. (CVE-2024-40840)
  • An app may be able to enumerate a user's installed apps. (CVE-2024-40830)
  • An attacker with physical access to a locked device may be able to Control Nearby Devices via accessibility features. (CVE-2024-44171)
  • An attacker may be able to see recent photos without authentication in Assistive Access. (CVE-2024-40852)
  • A remote attacker may be able to cause a denial-of-service. (CVE-2024-27874)
  • Unpacking a maliciously crafted archive may allow an attacker to write arbitrary files. (CVE-2024-27876)
  • An app may be able to record the screen without an indicator. (CVE-2024-27869)
  • A malicious Bluetooth input device may bypass pairing. (CVE-2024-44124)
  • An app may be able to access sensitive user data. (CVE-2024-44131, CVE-2024-40847)
  • An app may be able to access user-sensitive data. (CVE-2024-40850, CVE-2024-44170, CVE-2024-44184, CVE-2024-44153, CVE-2024-44177, CVE-2024-44152, CVE-2024-44166, CVE-2024-40859, CVE-2024-40842)
  • Processing a maliciously crafted file may lead to unexpected app termination. (CVE-2024-27880, CVE-2024-44154, CVE-2023-4504, CVE-2024-41957)
  • Processing an image may lead to a denial-of-service. (CVE-2024-44176)
  • An app may be able to cause unexpected system termination. (CVE-2024-44169)
  • Network traffic may leak outside a VPN tunnel. (CVE-2024-44165)
  • An app may gain unauthorized access to Bluetooth. (CVE-2024-44191)
  • Processing maliciously crafted web content may lead to an unexpected process crash. (CVE-2024-44198)
  • An app may be able to access information about a user's contacts. (CVE-2024-40791)
  • An app may be able to cause a denial-of-service. (CVE-2024-44183, CVE-2024-23237)
  • Processing a maliciously crafted image may lead to a denial-of-service. (CVE-2023-5841)
  • An app may gain unauthorized access to Local Network. (CVE-2024-44147)
  • An app may be able to overwrite arbitrary files. (CVE-2024-44167)
  • An unencrypted document may be written to a temporary file when using print preview. (CVE-2024-40826)
  • Private Browsing tabs may be accessed without authentication. (CVE-2024-44202, CVE-2024-44127)
  • An app may be able to leak sensitive user information. (CVE-2024-40863, CVE-2024-44129)
  • An attacker with physical access may be able to access contacts from the lock screen. (CVE-2024-44139, CVE-2024-44180)
  • An attacker may be able to cause unexpected app termination. (CVE-2024-27879)
  • Processing maliciously crafted web content may lead to universal cross site scripting. (CVE-2024-40857)
  • A malicious website may exfiltrate data cross-origin. (CVE-2024-44187)
  • An attacker may be able to force a device to disconnect from a secure network. (CVE-2024-40856)
  • An app may be able to access protected user data. (CVE-2024-44188, CVE-2024-40837, CVE-2024-27858, CVE-2024-44186, CVE-2024-44149, CVE-2024-40801)
  • A malicious app with root privileges may be able to modify the contents of system files. (CVE-2024-40825)
  • An app with root privileges may be able to access private information. (CVE-2024-44130)
  • An app may be able to access sensitive data logged when a shortcut fails to launch another app. (CVE-2024-44182)
  • Processing a maliciously crafted video file may lead to unexpected app termination. (CVE-2024-40845, CVE-2024-40846, CVE-2024-40841)
  • An app may be able to bypass Privacy preferences. (CVE-2024-44164, CVE-2024-40814)
  • An attacker may be able to read sensitive information. (CVE-2024-40848)
  • An app may be able to modify protected parts of the file system. (CVE-2024-44168, CVE-2024-44151, CVE-2024-44178, CVE-2024-40860, CVE-2024-40843)
  • An application may be able to read restricted memory. (CVE-2024-27860, CVE-2024-27861)
  • A camera extension may be able to access the internet. (CVE-2024-27795)
  • An app may be able to access protected files within an App Sandbox container. (CVE-2024-44135)
  • An app may be able to break out of its sandbox. (CVE-2024-44132, CVE-2024-44146, CVE-2024-44148)
  • An Automator Quick Action workflow may be able to bypass Gatekeeper. (CVE-2024-44128)
  • Privacy Indicators for microphone or camera access may be attributed incorrectly. (CVE-2024-27875)
  • An app may be able to access a user's Photos Library. (CVE-2024-40831)
  • An app may be able to gain root privileges. (CVE-2024-40861)
  • Processing a maliciously crafted texture may lead to unexpected app termination. (CVE-2024-44160, CVE-2024-44161)
  • An app may be able to read sensitive location information. (CVE-2024-44181, CVE-2024-44134)
  • A malicious app may be able to access notifications from the user's device. (CVE-2024-40838)
  • Multiple issues in OpenSSH. (CVE-2024-39894)
  • Visiting a malicious website may lead to user interface spoofing. (CVE-2024-40797)
  • A malicious application may be able to leak sensitive user information. (CVE-2024-44125)
  • A malicious application may be able to access private information. (CVE-2024-44163)
  • A shortcut may output sensitive user data without consent. (CVE-2024-44158)
  • An app may be able to observe data displayed to the user by Shortcuts. (CVE-2024-40844)
  • An app may be able to read arbitrary files. (CVE-2024-44190)
  • On MDM managed devices, an app may be able to bypass certain Privacy preferences. (CVE-2024-44133)
  • Visiting a malicious website may lead to address bar spoofing. (CVE-2024-40866)
  • A non-privileged user may be able to modify restricted network settings. (CVE-2024-40770)
  • A logic issue existed where a process may be able to capture screen contents without user consent. (CVE-2024-44189)
  • An app may be able to read sensitive data from the GPU memory. (CVE-2024-40790)
  • A malicious application may gain access to a user's Keychain items. (CVE-2024-44162)
  • An attacker may be able to determine the Apple ID of the owner of the computer. (CVE-2024-40862)
  • An unprivileged app may be able to log keystrokes in other apps including those using secure input mode. (CVE-2024-27886)

Successful exploitation of the most severe of these vulnerabilities could allow for arbitrary code execution in the context of the logged on user. Depending on the privileges associated with the user, an attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than those who operate with administrative user rights.

RECOMMENDATIONS:

We recommend the following actions be taken:

  • Apply the stable channel update provided by Apple to vulnerable systems immediately after appropriate testing. (M1051: Update Software)
    • Safeguard 7.1 : Establish and Maintain a Vulnerability Management Process: Establish and maintain a documented vulnerability management process for enterprise assets. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
    • Safeguard 7.2 : Establish and Maintain a Remediation Process: Establish and maintain a risk-based remediation strategy documented in a remediation process, with monthly, or more frequent, reviews.
    • Safeguard 7.6 : Perform Automated Vulnerability Scans of Externally-Exposed Enterprise Assets: Perform automated vulnerability scans of externally-exposed enterprise assets using a SCAP-compliant vulnerability scanning tool. Perform scans on a monthly, or more frequent, basis.
    • Safeguard 7.7 : Remediate Detected Vulnerabilities: Remediate detected vulnerabilities in software through processes and tooling on a monthly, or more frequent, basis, based on the remediation process.
    • Safeguard 16.13 Conduct Application Penetration Testing: Conduct application penetration testing. For critical applications, authenticated penetration testing is better suited to finding business logic vulnerabilities than code scanning and automated security testing. Penetration testing relies on the skill of the tester to manually manipulate an application as an authenticated and unauthenticated user.
    • Safeguard 18.1 : Establish and Maintain a Penetration Testing Program: Establish and maintain a penetration testing program appropriate to the size, complexity, and maturity of the enterprise. Penetration testing program characteristics include scope, such as network, web application, Application Programming Interface (API), hosted services, and physical premise controls; frequency; limitations, such as acceptable hours, and excluded attack types; point of contact information; remediation, such as how findings will be routed internally; and retrospective requirements.
    • Safeguard 18.2 : Perform Periodic External Penetration Tests: Perform periodic external penetration tests based on program requirements, no less than annually. External penetration testing must include enterprise and environmental reconnaissance to detect exploitable information. Penetration testing requires specialized skills and experience and must be conducted through a qualified party. The testing may be clear box or opaque box.
    • Safeguard 18.3 : Remediate Penetration Test Findings: Remediate penetration test findings based on the enterprise’s policy for remediation scope and prioritization.

       
  • Apply the Principle of Least Privilege to all systems and services. Run all software as a non-privileged user (one without administrative privileges) to diminish the effects of a successful attack. (M1026: Privileged Account Management)
    • Safeguard 4.7: Manage Default Accounts on Enterprise Assets and Software: Manage default accounts on enterprise assets and software, such as root, administrator, and other pre-configured vendor accounts. Example implementations can include: disabling default accounts or making them unusable.
    • Safeguard 5.4: Restrict Administrator Privileges to Dedicated Administrator Accounts: Restrict administrator privileges to dedicated administrator accounts on enterprise assets. Conduct general computing activities, such as internet browsing, email, and productivity suite use, from the user’s primary, non-privileged account.

       
  • Restrict use of certain websites, block downloads/attachments, block Javascript, restrict browser extensions, etc. (M1021: Restrict Web-Based Content)
    • Safeguard 2.3: Address Unauthorized Software: Ensure that unauthorized software is either removed from use on enterprise assets or receives a documented exception. Review monthly, or more frequently.
    • Safeguard 2.7: Allowlist Authorized Scripts: Use technical controls, such as digital signatures and version control, to ensure that only authorized scripts, such as specific .ps1, .py, etc., files, are allowed to execute. Block unauthorized scripts from executing. Reassessbi-annually, or more frequently.
    • Safeguard 9.3: Maintain and Enforce Network-Based URL Filters: Enforce and update network-based URL filters to limit an enterprise asset from connecting to potentially malicious or unapproved websites. Example implementations include category-based filtering, reputation-based filtering, or through the use of block lists. Enforce filters for all enterprise assets.
    • Safeguard 9.6: Block Unnecessary File Types: Block unnecessary file types attempting to enter the enterprise’s email gateway.

       
  • Use capabilities to detect and block conditions that may lead to or be indicative of a software exploit occurring. (M1050: Exploit Protection)
    • Safeguard 10.5: Enable Anti-Exploitation Features: Enable anti-exploitation features on enterprise assets and software, where possible, such as Microsoft® Data Execution Prevention (DEP), Windows® Defender Exploit Guard (WDEG), or Apple® System Integrity Protection (SIP) and Gatekeeper™.

       
  • Block execution of code on a system through application control, and/or script blocking. (M1038: Execution Prevention)
    • Safeguard 2.5 : Allowlist Authorized Software: Use technical controls, such as application allowlisting, to ensure that only authorized software can execute or be accessed. Reassess bi-annually, or more frequently.
    • Safeguard 2.6 : Allowlist Authorized Libraries: Use technical controls to ensure that only authorized software libraries, such as specific .dll, .ocx, .so, etc., files, are allowed to load into a system process. Block unauthorized libraries from loading into a system process. Reassess bi-annually, or more frequently.
    • Safeguard 2.7 : Allowlist Authorized Scripts: Use technical controls, such as digital signatures and version control, to ensure that only authorized scripts, such as specific .ps1, .py, etc., files, are allowed to execute. Block unauthorized scripts from executing. Reassess bi-annually, or more frequently.

       
  • Use capabilities to prevent suspicious behavior patterns from occurring on endpoint systems. This could include suspicious process, file, API call, etc. behavior. (M1040: Behavior Prevention on Endpoint)
    • Safeguard 13.2 : Deploy a Host-Based Intrusion Detection Solution: Deploy a host-based intrusion detection solution on enterprise assets, where appropriate and/or supported.
    • Safeguard 13.7 : Deploy a Host-Based Intrusion Prevention Solution: Deploy a host-based intrusion prevention solution on enterprise assets, where appropriate and/or supported. Example implementations include use of an Endpoint Detection and Response (EDR) client or host-based IPS agent.
       

REFERENCES:

Apple:
https://support.apple.com/en-us/100100
https://support.apple.com/en-us/121250
https://support.apple.com/en-us/121238
https://support.apple.com/en-us/121248
https://support.apple.com/en-us/121240
https://support.apple.com/en-us/121249
https://support.apple.com/en-us/121241
https://support.apple.com/en-us/121239
https://support.apple.com/en-us/121246
https://support.apple.com/en-us/121247
https://support.apple.com/en-us/121234

CVE:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4504
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-5841
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-23237
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27795
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27858
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27860
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27861
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27869
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27874
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27875
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27876
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27879
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27880
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-27886
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-39894
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40770
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40790
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40791
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40797
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40801
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40814
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40825
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40826
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40830
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40831
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40837
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40838
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40840
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40841
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40842
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40843
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40844
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40845
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40846
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40847
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40848
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40850
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40852
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40856
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40857
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40859
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40860
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40861
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40862
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40863
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-40866
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-41957
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44124
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44125
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44127
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44128
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44129
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44130
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44131
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44132
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44133
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44134
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44135
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44139
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44146
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44147
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44148
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44149
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44151
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44152
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44153
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44154
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44158
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44160
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44161
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44162
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44163
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44164
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44165
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44166
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44167
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44168
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44169
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44170
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44171
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44176
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44177
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44178
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44180
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44181
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44182
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44183
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44184
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44186
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44187
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44188
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44189
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44190
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44191
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44198
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-44202