IP Library Granted Patent US 8,280,993
Granted Patent B2
US 8,280,993 · App. 11/867,096 · Granted Oct 2, 2012

System and method for detecting Internet bots

Assignee: Yahoo! Inc.
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,280,993
App. No.
11/867,096
Granted
Oct 2, 2012
Kind
B2
Abstract

Apparatuses, methods, and systems directed to detect Internet bots in communication networks. Some embodiments of the invention allow an agent of a server to detect human interaction events on a client system. In other particular embodiments, the systems and methods disclosed below can be used to detect bots using server logs. In some other embodiments, the present invention involves sending an agent to a client system and polling the agent on whether human interaction events are detected on the client system.

Claims (27)

1. A method, implemented on at least one machine, each of which having at least one processor, non-transitory computer-readable storage medium, and a communication platform, said method comprising:

maintaining an interactive session with a remote host, wherein the remote host comprises an input/output device;

transmitting an agent to the remote host, wherein the agent is operative to (a) register as a subscriber on the remote host for events generated by manipulation of the input/output device of the remote host, (b) determine if interaction event data has been detected during a detection time interval in accordance with a detection timer, (c) collect the interaction event data that has been detected during the detection time interval, (d) transmit the transmit interaction event data corresponding to the events triggered by the manipulation of the input/output device to a data store, and (e) enter a sleep mode in accordance with a sleep timer after the interaction event data is transmitted, wherein the interaction event data comprises one or more positional coordinates of the input/output device of the remote host associated with corresponding events generated by the manipulation of the input/output device of the remote host; and

determining whether a human has interacted with the remote host during the interactive session with the remote host by correlating the interaction event data transmitted by the agent with the interactive session with the remote host.

2. The method of claim 1 , wherein the agent comprises a computer program operative within an execution environment of the remote host.

3. The method of claim 1 , wherein the input/output device is a mouse device, and wherein the interaction event data comprises a location of one or more pixels on a display device pointed to by the mouse device.

4. The method of claim 1 , wherein the interaction event data further comprises one or more symbols corresponding to one or more pressed keys on a keyboard connected to the remote host.

5. The method of claim 1 , further comprising adjusting a communication policy with the remote host based on a result of the determining step.

6. One or more non-transitory computer-readable storage media encoded with computer-readable instructions operative, when executed, to cause one or more processors to:

maintain an interactive session with a remote host wherein the remote host comprises an input/output device;

transmit an agent to the remote host, wherein the agent is operative to (a) register as a subscriber on the remote host for events generated by manipulation of the input/output device of the remote host, (b) determine if interaction event data has been detected during a detection time interval in accordance with a detection timer, (c) collect the interaction event data that has been detected during the detection time interval, (d) transmit the interaction event data corresponding to the events triggered by the manipulation of the input/output device to a data store, and (e) enter a sleep mode in accordance with a sleep timer after the interaction event data is transmitted, wherein the interaction event data comprises one or more positional coordinates of the input/output device of the remote host associated with corresponding events generated by the manipulation of the input/output device of the remote host; and

determine whether a human has interacted with the remote host during the interactive session with the remote host by correlating the interaction event data transmitted by the agent with the interactive session with the remote host.

7. The computer-readable storage media of claim 6 , wherein the input/output device is a mouse device, and wherein the interaction event data comprises a location of one or more pixels on a display device pointed to by the mouse device.

8. The computer-readable storage media of claim 6 , wherein the interaction event data further comprises one or more symbols corresponding to one or more pressed keys on a keyboard connected to the remote host.

9. An apparatus, comprising:

a network interface;

a memory;

a processor;

computer program code, physically stored on a non-transitory computer readable storage medium, comprising instructions operative to cause the processor and the apparatus to:

maintain an interactive session with a remote host, wherein the remote host comprises an input/output device;

