Server-side detection and mitigation of client-side content filters
Abstract
A server-side technique to detect and mitigate client-side content filtering, such as ad blocking. In operation, the technique operates on a server-side of a client-server communication path to provide real-time detect the existence of a client filter (e.g., an ad blocker plug-in) through transparent request exchanges, and then to mitigate (defeat) that filter through one or operations designed to modify the HTML response body or otherwise obscure URLs. Preferably, the publisher (the CDN customer) defines one or more criteria of the page resources being served by the overlay (CDN) and that need to be protected against the client-side filtering.
Claims
exact text as granted — not AI-modifiedWhat is claimed is as follows:
1. Apparatus associated with a server side of a client-server communication, comprising:
a processor;
computer memory storing computer program instructions executed by the processor, the computer program instructions comprising:
first program code responsive to receipt of a request for a web resource from a client (i) to determine whether the request has associated therewith a cookie indicating that the client implements a content filter configured as an ad blocker; and (ii) to return a content detection script to the client responsive to a determination that the cookie is not present in the request, the content detection script executed in the client, thereby (a) detecting presence of the ad blocker in the client, (b) responsive to detecting such presence, setting the cookie, and (c) re-issuing the request from the client with the cookie; and
second program code responsive to receipt of the re-issued request (i) to receive a base page corresponding to the web resource; (ii) to obfuscate one or more Uniform Resource Identifiers (URIs) in the base page according to a rewrite policy; and (iii) to serve the base page with the obfuscated URIs as a response to the re-issued request, wherein requests associated with the obfuscated URIs bypass the content filter configured as an ad blocker.
2. The apparatus as described in claim 1 wherein an URI is associated with a piece of advertising content.
3. The apparatus as described in claim 1 wherein the first program retrieves the content detection script from a data store.
4. The apparatus as described in claim 3 wherein the second program code retrieves a configuration from the data store, the configuration including the rewrite policy identifying which of the one or more URIs should be obfuscated.
5. The apparatus as described in claim 4 wherein the configuration is one of: a configuration custom designed by a content provider, and a system-defined default configuration.
6. The apparatus as described in claim 1 wherein the computer program instructions further include third program code that receives a follow-on request associated with an obfuscated URI, retrieves a piece of content, and serves the retrieved piece of content.
7. The apparatus as described in claim 1 wherein the URI is obfuscated by one of: encryption, and scrambling.
8. The apparatus as described in claim 1 wherein the computer program instructions of the second program code are implemented using a service worker.
9. A method carried out on a server side of a client-server communication, comprising:
responsive to receipt of a request for a web resource from a client, determining whether the request has associated therewith a cookie indicating that the client implements a content filter configured as an ad blocker;
responsive to a determination that the cookie is not present in the request to return to the client a content detection script, the content detection script executed in the client, thereby (a) detecting presence of the ad blocker in the client, (b) responsive to detecting such presence, setting the cookie, and (c) re-issuing the request from the client with the cookie;
responsive to receipt of the re-issued request to receive a base page corresponding to the web resource;
obfuscating at least one Uniform Resource Identifiers (URIs) in the base page according to a rewrite policy; and
serving the base page with the at least one obfuscated URI as a response to the re-issued request, wherein a request associated with the at least one obfuscated URI bypasses the content filter configured as an ad blocker.
10. The method as described in claim 9 wherein the at least one URI is associated with a piece of advertising content.
11. The method as described in claim 9 further including receiving a follow-on request associated with the at least one URI and, in response, retrieving a piece of content and serving the retrieved piece of content.
12. The method as described in 10 further including detecting whether the client supports service workers.
13. The method as described in claim 12 further including instantiating a service worker upon a determination that the client supports service workers.
14. The method as described in claim 13 wherein the obfuscating step is performed by the service worker.
15. The method as described in claim 9 wherein the at least one URI is obfuscated by one of: encryption, and scrambling.
16. A computing system, comprising:
a client machine comprising a hardware processor, and computer memory; and
a server machine comprising a hardware processor, and computer memory holding computer program code comprising:
first program code responsive to receipt of a request for a web resource from the client machine (i) to determine whether the request has associated therewith a cookie indicating that the client machine implements a content filter configured as an ad blocker; and (ii) to return a content detection script to the client machine responsive to a determination that the cookie is not present in the request; and
second program code responsive to receipt from the client machine of a re-issued request (i) to receive a base page corresponding to the web resource; (ii) to obfuscate one or more Uniform Resource Identifiers (URIs) in the base page according to a rewrite policy; and (iii) to serve the base page with the obfuscated URIs as a response to the re-issued request, wherein requests associated with the obfuscated URIs bypass the content filter configured as an ad blocker;
the client machine configured to execute the content detection script returned from the server machine, thereby (a) detecting presence of the ad blocker in the client, (b) setting the cookie, (c) generating the re-issued request that includes the cookie, and (d) sending the re-issued request to the client machine.Join the waitlist — get patent alerts
Track US10817913B2 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.