# US 2019/0171809 A1 · Binary authorization based on both file and package attributes

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0171809 A1
- Document ID: US20190171809A1
- Status: Published application
- Kind: A1
- Application number: 15/831,006
- Filed: 2017-12-04
- Published: 2019-06-06
- Earliest claimed: 2017-12-04
- Assignees: Microsoft Technology Licensing, LLC
- Applicants: Microsoft Technology Licensing, LLC
- Inventors: Md. Nazmus SAKIB; Thomas Walter CALDWELL, III; Jeffrey SUTHERLAND; Deskin MILLER; Scott ANDERSON; Deepak Jagannathan MANOHAR; Adrian MARINESCU
- Web page: https://patentgrep.com/patent/US20190171809A1

## CPC

- G06F 21/51: at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
- G06F 9/445: Program loading or initiating (bootstrapping G06F9/4401; security arrangements for program loading or initiating G06F21/57)
- G06F 21/566: {Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities}
- G06F 8/61: Installation
- G06F 8/65: Updates (security arrangements therefor G06F21/57)
- G06F 2221/033: Test or assess software
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Examples described herein generally relate to a computer device including a memory, and at least one processor configured to determine whether to allow execution of an application file on the computer device. The processor receives a command to execute a file. The processor determines whether the file is associated with a package reputation of an installation package. The processor determines a file reputation of the file. The processor determines whether to allow execution of the file based on a combination of the file reputation of the file and whether the file is associated with the good package reputation.

## Claims

### Claim 1

A computer device for authorizing execution of software, comprising:
a memory; and
at least one processor communicatively coupled to the memory, configured to:
receive a command to execute a file;
determine whether the file is associated with a good package reputation of an installation package;
determine a file reputation of the file; and
determine whether to allow execution of the file based on a combination of the the file reputation of the file and whether the file is associated with the good package reputation.

### Claim 2 (depends on 1)

The computer device of claim 1, wherein the processor is configured to allow execution of the file on a determination that the file is associated with the good package reputation indicating a trusted package and the file reputation does not indicate that the file is a known bad file.

### Claim 3 (depends on 1)

The computer device of claim 1, wherein the processor is configured to allow execution of the file on a determination that the file reputation indicates that the file is trusted even if the file is not associated with the good package reputation.

### Claim 4 (depends on 1)

The computer device of claim 1, wherein the processor is configured to block execution of the file on a determination that the file reputation indicates that the file is a known bad file.

### Claim 5 (depends on 1)

The computer device of claim 1, wherein the processor is configured to block execution of the file on a determination that the file reputation indicates that a reputation of the file is unknown and the file is not associated with the good package reputation.

### Claim 6 (depends on 1)

The computer device of claim 1, wherein the processor is configured to determine whether the file is associated with the good package reputation of the installation package based on reputation data propagated from the installation package to the file.

### Claim 7 (depends on 1)

The computer device of claim 1, wherein the processor is configured to associate the good package reputation with the file when the file is installed by the installation package.

### Claim 8 (depends on 1)

The computer device of claim 1, wherein the processor is configured to determine the file reputation of the file based on a local file reputation source.

### Claim 9 (depends on 8)

The computer device of claim 8, wherein the processor is configured to provide the local file reputation source with a file handle of the file.

### Claim 10 (depends on 8)

The computer device of claim 8, wherein the local file reputation source is updated based on a remote file reputation service.

### Claim 11 (depends on 1)

The computer device of claim 1, wherein the file is an updated file received after installation of the installation package.

### Claim 12 (depends on 1)

The computer device of claim 1, wherein the processor is configured to receive the command to execute the file using a local script host.

### Claim 13

A method for rendering multiple content modules on a computer display, comprising:
receiving a command to execute a file;
determining whether the file is associated with a good package reputation of an installation package;
determining a file reputation of the file; and
determining whether to allow execution of the file based on a combination of the file reputation of the file and whether the file is associated with the good package reputation.

### Claim 14 (depends on 13)

The method of claim 13, wherein determining whether to allow execution of the file includes allowing execution of the file in response to a determination that the file is associated with the good package reputation indicating a trusted package and the file reputation does not indicate that the file is a known bad file.

### Claim 15 (depends on 13)

The method of claim 13, wherein determining whether to allow execution of the file includes allowing execution of the file in response to a determination that the file reputation indicates that the file is trusted even if the file is not associated with a good package reputation.

### Claim 16 (depends on 13)

The method of claim 13, wherein determining whether to allow execution of the file includes blocking execution of the file in response to a determination that the file reputation indicates that the file is a known bad file.

### Claim 17 (depends on 13)

The method of claim 13, wherein determining whether to allow execution of the file includes blocking execution of the file in response to a determination that the file reputation indicates that a reputation of the file is unknown and the file is not associated with a good package reputation.

### Claim 18 (depends on 13)

The method of claim 13, further comprising:
authorizing installation of the file based on the good package reputation of the installation package; and
propagating reputation data from the installation package to the file.

### Claim 19 (depends on 13)

The method of claim 13, wherein determining the file reputation of the file includes:
updating a local file reputation source based on a remote reputation service; and
providing the local file reputation source with a file handle of the file.

### Claim 20

A computer-readable medium, comprising code executable by one or more processors for determining whether to allow execution of an application file on a computer device, the code comprising code for:
receiving a command to execute a file;
determining whether the file is associated with a good package reputation of an installation package;
determining a file reputation of the file; and
determining whether to allow execution of the file based on a combination of the file reputation of the file and whether the file is associated with the good package reputation.