transmit an agent to the remote host, wherein the agent is operative to (a) register as a subscriber on the remote host for events generated by manipulation of the input/output device of the remote host, (b) determine if interaction event data has been detected during a detection time interval in accordance with a detection timer, (c) collect the interaction event data that has been detected during the detection time interval, (d) transmit the interaction event data corresponding to the events triggered by the manipulation of the input/output device to a data store and (e) enter a sleep mode in accordance with a sleep timer after the interaction event data is transmitted, wherein the interaction event data comprises one or more positional coordinates of the input/output device of the remote host associated with corresponding events generated by the manipulation of the input/output device of the remote host; and

determine whether a human has interacted with the remote host during the interactive session with the remote host by correlating the interaction event data transmitted by the agent with the interactive session with the remote host.

10. The method of claim 1 wherein the agent is embodied in a script embedded in a web page transmitted to the host.

11. The computer-readable storage media of claim 6 wherein the agent is embodied in a script embedded in a web page transmitted to the remote host.

12. The apparatus of claim 9 wherein the agent is embodied in a script embedded in a web page transmitted to the remote host.

13. The apparatus of claim 9 wherein the input/output device is a mouse device, and wherein the interaction event data comprises a location of one or more pixels on a display device pointed to by the mouse device.

14. The apparatus of claim 9 wherein the interaction event data further comprises one or more symbols corresponding to one or more pressed keys on a keyboard connected to the remote host.

Assignments (9)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE ASSIGNOR NAME PREVIOUSLY RECORDED AT REEL: 052853 FRAME: 0153. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 29, 2021
From: R2 SOLUTIONS LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 056832/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE NAME PREVIOUSLY RECORDED ON REEL 053654 FRAME 0254. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST GRANTED PURSUANT TO THE PATENT SECURITY AGREEMENT PREVIOUSLY RECORDED. Recorded Dec 30, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: R2 SOLUTIONS LLC
Reel/Frame 054981/0377 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Jul 8, 2020
From: STARBOARD VALUE INTERMEDIATE FUND LP
To: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
Reel/Frame 053654/0254 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2020
From: EXCALIBUR IP, LLC
To: R2 SOLUTIONS LLC
Reel/Frame 053459/0059 →
PATENT SECURITY AGREEMENT Recorded Jun 5, 2020
From: ACACIA RESEARCH GROUP LLC; AMERICAN VEHICULAR SCIENCES LLC; BONUTTI SKELETAL INNOVATIONS LLC; CELLULAR COMMUNICATIONS EQUIPMENT LLC; INNOVATIVE DISPLAY TECHNOLOGIES LLC; LIFEPORT SCIENCES LLC; LIMESTONE MEMORY SYSTEMS LLC; MERTON ACQUISITION HOLDCO LLC; MOBILE ENHANCEMENT SOLUTIONS LLC; MONARCH NETWORKING SOLUTIONS LLC; NEXUS DISPLAY TECHNOLOGIES LLC; PARTHENON UNIFIED MEMORY ARCHITECTURE LLC; R2 SOLUTIONS LLC; SAINT LAWRENCE COMMUNICATIONS LLC; STINGRAY IP SOLUTIONS LLC; SUPER INTERCONNECT TECHNOLOGIES LLC; TELECONFERENCE SYSTEMS LLC; UNIFICATION TECHNOLOGIES LLC
To: STARBOARD VALUE INTERMEDIATE FUND LP, AS COLLATERAL AGENT
Reel/Frame 052853/0153 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 3, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038950/0592 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 1, 2016
From: EXCALIBUR IP, LLC
To: YAHOO! INC.
Reel/Frame 038951/0295 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 18, 2016
From: YAHOO! INC.
To: EXCALIBUR IP, LLC
Reel/Frame 038383/0466 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2007
From: AWADALLAH, AMR; THAMPY, SAJJIT
To: YAHOO! INC.
Reel/Frame 019919/0255 →
Continuity (1)
Related Publication 20090094311A1 · Apr 9, 2009