# US 10,313,347 B2 · Data counter measures

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

- Number: US 10,313,347 B2
- Document ID: US10313347B2
- Status: Granted
- Kind: B2
- Application number: 14/842,135
- Filed: 2015-09-01
- Published: 2016-04-28
- Granted: 2019-06-04
- Earliest claimed: 2011-05-19
- Assignees: salesforce.com, inc.
- Applicants: salesforce.com, Inc.
- Inventors: Nick P. Sullivan; Vivek S. Vaidya; Tom A. Chavez
- Web page: https://patentgrep.com/patent/US10313347B2

## CPC

- H04L 63/10: {for controlling access to devices or network resources}
- G06F 16/9577: {Optimising the visualization of content, e.g. distillation of HTML documents}
- H04L 67/02: based on web technology, e.g. hypertext transfer protocol [HTTP]
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Techniques to block unwanted third party calls are disclosed. In various embodiments, an indication is received that third party code included on a web page is attempting to write to the web page content associated with an unauthorized third party call. The unauthorized third party call is blocked. In some embodiments, the unauthorized third party call is blocked by blocking the web page content associated with the unauthorized third party call from being written to the web page.

## Claims

### Claim 1

A method of blocking unwanted calls, comprising:
obtaining an indication that a first code included on a web page is attempting a third party call to a web server;
determining that the web server is an unauthorized third party; and
at least partially in response to determining that the web server is an unauthorized third party, blocking the third party call, at least in part by causing the browser not to execute the third party call.

### Claim 2 (depends on 1)

The method of claim 1, wherein the indication indicates that the first code is attempting to write, to the web page, content associated with the third party call.

### Claim 3 (depends on 2)

The method of claim 2, wherein the obtaining of the indication that the first code included on the web page is attempting to write content associated with the third party content comprises:
intercepting the third party call from the first code included on the web page to the web server at least in part by overriding, by a control tag included in a second code of the web page, a behavior of a content writing function associated with the web page and inspecting the content before the content is written to the web page.

### Claim 4 (depends on 3)

The method of claim 3, wherein the intercepting of the third party call includes intercepting a call to a function to write content to the web page.

### Claim 5 (depends on 4)

The method of claim 4, wherein determining that the third party call is to an unauthorized third party includes parsing the call to determine a called source attribute.

### Claim 6 (depends on 5)

The method of claim 5, wherein determining that the third party call is to an unauthorized third party further includes determining that the called source attribute is associated with the unauthorized third party.

### Claim 7 (depends on 6)

The method of claim 6, wherein determining that the called source attribute is associated with the unauthorized third party includes comparing the called source attribute to a list of domains associated with one or more unauthorized third parties.

### Claim 8 (depends on 1)

The method of claim 1, wherein the browser is caused to not execute the third party call by modifying data comprising a tag.

### Claim 9 (depends on 1)

The method of claim 1, wherein blocking the third party call comprises blocking content associated with the unauthorized third party from being written to the web page.

### Claim 10 (depends on 2)

The method of claim 2, wherein the content associated with the unauthorized third party is blocked from being written to the web page at least in part by replacing the content associated with the unauthorized third party with other content not associated with any unauthorized third party.

### Claim 11 (depends on 1)

The method of claim 1, wherein the third party call comprises a hypertext transfer protocol (HTTP) request.

### Claim 12 (depends on 1)

The method of claim 1, wherein the first code included on the web page comprises hypertext markup language (HTML) code.

### Claim 13 (depends on 1)

The method of claim 1, wherein the first included on the web page comprises JavaScript code.

### Claim 14 (depends on 1)

The method of claim 1, wherein the first code included on the web page comprises code that invokes a function to write content to the web page.

### Claim 15 (depends on 1)

The method of claim 1, wherein the first code included on the web page comprises JavaScript code that invokes a document.write function of JavaScript.

### Claim 16 (depends on 1)

The method of claim 1, further comprising receiving, from a first party publisher associated with the web page, a second indication that the unauthorized third party is unauthorized.

### Claim 17 (depends on 16)

The method of claim 16, wherein receiving from the first party publisher the second indication that the unauthorized third party is unauthorized includes receiving from the first party publisher an indication that the first party publisher desires to block third party calls associated with a class of third party with which the unauthorized third party is associated.

