IP Library Granted Patent US 9,639,699
Granted Patent B1
US 9,639,699 · App. 14/802,531 · Granted May 2, 2017

Detecting non-human users on computer systems

Inventor: Sreenath Kurupati (Sunnyvale, CA)
Assignee: Cyberfend, Inc.
G06F21/566G06F2221/034G06F2221/2133
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 9,639,699
App. No.
14/802,531
Granted
May 2, 2017
Kind
B1
Abstract

A method including collecting, by a processing device, raw data regarding an input to fill a form field. The method further includes converting, by the processing device, the raw data to test data, wherein the test represents behavioral characteristics of the entry of the input. The method further includes identifying a human characteristic model corresponding to the behavior characteristics of the entry of the input. The method further includes generating a predictor from a comparison of the test data against the corresponding human characteristic model. The predictor includes a score indicating a probability that the input originated from a human user or from a malicious code imitating the human user.

Claims (45)

1. A method comprising:

receiving, by a processing device of a server device, a request for a transaction by a client device;

in response to the request, causing, by the processing device, a graphical user interface to display on the client device, the graphical user interface comprising a form field and a user interface control mechanism, wherein the graphical user interface comprise a plurality of individual images embedded within the user interface control mechanism, each of the plurality of individual images comprising a cognitive transform of a character for input selection by a user, wherein the cognitive transform is visually interpretable by a human user and at least partially prohibitive to interpretation by malicious code;

receiving, by the processing device, input comprising a selection of characters via the user interface control mechanism;

collecting, by processing device, data relating to entry of the input at the user interface control mechanism,

wherein the data represents behavioral characteristics of the entry of the input;

generating a score from a comparison of the data against a human characteristic model corresponding to expected behavior characteristics of the entry at the user interface control mechanism, wherein the score indicates a probability that the input originated from the human user or from the malicious code imitating the human user;

determining, by the processing device, whether the input is valid;

generating, by the processing device, a seeded captcha image using at least a portion of the input as a seed, wherein the seeded captcha image comprises a second cognitive transform that is visually interpretable by the human user and at least partially prohibitive to interpretation by the malicious code;

causing, by the processing device, the graphical user interface to display the seeded captcha image for a visual confirmation by the user;

collecting, by the processing device, a response to the seeded captcha image by the user via the graphical user interface;

determining, by the processing device, whether the response correctly solves the seeded captcha image;

determining, by the processing device, whether the user is the human user when the response correctly solves the seeded captcha image, the input is valid, and the score is greater than a threshold; and

permitting, by the processing device, the transaction when the user is determined to be the human user.

2. The method of claim 1 , wherein the human characteristic model comprises aspects of a human input different from aspects of a malicious code input.

3. The method of claim 1 , wherein the input to fill the form field comprises a user input at a physical user interface device, the physical user interface device comprising one or more of a list of sensor devices to collect the data, the list comprising:

a keyboard;

a mouse;

a touch interface;

an accelerometer; and

a gyroscope.

4. The method of claim 1 , wherein the input to fill the form field comprises a user input at a virtual user interface device.

5. The method of claim 1 , wherein the plurality of individual images is arranged in the user interface control mechanism with a pattern in which positions of the plurality of individual images, spacing between the plurality of individual images, or both is randomized.

6. The method of claim 1 , wherein the plurality of individual images is arranged in the user interface control mechanism with a pattern in which size of each of the plurality of individual images is randomized.

7. The method of claim 1 , wherein the plurality of individual images is arranged in the user interface control mechanism with a first pattern in which positions of the plurality of individual images, a size of each of the plurality of individual images, or both is randomized, and wherein the method further comprises:

receiving, by the processing device, a second request for a second transaction; and

in response to the second request, causing, by the processing device, the graphical user interface to display the plurality of individual images embedded within the user interface control mechanism in a second pattern in which positions of the plurality of individual images, a size of each of the plurality of individual images, or both is different from the first pattern.

8. The method of claim 1 , further comprising causing, by the processing device, the graphical user interface to hide the selection of characters in the form field or display the corresponding one of the plurality of individual images selected in the form field.

9. A non-transitory computer readable storage medium including instructions that, when executed by a computing system, cause the computing system to perform operations comprising:

generating, by a processing device, a virtual user interface to facilitate a user interaction at the virtual user interface in response to a user request for a transaction, wherein the virtual user interface comprises a plurality of individual images embedded within a user interface control mechanism, each of the plurality of individual images comprising a cognitive transform to render the virtual user interface visually interpretable by a human user and at least partially prohibitive to interpretation by malicious code;

collecting, by the processing device, an output value from the virtual user interface based on a user interaction with the virtual user interface;

collecting, by the processing device, data regarding the user interaction at the virtual user interface,

wherein the data represents behavior characteristics of the user interaction;

generating a prediction score from a comparison of the data against a characteristic model corresponding to expected behavior characteristics of the user interaction at the user interface control mechanism to differentiate the human user from the malicious code imitating the human user; and

analyzing, by the processing device, the output values from the virtual user interface for correctness;

generating, by the processing device, a seeded captcha image using at least a portion of the output value as a seed;

generating, by the processing device, a graphical user interface to facilitate a second user interaction at the graphical user interface, the graphical user interface to display seeded captcha image for a visual confirmation;

collecting, by the processing device, a response to the seeded captcha image by the second user interaction at the graphical user interface;

determining, by the processing device, whether the response correctly solves the seeded captcha image;

determining, by the processing device, whether the user request is from the human user when the response correctly solves the seeded captcha image, the output value is correct, and the score is greater than a threshold; and

permitting, by the processing device, the transaction when the user is determined to be from the human user.

10. The non-transitory computer readable storage medium of claim 9 , wherein the cognitive transform comprises a substitution of at least one image object into the virtual user interface in place of a corresponding character object within the virtual user interface.

11. The non-transitory computer readable storage medium of claim 10 , wherein a copy of the at least one image object is input into a form field in response to detection of the user interaction at the at least one image object in the virtual user interface.

12. The non-transitory computer readable storage medium of claim 9 , wherein the cognitive transform comprises a displacement of a first object within the virtual user interface relative to second object of the virtual user interface.

13. The non-transitory computer readable storage medium of claim 9 , wherein the cognitive transform comprises a re-sequencing of one or more objects within the virtual user interface.

Assignments (4)
MERGER Recorded Apr 13, 2017
From: CYBERFEND, INC.
To: AKAMAI TECHNOLOGIES, INC.
Reel/Frame 041995/0434 →
MERGER Recorded Mar 22, 2017
From: CYBERFEND, INC.
To: CHIMERA ACQUISITION CORP. D/B/A CYBERFEND, INC.
Reel/Frame 041682/0228 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNMENT DOCUMENT PREVIOUSLY RECORDED ON REEL 036154 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 18, 2016
From: KURUPATI, SREENATH
To: CYBERFEND, INC.
Reel/Frame 040647/0134 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 22, 2015
From: KURUPATI, SREENATH
To: CYBERFEND, INC.
Reel/Frame 036154/0292 →
Continuity (1)
Provisional Application 62026570 · Jul 18, 2014