Intermediary Browser Detection via Instruction Injection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current technologies face challenges in distinguishing between legitimate user browsers and malicious bots, which are used for unauthorized activities, making it difficult for web servers to differentiate and respond appropriately.

Innovation Solution

A system and method that intercepts instructions sent to client computers, injects browser detection instructions, and determines whether the browser is legitimate or a bot by analyzing the internal state of the execution environment, using techniques such as stack traces, predefined objects, and other detection tests, to differentiate between the two.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional browser identification methods are used, then simple implementation is maintained, but security against bot attacks deteriorates

Engineering Contradiction:
ImprovesecurityVSAvoiddetection system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The detection system is segmented into multiple independent detection tests (stack trace analysis, predefined object checking, timing tests, canvas fingerprinting) that can be executed separately and combined. Each test targets specific bot behaviors, allowing comprehensive security without requiring a single complex detection mechanism.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary detection layer between the browser and web server. The detection system acts as a mediator that intercepts browser requests, performs multiple detection tests, and determines whether to allow or block access based on the analysis results, without requiring changes to the core browser or server infrastructure.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If multiple detection tests are performed to accurately identify bots, then security improves, but processing time increases

Engineering Contradiction:
Improvebot detection accuracyVSAvoidrequest processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs a subset of detection tests based on risk assessment and observed browser behavior. Not all detection tests are executed for every request - the system selectively applies tests based on initial indicators, performing only necessary checks to maintain accuracy while minimizing processing time overhead.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The detection system performs preliminary lightweight checks (such as user-agent analysis, referrer verification) before committing to more resource-intensive detection tests. This preliminary action allows the system to quickly filter obvious bot traffic or legitimate users, reserving complex detection methods for borderline cases that require deeper analysis.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If detection instructions are injected into browser instructions, then bot identification capability improves, but system complexity increases

Engineering Contradiction:
Improvedetection capabilityVSAvoidinstruction processing complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The detection instructions use universal JavaScript constructs and browser APIs that work across all modern browsers. The same detection framework can identify multiple types of bots (headless browsers, scrapers, automation tools) using a single versatile system, rather than requiring separate detection mechanisms for each bot type.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The detection system modifies browser behavior by changing execution parameters (timing, sequence of operations, resource usage patterns) rather than fundamentally altering browser architecture. By injecting instructions that measure execution time, memory usage, and operational sequences, the system detects bots through parameter variations without requiring complex structural changes.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10868819B2Systems for detecting a headless browser executing on a client computer
Publication Date: 2020.12.15 SHAPE SECURITY INC
  • US10868819B2 patent drawing
  • US10868819B2 patent drawing
  • US10868819B2 patent drawing

AI summary

In an embodiment, a computer system is configured to improve security of server computers interacting with client computers through an intermediary computer, and comprising: a memory comprising processor logic; one or more processors coupled to the memory, wherein the one or more processors execute the processor logic, which causes the one or more processors to: intercept, from a server computer, one or more original instructions to be sent to a browser being executed on a client computer; inject, into the one or more original instructions, one or more browser detection instructions, which when executed cause one or more operations to be performed by an execution environment on the client computer and send a result that represents an internal state of the execution environment after performing the one or more operations to the intermediary computer; send the one or more original instructions with the one or more browser detection instructions to the browser; receive the result and determine whether the browser is a legitimate browser, or a headless browser, based, at least in part, on the result.