Skip to content

Add XPC interface class allow-lists (Mac App Store) #9940

@i2h3

Description

@i2h3

Part of: #9941

Problem

Apple's XPC security guidelines require that NSXPCInterface objects have explicit class allow-lists for any collection or object-type method arguments via setClasses:forSelector:argumentIndex:ofReply:. Without them the XPC layer accepts arbitrary Objective-C objects, which is a potential sandbox escape vector and will be flagged in security review.

Affected files

  • src/gui/macOS/findersyncxpc_mac.mm
  • shell_integration/MacOSX/NextcloudIntegration/FinderSyncExt/FinderSyncXPCManager.m
  • shell_integration/MacOSX/NextcloudIntegration/FileProviderExt/FileProviderExtension+NSXPCListenerDelegate.swift

Required change

For every NSXPCInterface created in the above files, call setClasses:forSelector:argumentIndex:ofReply: to restrict the allowed classes to the minimal set actually required by each protocol.

Metadata

Metadata

No fields configured for Enhancement.

Projects

Status

🏗️ In progress

Relationships

None yet

Development

No branches or pull requests

Issue actions