### Claim 18 (depends on 1)

The method of claim 1, wherein the third party call includes user data.

### Claim 19 (depends on 1)

The method of claim 1, wherein determining that the third party call is to the unauthorized third party comprises:
updating, using a control tag included in code of the web page, a list of unauthorized third parties;
extracting a domain attribute from a tag associated with the third party call; and
determining that the domain attribute extracted from the tag is associated with the unauthorized third party in the list of unauthorized third parties.

### Claim 20 (depends on 19)

The method of claim 19, wherein extracting the domain attribute comprises:
identifying an open tag included in the tag associated with the third party call;
parsing the tag to identify the domain attribute; and
extracting the domain attribute.

### Claim 21 (depends on 1)

The method of claim 1, further comprising:
reporting the blocking of the third party call to a publisher of the web page.

### Claim 22 (depends on 21)

The method of claim 21, wherein the reporting of the blocking of the third party call includes sending information associated with the blocking of the third party call to a data counter measures service provider.

### Claim 23

A system to block unwanted calls, comprising:
a processor configured to:
obtain an indication that a first code included on a web page is attempting a third party call to a web server;
determine that the web server is to an unauthorized third party; and
at least partially in response to determining that the web server is an unauthorized third party, block the third party call, at least in part by causing the browser not to execute the third party call; and
a memory coupled to the processor and configured to provide the processor with instructions.

### Claim 24 (depends on 23)

The system of claim 23, wherein to block third party call the processor is further configured to block content associated with the unauthorized third party from being written to the web page.

### Claim 25 (depends on 24)

The system of claim 24, wherein the content associated with the unauthorized third party is blocked from being written to the web page at least in part by replacing the content associated with the unauthorized third party with other content not associated with any unauthorized third party.

### Claim 26 (depends on 23)

The system of claim 23, wherein the third party call comprises a hypertext transfer protocol (HTTP) request.

### Claim 27 (depends on 23)

The system of claim 23, wherein to obtain the indication the processor is further configured to intercept the third party call from the first code included on the web page to the web server at least in part by overriding, by a control tag included in a second code of the web page, a behavior of a content writing function associated with the web page and inspecting the content before the content is written to the web page.

### Claim 28

A computer program product to block unwanted calls, the computer program product being embodied in a tangible, non-transitory computer readable storage medium and comprising computer instructions for:
obtaining an indication that a first code included on a web page is attempting a third party call to a web server;
determining that the web server is an unauthorized third party; and
at least partially in response to determining that the web server is an unauthorized third party, blocking the third party call, at least in part by causing the browser not to execute the third party call.

### Claim 29 (depends on 28)

The computer program product of claim 28, wherein the indication indicates that the first code is attempting to write, to the web page, content associated with the third party call.

### Claim 30 (depends on 28)

The computer program product of claim 28, wherein the obtaining of the indication that the first code included on the web page is attempting to write content associated with the third party content comprises:
intercepting the third party call from the first code included on the web page to the web server at least in part by overriding, by a control tag included in a second code of the web page, a behavior of a content writing function associated with the web page and inspecting the content before the content is written to the web page.

### Claim 31 (depends on 30)

The computer program product of claim 30, wherein the intercepting of the third party call includes intercepting a call to a function to write content to the web page.

### Claim 32 (depends on 28)

The computer program product of claim 28, wherein blocking the third party call comprises blocking content associated with the unauthorized third party from being written to the web page.

### Claim 33 (depends on 32)

The computer program product of claim 32, wherein the content associated with the unauthorized third party is blocked from being written to the web page at least in part by replacing the content associated with the unauthorized third party with other content not associated with any unauthorized third party.

### Claim 34 (depends on 28)

The computer program product of claim 28, wherein the first code included on the web page comprises code that invokes a function to write content to the web page.

### Claim 35 (depends on 1)

The method of claim 1, wherein the method further comprises:
examining requests upon arrival from third parties on behalf of a first party publisher and disallowing requests from the unauthorized third party on the basis that the first party publisher has previously disallowed requests from the unauthorized third party as indicated by data included in one or more configuration files.
