-
公开(公告)号:US20230393888A1
公开(公告)日:2023-12-07
申请号:US18327553
申请日:2023-06-01
Applicant: Apple Inc.
Inventor: David P. Remahl , Kyle C. Brogle , Robert J. Kendall-Kuppe , Pavlo Malynin , Geoffrey McCormack
Abstract: A kernel of an operating system receives a request from a parent process (e.g., an exec or spawn system call) to launch a child process that executes a binary. The kernel identifies a process-specific launch constraint, which is a precondition for launching the child process. The kernel evaluates the constraint, which can match against any type of system state or variable, including the process's location on disk, protection on disk, and how the process is to be launched. The kernel can then determine whether to launch the child process, thus permitting the child process to be scheduled for execution by the operating system. Launch constraints can be used both for a child process to impose preconditions on the parent process, and vice versa. Launch constraints can be included in the launch request, embedded in the binary, or located elsewhere, such as in a trust cache in kernel memory.
-
公开(公告)号:US12210612B2
公开(公告)日:2025-01-28
申请号:US17664206
申请日:2022-05-19
Applicant: Apple Inc.
Inventor: Geoffrey McCormack , Damien P. Sorresso , Eric B. Tamura , Robert J. Kendall-Kuppe
Abstract: Enclosed herein are techniques for securely executing an application. A method can be implemented by an operating system of a computing device, where the computing device includes a file system volume that includes a first data structure, and the method includes the steps of (1) receiving a request to launch the application, where the request references an application archive file that includes a second data structure that: (i) defines an organization of a plurality of files associated with the application, and (ii) includes cryptographic information for verifying the plurality of files and the second data structure; (2) in response to receiving the request: determining whether the second data structure, the plurality of files, or both, are valid using the cryptographic information; and (3) in response to determining that the second data structure, the plurality of files, or both, are valid: associating the second data structure with the first data structure.
-
公开(公告)号:US10521592B2
公开(公告)日:2019-12-31
申请号:US15490838
申请日:2017-04-18
Applicant: Apple Inc.
Inventor: Simon P. Cooper , Julien Oster , Robert J. Kendall-Kuppe , Christopher S. Linn , Jonathan Grynspan , Keith Stattenfield
Abstract: In one embodiment, a software application that is downloaded from an untrusted source is marked, based on the untrusted classification of the source, to be translocated when the software application is launched. When the software application is launched it is translocated, through a mirroring file system, to a random mount point that is a partial bind mount to the real file system that stores the image of the software application (e.g. the image of the software application's bundle).
-
公开(公告)号:US20170316211A1
公开(公告)日:2017-11-02
申请号:US15490838
申请日:2017-04-18
Applicant: Apple Inc.
Inventor: Simon P. Cooper , Julien Oster , Robert J. Kendall-Kuppe , Christopher S. Linn , Jonathan Grynspan , Keith Stattenfield
Abstract: In one embodiment, a software application that is downloaded from an untrusted source is marked, based on the untrusted classification of the source, to be translocated when the software application is launched. When the software application is launched it is translocated, through a mirroring file system, to a random mount point that is a partial bind mount to the real file system that stores the image of the software application (e.g. the image of the software application's bundle).
-
-
-