IP Library Granted Patent US 11,075,867
Granted Patent B2
US 11,075,867 · App. 15/893,824 · Granted Jul 27, 2021

Method and system for detection of potential spam activity during account registration

Inventors: Dmitriy Nikolaevich Kovega (Mytishchi, RU); Ekaterina Aleksandrovna Kovega (Mytishchi, RU)
Assignee: YANDEX EUROPE AG
H04L51/12G06F16/9566G06N5/047G06N20/00H04L67/02H04L67/146H04L67/306
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 11,075,867
App. No.
15/893,824
Granted
Jul 27, 2021
Kind
B2
Abstract

A computer implemented method for detecting an preventing spam account generation is disclosed. The method comprises receiving, by the email server, a request from the browser application to create an email account for at least one of sending and receiving an electronic message over the communication network, the request comprising at least the unique browser ID, acquiring, a browsing history data associated with the unique browser ID, the browsing history data being indicative of the browser application's browsing history with the at least one web resource; analyzing the browsing history data to determine a user score of the request, the user score being indicative of a likelihood that the user is one of a human or a bot executed by a computer application; and upon determining that the user score is indicative of a higher likelihood that the user is the bot, performing a restrictive action to the request.

Claims (85)

1. A computer implemented method, the method being executable on an email server coupled to a client device associated with a user, via a communication network, the client device comprising:

a permanent storage;

a browser application having previously accessed, via the communication network, at least one web resource; and

a unique browser ID associated with the browser application and stored within the permanent storage; and

the email server being further coupled to a tracking server via the communication network, the tracking server configured to:

store browsing history data indicative of the browsing history of the browser application, the browser history including an indication of the at least one web resource; and

associate the stored browsing history data with the unique browser ID;

execute a machine learning algorithm (MLA), the MLA having been previously trained on a sample that is marked as human like navigational pattern, and configured to determine if a set of predetermined features of a given navigational session is indicative of one of a low likelihood of the user being a bot, or a high likelihood of the user being a bot;

the method comprising:

receiving, by the email server, a request from the browser application to create an email account for at least one of sending and receiving an electronic message over the communication network, the request comprising at least the unique browser ID;

acquiring, from the tracking server, the browsing history data associated with the unique browser ID, the acquiring the browsing history data comprising retrieving the browsing history data from the tracking server executing a web analytic application servicing the at least one web resource, the browsing history data comprising:

an access time for each of the at least one web resource by the browser application; and

one or more uniform resource locators (URLs) sorted chronologically based on its respective access time, each of the one or more URLs corresponding to a respective one of the at least one web resource;

analyzing the browsing history data to determine a user score of the request, the user score being indicative of a likelihood that the user is one of a human or a bot executed by a computer application, determining the user score comprising:

parsing the chronologically sorted one or more URLs into one or more navigational sessions, the one or more navigational sessions comprising at least one of the one or more URLs accessed by the browser application during a period of time starting with a connection to the communication network by the browser application and terminating with a disconnection from the communication network by the browser application;

retrieving the set of predetermined features for each of the one or more navigational sessions, the set of predetermined features comprising at least one of:

a duration of a given navigational session;

a number of recurrence of URLs having a same host name in the given navigational session;

a presence of a URL associated with a search engine service in the given navigational session;

a number of URLs contained within the given navigational session; and

assigning, for each of the one or more navigational sessions, one of (i) a logical pattern score value representing the low likelihood of the user being a bot, or (ii) a non-logical pattern score value representing the high likelihood of the user being the bot, wherein

the assigning the logical pattern score value comprises:

inputting the retrieved set of features to the MLA;

assigning the logical pattern score value upon determining that the retrieved set of features is indicative of the low likelihood of the user being a bot;

the assigning the non-logical pattern score value comprises:

inputting the retrieved set of features to the MLA;

assigning the non-logical pattern score value upon determining that the retrieved set of features is indicative of the high likelihood of the user being a bot;

obtaining the user score by aggregating the logical pattern score value and the non-logical pattern score value of the one or more navigational sessions and further dividing by a total number of navigational sessions included in the browsing history data;

upon determining that the user score is indicative of a higher likelihood that the user is the bot, performing a restrictive action to the request.

2. The method of claim 1 , wherein determining that the user score is indicative of a higher likelihood that the user is the bot comprises determining the obtained user score to be above an empirically determined confidence threshold indicative of a confidence that the user is the bot.

3. The method of claim 2 , wherein upon determining that the user score is below the confidence threshold, the method further comprises:

determining a potential human spammer score value, the potential human spammer score value being indicative of a likelihood that the user is a potential spammer or not; and

performing the restrictive action to the request upon determining that the potential human spammer score value is indicative of a higher likelihood that the user is a potential spammer.

4. The method of claim 3 , wherein:

determining the potential human spammer score value comprises:

determining a ratio of (i) URLs in the browsing history data found within a list of URLs of one or more web resources empirically determined to be associated with spamming activities, to (ii) a total number of URLs in the web browsing history data; and wherein

assigning the potential human spammer score value based on the ratio, wherein a higher ratio is indicative of the higher likelihood that the user is a potential spammer.

5. The method of claim 3 , wherein determining the potential human spammer score value comprises:

determining a number of URLs contained within the browsing history data; and

assigning the potential human spammer score based on the number of URLs contained within the browsing history data, wherein:

a higher number of URLs above a first predetermined number is indicative of the higher likelihood that the user is a potential spammer; and

a lower number of URLs below a second predetermined number is indicative of the higher likelihood that the user is a potential spammer.

6. The method of claim 4 , wherein the list of URLs is maintained by the email server.

7. The method of claim 1 , wherein the restrictive action comprises refusing the request to create the email account.

8. An email server coupled to a client device associated with a user via a communication network, the client device comprising a permanent storage, a browser application having previously accessed, via the communication network, at least one web resource, and a unique browser ID associated with the browser application stored within the permanent storage, the email server being further coupled to a tracking server via the communication network, the tracking server configured to:

store browsing history data indicative of the browsing history of the browsing application, the browser history including an indication of the at least one web resource and

associate the stored browsing history data with the unique browser ID,

execute a machine learning algorithm (MLA), the MLA having been previously trained on a sample that is marked as human like navigational pattern, and configured to determine if a set of predetermined features of a given navigational session is indicative of one of a low likelihood of the user being a bot, or a high likelihood of the user being a bot; and

the email server comprising:

a network interface for communicatively coupling to the communication network;

a processor coupled to the network interface, the processor configured to:

receive, by the email server, a request from the browser application to create an email account for at least one of sending and receiving an electronic message over the communication network, the request comprising at least the unique browser ID;

acquire, from the tracking server, the browsing history data associated with the unique browser ID, to acquire the browsing history data, the processor being configured to retrieve the browsing history data from the tracking server executing a web analytic application servicing the at least one web resource, the browsing history data comprising:

an access time for each of the at least one web resource by the browser application; and

one or more uniform resource locators (URLs) sorted chronologically based on its respective access time, each of the one or more URLs corresponding to a respective one of the at least one web resource;

analyze the browsing history data to determine a user score of the request, the user score being indicative of a likelihood that the user is one of a human or a bot executed by a computer application,

to determine the user score, the processor being configured to:

parse the chronologically sorted one or more URLs into one or more navigational sessions, the one or more navigational sessions comprising at least one of the one or more URLs accessed by the browser application during a period of time starting with a connection to the communication network by the browser application and terminating with a disconnection from the communication network by the browser application;

retrieve the set of predetermined features for each of the one or more navigational sessions, the set of predetermined features comprising at least one of:

a duration of a given navigational session;

a number of recurrence of URLs having a same host name in the given navigational session;

a presence of a URL associated with a search engine service in the given navigational session;

a number of URLs contained within the given navigational session; and

assign, for each of the one or more navigational sessions, one of (i) a logical pattern score value representing the low likelihood of the user being a bot, or (ii) a non-logical pattern score value representing the high likelihood of the user being a bot, wherein

to assign the logical pattern score value, the processor is configured to:

 input the retrieved set of features to the MLA;

 assign the logical pattern score value upon determining that the retrieved set of features is indicative of the low likelihood of the user being the bot;

to assign the non-logical pattern score value, the processor is configured to:

 input the retrieved set of features to the MLA;

 assign the non-logical pattern score value upon determining that the retrieved set of features is indicative of the high likelihood of the user being the bot;

obtain the user score by aggregating the logical pattern score value and the non-logical pattern score value of the one or more navigational sessions and further dividing by a total number of navigational sessions included in the browsing history data;

upon determining that the user score is indicative of a higher likelihood that the user is the bot, perform a restrictive action to the request.

9. The email server of claim 8 , wherein to determine that the user score is indicative of a higher likelihood that the user is the bot, the processor is configured to determine the obtained user score to be above an empirically determined confidence threshold indicative of a confidence that the user is the bot.

10. The email server of claim 9 , wherein upon determining that the user score is below the confidence threshold, the processor is further configured to:

determine a potential human spammer score value, the potential human spammer score value being indicative of a likelihood that the user is a potential spammer or not; and

perform the restrictive action to the request upon determining that the potential human spammer score value is indicative of a higher likelihood that the user is a potential spammer.

11. The email server of claim 10 , wherein:

to determine the potential human spammer score value, the processor is configured to:

determine a ratio of (i) URLs in the browsing history data found within a list of URLs of one or more web resources empirically determined to be associated with spamming activities, to (ii) a total number of URLs in the web browsing history data; and

assign the potential human spammer score value based on the ratio, wherein a higher ratio is indicative of the higher likelihood that the user is a potential spammer.

12. The email server of claim 10 , wherein to determine the potential human spammer score value, the processor is configured to:

determine a number of URLs contained within the browsing history data; and

assign the potential human spammer score based on the number of URLs contained within the browsing history data, wherein:

a higher number of URLs above a first predetermined number is indicative of the higher likelihood that the user is a potential spammer; and

a lower number of URLs below a second predetermined number is indicative of the higher likelihood that the user is a potential spammer.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 9, 2024
From: DIRECT CURSUS TECHNOLOGY L.L.C
To: Y.E. HUB ARMENIA LLC
Reel/Frame 068534/0384 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2023
From: YANDEX EUROPE AG
To: DIRECT CURSUS TECHNOLOGY L.L.C
Reel/Frame 065692/0720 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2018
From: KOVEGA, DMITRIY NIKOLAEVICH; KOVEGA, EKATERINA ALEKSANDROVNA
To: YANDEX LLC
Reel/Frame 044894/0100 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2018
From: YANDEX LLC
To: YANDEX EUROPE AG
Reel/Frame 044894/0132 →
Priority Claims (1)
RU 2017126673 · Jul 26, 2017 · national
Continuity (1)
Related Publication 20190036858A1 · Jan 31, 2019
Cited By (2)
US 12,468,961 US 12,683,784