RU2781477C2 - Method and system for detection of fraudulent access to web-resource - Google Patents

Method and system for detection of fraudulent access to web-resource Download PDF

Info

Publication number
RU2781477C2
RU2781477C2 RU2019128268A RU2019128268A RU2781477C2 RU 2781477 C2 RU2781477 C2 RU 2781477C2 RU 2019128268 A RU2019128268 A RU 2019128268A RU 2019128268 A RU2019128268 A RU 2019128268A RU 2781477 C2 RU2781477 C2 RU 2781477C2
Authority
RU
Russia
Prior art keywords
cookie
encrypted
request
electronic device
server
Prior art date
Application number
RU2019128268A
Other languages
Russian (ru)
Other versions
RU2019128268A (en
RU2019128268A3 (en
Inventor
Данил Николаевич Валгушев
Георгий Эдуардович Павлов
Артур Азаматович Маликов
Владимир Викторович Ашихмин
Original Assignee
Общество С Ограниченной Ответственностью «Яндекс»
Filing date
Publication date
Application filed by Общество С Ограниченной Ответственностью «Яндекс» filed Critical Общество С Ограниченной Ответственностью «Яндекс»
Priority to RU2019128268A priority Critical patent/RU2781477C2/en
Priority to US16/869,878 priority patent/US11128645B2/en
Publication of RU2019128268A publication Critical patent/RU2019128268A/en
Publication of RU2019128268A3 publication Critical patent/RU2019128268A3/ru
Application granted granted Critical
Publication of RU2781477C2 publication Critical patent/RU2781477C2/en

Links

Images

Abstract

FIELD: computer technology.
SUBSTANCE: method for detection of fraudulent access to a web-resource placed on a server, performed by the server, includes reception by the server from the first electronic device of the first request for access to the web-resource, containing the first cookie file; conversion by the server of the first cookie file into the second cookie file; sending by the server of the second cookie file to the first electronic device for storage; reception by the server from the second electronic device of the second request for access to the web-resource, containing the third cookie file; and determination by the server of the second request as a fraudulent request based on analysis of the third cookie file and the first cookie file.
EFFECT: increase in the safety of access to a web-resource.
20 cl, 5 dwg

Description

Область техники, к которой относится изобретениеThe technical field to which the invention belongs

[1] Настоящая технология относится в целом к системам и способам обнаружения мошеннического доступа и, в частности, к способам и системам для обнаружения мошеннического доступа к веб-ресурсу.[1] The present technology relates generally to systems and methods for detecting fraudulent access and, in particular, to methods and systems for detecting fraudulent access to a web resource.

Уровень техникиState of the art

[2] Различные глобальные и локальные сети (Интернет, World Wide Web, локальные сети и т.д.) обеспечивают пользователю доступ к огромному объему информации. Эта информация включает в себя множество контекстно-зависимых тем, таких как новости и текущие события, карты, информация о компаниях, финансовая информация и ресурсы, информация о дорожном движении, информация об играх и развлечениях и т.д. Пользователи используют разнообразные клиентские устройства (настольный компьютер, ноутбук, смартфон, планшет и т.д.) для получения доступа к богатому информационному содержимому (изображениям, аудиоматериалам, видеоматериалам, анимации и другому мультимедийному контенту из таких сетей).[2] Various global and local networks (Internet, World Wide Web, local networks, etc.) provide the user with access to a huge amount of information. This information includes many context-sensitive topics such as news and current events, maps, company information, financial information and resources, traffic information, game and entertainment information, and more. Users use a variety of client devices (desktop, laptop, smartphone, tablet, etc.) to access rich content (images, audio, video, animation, and other multimedia content from such networks).

[3] Общеизвестно использование веб-ресурсами куки-файлов для отслеживания посетителей и улучшения восприятия контента пользователями. Куки-файл представляет собой отправляемый веб-сервером веб-браузеру небольшой текстовый файл с информацией, который, как предполагается, программное обеспечение браузера сохраняет и возвращает серверу, когда браузер отправляет дополнительные запросы серверу.[3] It is common knowledge that websites use cookies to track visitors and improve the user experience. A cookie is a small text file of information sent by a web server to a web browser that the browser software is expected to store and return to the server when the browser sends further requests to the server.

[4] В общем случае большинство веб-ресурсов используют куки-файлы лишь для идентификации пользовательских устройств. Очевидно, что злоумышленник может имитировать пользовательский запрос путем кражи полного набора куки-файлов жертвы. С точки зрения веб-сервиса злоумышленник имеет тот же идентификатор, что и жертва, и, таким образом, запрос выполняется от имени жертвы.[4] In general, most web resources use cookies only to identify user devices. Clearly, an attacker can imitate a user request by stealing the victim's complete cookie set. From the point of view of the web service, the attacker has the same identity as the victim, and thus the request is made on behalf of the victim.

[5] В патентной заявке US2005262026A1 «Authorisation system» (Daniel Watkins, опубликована 24 ноября 2005 г.) описаны системы и способы для безопасной авторизации онлайн-транзакции, например, включающей в себя микроплатеж, между клиентским браузером и сервером продавца без специального программного обеспечения, установленного на клиентском компьютере, или SSL-соединения с сервером продавца. Способ авторизации включает в себя команду двойного перенаправления: первоначальный запрос транзакции перенаправляется через клиентский веб-браузер поставщику услуг, способному аутентифицировать клиента, откуда аутентифицированная команда далее перенаправляется через клиентский веб-браузер на веб-сайт продавца для выполнения транзакции. Информация, идентифицирующая продавца, товар и т.д., включается в состав команды перенаправления и может быть зашифрована или закодирована, например, с использованием хэш-функции, для предотвращения несанкционированного вмешательства. Для авторизации аутентифицированной команды веб-серверу продавца вместе с аутентифицированной командой может быть предоставлен куки-файл, содержащий идентификационные данные транзакции. В качестве альтернативы поставщик услуг может задать предельный срок, по истечении которого аутентифицированная команда становится недействительной.[5] US2005262026A1 "Authorization system" (Daniel Watkins, published November 24, 2005) describes systems and methods for securely authorizing an online transaction, such as one involving a micropayment, between a client browser and a merchant's server without special software. installed on the client computer, or an SSL connection to the merchant's server. The authorization method includes a double redirect command: the initial transaction request is redirected through the client's web browser to a service provider capable of authenticating the client, from where the authenticated command is further redirected through the client's web browser to the merchant's website to complete the transaction. Information identifying the merchant, product, etc. is included in the redirect command and may be encrypted or encoded, for example, using a hash function, to prevent tampering. To authorize an authenticated command, a cookie containing transaction identification data may be provided to the merchant's web server along with the authenticated command. Alternatively, the service provider may set a time limit after which an authenticated command becomes invalid.

[6] В патентной заявке US20090083184A1 «Methods and apparatus for detecting fraud with time based computer tags» (Ori Eisen, опубликована 26 марта 2009 г.) описаны системы и способы для формирования и анализа информации компьютерных тегов с целью предотвращения или обнаружения потенциального мошенничества. Компьютеры и другие устройства, осуществляющие доступ к сети Интернет, имеют теги устройств с информацией о дате и времени их формирования сервером защитных тегов. Отметка времени сервера может быть включена в компьютерные теги с временным критерием, например, в куки-файлы, указывающие на время их создания. Такая информация отметки времени может шифроваться и затем анализироваться при будущих попытках доступа к защищенной сети, например, при попытке доступа клиента к счету в системе банк-клиент. Изобретение может быть использовано для обнаружения подозрительной операции, при этом информация отметки времени из тега сравнивается с другой выбранной информацией о пользователе, устройстве и/или счете, включая дату/время последнего доступа к счету, дату создания счета и т.д.[6] Patent application US20090083184A1 "Methods and apparatus for detecting fraud with time based computer tags" (Ori Eisen, published March 26, 2009) describes systems and methods for generating and analyzing computer tag information to prevent or detect potential fraud. Computers and other devices that access the Internet have device tags with information about the date and time they were generated by the security tag server. The server timestamp can be included in time-based computer tags, such as cookies, indicating when they were created. Such timestamp information may be encrypted and then parsed in future attempts to access the secure network, for example, when a client attempts to access an account in a bank-client system. The invention can be used to detect a suspicious transaction by comparing the timestamp information from the tag with other selected information about the user, device and/or account, including the date/time the account was last accessed, the date the account was created, etc.

Раскрытие изобретенияDisclosure of invention

[7] Не имеющие ограничительного характера варианты осуществления настоящей технологии основаны на понимании разработчиком по меньшей мере одной технической проблемы, связанной с известными решениями.[7] Non-limiting embodiments of the present technology are based on the developer's understanding of at least one technical problem associated with known solutions.

[8] В соответствии с первым аспектом настоящей технологии реализован способ обнаружения мошеннического доступа к веб-ресурсу, размещенному на сервере. Способ выполняется сервером. Способ включает в себя получение сервером от первого электронного устройства первого запроса доступа к веб-ресурсу, содержащего первый куки-файл, преобразование сервером первого куки-файла во второй куки-файл, отправку сервером второго куки-файла первому электронному устройству для хранения, получение сервером от второго электронного устройства второго запроса доступа к веб-ресурсу, содержащего третий куки-файл, и определение сервером второго запроса как мошеннического на основе анализа третьего куки-файла и первого куки-файла.[8] In accordance with the first aspect of the present technology, a method for detecting fraudulent access to a web resource hosted on a server is implemented. The method is performed by the server. The method includes receiving by the server from the first electronic device a first request for access to a web resource containing a first cookie, converting the first cookie into a second cookie by the server, sending the second cookie by the server to the first electronic device for storage, receiving by the server from the second electronic device of the second request for access to the web resource containing the third cookie, and the server determines the second request as fraudulent based on the analysis of the third cookie and the first cookie.

[9] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первый куки-файл представляет собой первый зашифрованный куки-файл, третий куки-файл представляет собой третий зашифрованный куки-файл, а преобразование первого куки-файла во второй куки-файл включает в себя перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл.[9] In some non-limiting embodiments of the present technology, the first cookie is a first encrypted cookie, the third cookie is a third encrypted cookie, and converting the first cookie to a second cookie includes: re-encrypting the first encrypted cookie into a second encrypted cookie.

[10] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первый зашифрованный куки-файл содержит первый идентификатор пользовательского устройства, связанный с первым электронным устройством, и первую отметку времени, указывающую на время создания первого зашифрованного куки-файла, второй зашифрованный куки-файл содержит первый идентификатор пользовательского устройства и вторую отметку времени, указывающую на время создания второго зашифрованного куки-файла, а третий зашифрованный куки-файл содержит по меньшей мере второй идентификатор пользовательского устройства.[10] In some non-limiting embodiments of the present technology, the first encrypted cookie contains a first user device identifier associated with the first electronic device and a first timestamp indicating the time the first encrypted cookie was created, the second encrypted cookie contains the first identifier of the user device and the second timestamp indicating the time of creation of the second encrypted cookie, and the third encrypted cookie contains at least the second identifier of the user device.

[11] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер соединен с базой данных, а способ дополнительно включает в себя сохранение сервером в базе данных указания на перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл.[11] In some non-limiting embodiments of the present technology, the server is connected to a database, and the method further includes storing by the server in the database an indication to re-encrypt the first encrypted cookie into a second encrypted cookie.

[12] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии определение второго запроса как мошеннического включает в себя обращение к базе данных для определения совпадения второго идентификатора пользовательского устройства и первого идентификатора пользовательского устройства.[12] In some non-limiting embodiments of the present technology, determining the second request as fraudulent includes querying a database to determine if the second user device ID matches the first user device ID.

[13] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первое электронное устройство отличается от второго электронного устройства.[13] In some non-limiting embodiments of the present technology, the first electronic device is different from the second electronic device.

[14] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первое электронное устройство совпадает со вторым электронным устройством.[14] In some non-limiting embodiments of the present technology, the first electronic device is the same as the second electronic device.

[15] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии способ дополнительно включает в себя определение времени создания первого зашифрованного куки-файла в ответ на получение первого запроса и перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл, если время создания указывает на то, что срок существования первого зашифрованного куки-файла превышает заранее заданный порог.[15] In some non-limiting embodiments of the present technology, the method further includes determining a creation time of the first encrypted cookie in response to receiving the first request, and re-encrypting the first encrypted cookie into a second encrypted cookie if the creation time indicates that the lifetime of the first encrypted cookie exceeds a predetermined threshold.

[16] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер способен хранить первый ключ шифрования и второй ключ шифрования, а способ дополнительно включает в себя получение третьего запроса от первого электронного устройства до получения первого запроса, формирование первого зашифрованного куки-файла с использованием первого ключа шифрования и отправку первого зашифрованного куки-файла первому электронному устройству для хранения, при этом перешифрование сервером включает в себя дешифрование первого зашифрованного куки-файла с использованием первого ключа шифрования и перешифрование дешифрованного первого зашифрованного куки-файла с использованием второго ключа шифрования, при этом второй зашифрованный куки-файл отличается от первого зашифрованного куки-файла.[16] In some non-limiting embodiments of the present technology, the server is configured to store the first encryption key and the second encryption key, and the method further includes receiving a third request from the first electronic device prior to receiving the first request, generating a first encrypted cookie using the first encryption key and sending the first encrypted cookie to the first electronic storage device, wherein re-encryption by the server includes decrypting the first encrypted cookie using the first encryption key and re-encrypting the decrypted first encrypted cookie using the second encryption key, wherein the second encrypted cookie is different from the first encrypted cookie.

[17] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии в ответ на определение второго запроса как мошеннического выполняется ограничивающее действие в отношении второго запроса.[17] In some non-restrictive embodiments of the present technology, in response to determining the second request as fraudulent, a restrictive action is taken on the second request.

[18] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии ограничивающее действие представляет собой отклонение второго запроса или предоставление ограниченного доступа к веб-ресурсу.[18] In some non-restrictive embodiments of the present technology, the restrictive action is to deny the second request or grant limited access to the web resource.

[19] В соответствии с другим аспектом настоящей технологии реализована система для обнаружения мошеннического доступа к веб-ресурсу, размещенному на сервере. Сервер содержит процессор, способный получать от первого электронного устройства первый запрос доступа к веб-ресурсу, содержащий первый куки-файл, преобразовывать первый куки-файл во второй куки-файл, отправлять второй куки-файл первому электронному устройству для хранения, получать от второго электронного устройства второй запрос доступа к веб-ресурсу, содержащий третий куки-файл, и определять второй запрос как мошеннический на основе анализа третьего куки-файла и первого куки-файла.[19] In accordance with another aspect of the present technology, a system is implemented for detecting fraudulent access to a web resource hosted on a server. The server comprises a processor capable of receiving from the first electronic device a first request for access to a web resource containing a first cookie, converting the first cookie into a second cookie, sending the second cookie to the first electronic device for storage, receiving from the second electronic devices a second request to access a web resource containing a third cookie, and determine the second request as fraudulent based on the analysis of the third cookie and the first cookie.

[20] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первый куки-файл представляет собой первый зашифрованный куки-файл, третий куки-файл представляет собой третий зашифрованный куки-файл, а для преобразования первого куки-файла во второй куки-файл процессор способен перешифровывать первый зашифрованный куки-файл во второй зашифрованный куки-файл.[20] In some non-limiting embodiments of the present technology, the first cookie is a first encrypted cookie, the third cookie is a third encrypted cookie, and to convert the first cookie to a second cookie, the processor is able to re-encrypt the first encrypted cookie into a second encrypted cookie.

[21] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первый зашифрованный куки-файл содержит первый идентификатор пользовательского устройства, связанный с первым электронным устройством, и первую отметку времени, указывающую на время создания первого зашифрованного куки-файла, второй зашифрованный куки-файл содержит первый идентификатор пользовательского устройства и вторую отметку времени, указывающую на время создания второго зашифрованного куки-файла, а третий зашифрованный куки-файл содержит по меньшей мере второй идентификатор пользовательского устройства.[21] In some non-limiting embodiments of the present technology, the first encrypted cookie contains a first user device identifier associated with the first electronic device and a first timestamp indicating the time the first encrypted cookie was created, the second encrypted cookie contains the first identifier of the user device and the second timestamp indicating the time of creation of the second encrypted cookie, and the third encrypted cookie contains at least the second identifier of the user device.

[22] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер соединен с базой данных, а процессор дополнительно способен сохранять в базе данных указание на перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл.[22] In some non-limiting embodiments of the present technology, the server is connected to the database, and the processor is further configured to store in the database an indication to re-encrypt the first encrypted cookie into the second encrypted cookie.

[23] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии для определения второго запроса как мошеннического процессор способен обращаться к базе данных для определения совпадения второго идентификатора пользовательского устройства и первого идентификатора пользовательского устройства.[23] In some non-limiting embodiments of the present technology, in order to determine the second request is fraudulent, the processor is able to access a database to determine if the second user device ID matches the first user device ID.

[24] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первое электронное устройство отличается от второго электронного устройства.[24] In some non-limiting embodiments of the present technology, the first electronic device is different from the second electronic device.

[25] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии первое электронное устройство совпадает со вторым электронным устройством.[25] In some non-limiting embodiments of the present technology, the first electronic device is the same as the second electronic device.

[26] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор дополнительно способен определять время создания первого зашифрованного куки-файла в ответ на получение первого запроса, перешифровывать первый зашифрованный куки-файл во второй зашифрованный куки-файл, если время создания указывает на то, что срок существования первого зашифрованного куки-файла превышает заранее заданный порог.[26] In some non-limiting embodiments of the present technology, the processor is further capable of determining the creation time of the first encrypted cookie in response to receiving the first request, re-encrypting the first encrypted cookie into a second encrypted cookie if the creation time indicates that the lifetime of the first encrypted cookie exceeds a predetermined threshold.

[27] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии процессор способен хранить первый ключ шифрования и второй ключ шифрования, а также дополнительно способен получать третий запрос от первого электронного устройства до получения первого запроса, формировать первый зашифрованный куки-файл с использованием первого ключа шифрования и отправлять первый зашифрованный куки-файл первому электронному устройству для хранения, при этом для перешифрования сервером процессор способен дешифровывать первый зашифрованный куки-файл с использованием первого ключа шифрования и перешифровывать дешифрованный первый зашифрованный куки-файл с использованием второго ключа шифрования, при этом второй зашифрованный куки-файл отличается от первого зашифрованного куки-файла.[27] In some non-limiting embodiments of the present technology, the processor is capable of storing a first encryption key and a second encryption key, and is further capable of receiving a third request from the first electronic device prior to receiving the first request, generating a first encrypted cookie using the first key. encryption and send the first encrypted cookie to the first electronic storage device, wherein for re-encryption by the server, the processor is able to decrypt the first encrypted cookie using the first encryption key and re-encrypt the decrypted first encrypted cookie using the second encryption key, while the second encrypted the cookie is different from the first encrypted cookie.

[28] В контексте настоящего описания термин «сервер» означает компьютерную программу, выполняемую соответствующими аппаратными средствами и способную принимать запросы (например, от электронных устройств) через сеть и выполнять эти запросы или инициировать их выполнение. Аппаратные средства могут представлять собой один физический компьютер или одну компьютерную систему, что не существенно для настоящей технологии. В настоящем контексте выражение «по меньшей мере один сервер» не означает, что каждая задача (например, принятая команда или запрос) или некоторая определенная задача принимается, выполняется или запускается тем же сервером (т.е. одними и теми же программными и/или аппаратными средствами). Это выражение означает, что любое количество программных средств или аппаратных средств может принимать, отправлять, выполнять или инициировать выполнение любой задачи или запроса либо результатов любых задач или запросов. Все эти программные и аппаратные средства могут представлять собой один сервер или несколько серверов, причем оба эти случая подразумеваются в выражении «по меньшей мере один сервер».[28] In the context of the present description, the term "server" means a computer program executed by appropriate hardware and capable of receiving requests (for example, from electronic devices) via a network and fulfill these requests or initiate their execution. The hardware may be one physical computer or one computer system, which is not essential to the present technology. In the present context, the expression "at least one server" does not mean that every task (for example, a received command or request) or some specific task is received, executed or started by the same server (i.e. the same software and / or hardware). This expression means that any number of software or hardware can receive, send, execute or initiate the execution of any task or request or the results of any tasks or requests. All of these software and hardware may be a single server or multiple servers, both of which are meant by the expression "at least one server".

[29] В контексте настоящего описания, если явно не указано другое, числительные «первый», «второй», «третий» и т.д. используются лишь для указания различия между существительными, к которым они относятся, но не для описания каких-либо определенных взаимосвязей между этими существительными. Например, должно быть понятно, что использование терминов «первый сервер» и «третий сервер» не подразумевает какого-либо определенного порядка, типа, хронологии, иерархии или классификации, в данном случае, серверов, а также их использование (само по себе) не подразумевает обязательного наличия «второго сервера» в любой ситуации. Кроме того, как встречается здесь в другом контексте, ссылка на «первый» элемент и «второй» элемент не исключает того, что эти два элемента в действительности могут быть одним и тем же элементом. Таким образом, например, в некоторых случаях «первый» сервер и «второй» сервер могут представлять собой одно и то же программное и/или аппаратное средство, а в других случаях - различные программные и/или аппаратные средства.[29] In the context of the present description, unless explicitly stated otherwise, the numerals "first", "second", "third", etc. are used only to indicate the difference between the nouns they refer to, but not to describe any specific relationship between these nouns. For example, it should be understood that the use of the terms "first server" and "third server" does not imply any particular order, type, chronology, hierarchy or classification of, in this case, servers, nor is their use (by itself) implies the mandatory presence of a "second server" in any situation. Also, as occurs here in another context, referring to a "first" element and a "second" element does not preclude that the two elements may in fact be the same element. Thus, for example, in some cases the "first" server and the "second" server may be the same software and/or hardware, and in other cases they may be different software and/or hardware.

[30] В контексте настоящего описания, если явно не указано другое, термин «база данных» означает любой структурированный набор данных, независимо от его конкретной структуры, программного обеспечения для управления базой данных или компьютерных аппаратных средства для хранения этих данных, их применения или обеспечения их использования иным способом. База данных может располагаться в тех же аппаратных средствах, где реализован процесс, обеспечивающий хранение или использование информации, хранящейся в базе данных, либо база данных может располагаться в отдельных аппаратных средствах, таких как специализированный сервер или множество серверов.[30] In the context of this description, unless expressly stated otherwise, the term "database" means any structured set of data, regardless of its specific structure, database management software or computer hardware for storing this data, their application or provision using them in a different way. The database may reside on the same hardware as the process for storing or using the information stored in the database, or the database may reside on separate hardware such as a specialized server or multiple servers.

Краткое описание чертежейBrief description of the drawings

[31] Дальнейшее описание приведено для лучшего понимания настоящей технологии, а также других аспектов и их признаков, и должно использоваться совместно с приложенными чертежами.[31] The following description is provided for a better understanding of the present technology, as well as other aspects and their features, and should be used in conjunction with the attached drawings.

[32] На фиг. 1 представлена схема системы, реализованной согласно не имеющим ограничительного характера вариантам осуществления настоящей технологии.[32] FIG. 1 is a diagram of a system implemented in accordance with non-limiting embodiments of the present technology.

[33] На фиг. 2 представлена структура базы данных системы.[33] FIG. 2 shows the structure of the system database.

[34] На фиг. 3 представлена схема обнаружения мошеннического доступа к веб-ресурсу.[34] FIG. Figure 3 shows a scheme for detecting fraudulent access to a web resource.

[35] На фиг. 4 представлена схема определения последней отметки времени, связанной с идентификатором пользователя.[35] FIG. 4 is a diagram for determining the last timestamp associated with a user ID.

[36] На фиг. 5 представлена блок-схема способа обнаружения мошеннического доступа к веб-ресурсу.[36] FIG. 5 is a flowchart of a method for detecting fraudulent access to a web resource.

Осуществление изобретенияImplementation of the invention

[37] На фиг. 1 представлена схема системы 100, пригодной для реализации вариантов осуществления настоящей технологии, не имеющих ограничительного характера. Очевидно, что система 100 приведена лишь для демонстрации варианта реализации настоящей технологии. Таким образом, дальнейшее описание системы представляет собой описание примеров, иллюстрирующих настоящую технологию. Это описание не предназначено для определения объема или границ настоящей технологии. В некоторых случаях также приводятся полезные примеры модификаций системы 100. Они способствуют пониманию, но также не определяют объем или границы настоящей технологии. Эти модификации не составляют исчерпывающего перечня. Как должно быть понятно специалисту в данной области, возможны и другие модификации. Кроме того, если в некоторых случаях модификации не описаны (т.е. примеры модификаций отсутствуют), это не означает, что они невозможны и/или что описание содержит единственно возможный вариант реализации того или иного элемента настоящей технологии. Специалисту в данной области должно быть понятно, что это не так. Кроме того, следует понимать, что система 100 в некоторых случаях может представлять собой упрощенную реализацию настоящей технологии и что такие варианты представлены для того, чтобы способствовать лучшему ее пониманию. Специалистам в данной области должно быть понятно, что различные варианты осуществления настоящей технологии могут быть значительно сложнее.[37] FIG. 1 is a diagram of a system 100 suitable for non-limiting embodiments of the present technology. Obviously, the system 100 is shown only to demonstrate an implementation of the present technology. Thus, the following description of the system is a description of examples illustrating the present technology. This description is not intended to define the scope or boundaries of the present technology. In some instances, useful examples of modifications to system 100 are also provided. They aid understanding but also do not define the scope or boundaries of the present technology. These modifications do not constitute an exhaustive list. As one of skill in the art would appreciate, other modifications are possible. In addition, if modifications are not described in some cases (i.e., there are no examples of modifications), this does not mean that they are impossible and / or that the description contains the only possible implementation of one or another element of the present technology. One skilled in the art will appreciate that this is not the case. In addition, it should be understood that system 100 may, in some instances, be a simplified implementation of the present technology, and that such variations are presented in order to facilitate a better understanding thereof. Those skilled in the art will appreciate that various embodiments of the present technology can be significantly more complex.

[38] Представленные в данном описании примеры и условный язык предназначены для обеспечения лучшего понимания принципов настоящей технологии, а не для ограничения ее объема до таких специально приведенных примеров и условий. Очевидно, что специалисты в данной области техники способны разработать различные способы и устройства, которые явно не описаны и не показаны, но реализуют принципы настоящей технологии в пределах ее существа и объема. Кроме того, чтобы способствовать лучшему пониманию, последующее описание может содержать упрощенные варианты реализации настоящей технологии. Специалисту в данной области должно быть понятно, что различные варианты осуществления данной технологии могут быть значительно сложнее.[38] The examples and conventions presented herein are intended to provide a better understanding of the principles of the present technology, and not to limit its scope to such specifically given examples and terms. It is obvious that specialists in the art are able to develop various methods and devices that are not explicitly described or shown, but implement the principles of the present technology within its essence and scope. In addition, to facilitate a better understanding, the following description may include simplified implementations of the present technology. A person skilled in the art should be clear that various embodiments of this technology can be significantly more complex.

[39] Более того, описание принципов, аспектов и вариантов реализации настоящей технологии, а также их конкретные примеры предназначены для охвата их структурных и функциональных эквивалентов, независимо от того, известны они в настоящее время или будут разработаны в будущем. Например, специалистам в данной области техники должно быть очевидно, что любые описанные здесь структурные схемы соответствуют концептуальным представлениям иллюстративных принципиальных схем, реализующих принципы настоящей технологии. Также должно быть очевидно, что любые блок-схемы, схемы процессов, диаграммы изменения состояния, псевдокоды и т.п. соответствуют различным процессам, которые могут быть представлены на машиночитаемом физическом носителе информации и могут выполняться компьютером или процессором, независимо от того, показан такой компьютер или процессор явно или нет.[39] Moreover, the description of principles, aspects, and embodiments of the present technology, as well as their specific examples, is intended to cover their structural and functional equivalents, whether they are currently known or will be developed in the future. For example, it should be apparent to those skilled in the art that any structural diagrams described herein correspond to conceptual representations of illustrative circuit diagrams that implement the principles of the present technology. It should also be obvious that any flowcharts, process diagrams, state transition diagrams, pseudocodes, etc. correspond to various processes that may be represented on a computer-readable physical storage medium and may be executed by a computer or processor, whether such computer or processor is explicitly shown or not.

[40] Функции различных элементов, показанных на рисунках, включая любой функциональный блок, обозначенный как «процессор», могут быть реализованы с использованием специализированных аппаратных средств, а также аппаратных средств, способных выполнять соответствующее программное обеспечение. Если используется процессор, эти функции могут выполняться одним выделенным процессором, одним совместно используемым процессором или множеством отдельных процессоров, некоторые из которых могут использоваться совместно. В некоторых вариантах осуществления настоящей технологии процессор может представлять собой процессор общего назначения, такой как центральный процессор (CPU), или специализированный процессор, такой как графический процессор (GPU). Кроме того, явное использование термина «процессор» или «контроллер» не должно трактоваться как указание исключительно на аппаратные средства, способные выполнять программное обеспечение, и может подразумевать, помимо прочего, аппаратные средства цифрового сигнального процессора (DSP), сетевой процессор, специализированную интегральную схему (ASIC), программируемую вентильную матрицу (FPGA), постоянное запоминающее устройство (ПЗУ) для хранения программного обеспечения, оперативное запоминающее устройство (ОЗУ) и энергонезависимое запоминающее устройство (ЗУ). Также могут подразумеваться другие аппаратные средства, общего назначения и/или заказные.[40] The functions of the various elements shown in the figures, including any functional block labeled "processor", may be implemented using dedicated hardware as well as hardware capable of executing the corresponding software. If a processor is used, these functions may be performed by a single dedicated processor, a single shared processor, or multiple individual processors, some of which may be shared. In some embodiments of the present technology, the processor may be a general purpose processor such as a central processing unit (CPU) or a specialized processor such as a graphics processing unit (GPU). In addition, explicit use of the term "processor" or "controller" should not be construed as referring solely to the hardware capable of executing the software and may refer to, but is not limited to, digital signal processor (DSP) hardware, network processor, ASIC (ASIC), Field Programmable Gate Array (FPGA), Read Only Memory (ROM) for storing software, Random Access Memory (RAM) and Non-Volatile Memory (ROM). Other general purpose and/or custom hardware may also be contemplated.

[41] Далее с учетом вышеизложенных принципов рассмотрены некоторые не имеющие ограничительного характера примеры, иллюстрирующие различные варианты реализации аспектов настоящей технологии.[41] In the following, in view of the foregoing principles, some non-limiting examples are provided to illustrate various embodiments of aspects of the present technology.

[42] Система 100 содержит первое электронное устройство 102. Первое электронное устройство 102 обычно взаимодействует с пользователем (не показан) и может называться клиентским устройством. Следует отметить, что взаимодействие первого электронного устройства 102 с пользователем не означает необходимости предлагать или предполагать какой-либо режим работы, например, вход в систему, регистрацию и т.п.[42] System 100 includes a first electronic device 102. The first electronic device 102 typically interacts with a user (not shown) and may be referred to as a client device. It should be noted that the interaction of the first electronic device 102 with the user is not intended to suggest or imply any mode of operation, such as login, registration, or the like.

[43] В контексте настоящего описания, если явно не указано другое, термин «электронное устройство» означает любое компьютерное аппаратное средство, способное выполнять программы, подходящие для решения данной задачи. Таким образом, некоторые (не имеющие ограничительного характера) примеры электронных устройств включают в себя персональные компьютеры (настольные, ноутбуки, нетбуки и т.п.), смартфоны и планшеты, а также сетевое оборудование, такое как маршрутизаторы, коммутаторы и шлюзы. Следует отметить, что в данном контексте устройство, функционирующее как электронное устройство, также может функционировать как сервер в отношении других электронных устройств. Использование выражения «электронное устройство» не исключает использования нескольких электронных устройств для приема, отправки, выполнения или инициирования выполнения любой задачи или запроса либо результатов любых задач или запросов либо шагов любого описанного здесь способа.[43] As used herein, unless expressly stated otherwise, the term "electronic device" means any computer hardware capable of executing programs suitable for a given task. Thus, some (non-limiting) examples of electronic devices include personal computers (desktops, laptops, netbooks, etc.), smartphones and tablets, and network equipment such as routers, switches, and gateways. It should be noted that in this context, a device functioning as an electronic device may also function as a server with respect to other electronic devices. The use of the term "electronic device" does not preclude the use of multiple electronic devices to receive, send, perform or initiate any task or request or the results of any tasks or requests or steps of any method described herein.

[44] Первое электронное устройство 102 содержит энергонезависимое ЗУ 104. Энергонезависимое ЗУ 104 может содержать один или несколько носителей информации и в общем случае обеспечивает пространство для хранения компьютерных команд, исполняемых процессором 106. Например, энергонезависимое ЗУ 104 может быть реализовано как пригодная для чтения компьютером среда, включая ПЗУ, жесткие диски (HDD), твердотельные накопители (SSD) и карты флэш-памяти.[44] The first electronic device 102 includes a non-volatile memory 104. The non-volatile memory 104 may include one or more storage media and generally provides storage space for computer instructions executed by the processor 106. For example, the non-volatile memory 104 may be implemented as being readable by a computer. environment, including ROM, hard disk drives (HDD), solid state drives (SSD) and flash memory cards.

[45] Первое электронное устройство 102 содержит известные в данной области техники аппаратные средства и/или программное обеспечение и/или встроенное программное обеспечение (либо их сочетание) для выполнения браузерного приложения 108. В общем случае браузерное приложение 108 обеспечивает пользователю (не показан) доступ к одному или нескольким веб-ресурсам. Способ реализации браузерного приложения 108 известен в данной области техники и здесь не описан. Достаточно сказать, что в качестве браузерного приложения 108 может использоваться браузер Google™ Chrome™, браузер Yandex.Browser™ или другой коммерчески доступный или проприетарный браузер.[45] The first electronic device 102 comprises hardware and/or software and/or firmware (or a combination thereof) known in the art for executing the browser application 108. In general, the browser application 108 provides a user (not shown) access to one or more web resources. The method for implementing the browser application 108 is known in the art and is not described here. Suffice it to say that the browser application 108 may be a Google™ Chrome™ browser, a Yandex.Browser™ browser, or another commercially available or proprietary browser.

[46] Независимо от способа реализации, браузерное приложение 108 обычно имеет командный интерфейс 110 и интерфейс 112 просмотра. В общем случае пользователь (не показан) может получать доступ к веб-ресурсу через сеть связи двумя основными способами. Пользователь может получать доступ к конкретному веб-ресурсу непосредственно, введя с клавиатуры адрес веб-ресурса (обычно универсальный указатель ресурсов (URL, Uniform Resource Locator), такой как www.example.com) в командном интерфейсе 110, либо перейдя по ссылке в сообщении электронной почты или в другом веб-ресурсе (это действие эквивалентно копированию и вставке в командный интерфейс 110 URL-адреса, связанного со ссылкой).[46] Regardless of the implementation method, the browser application 108 typically has a command interface 110 and a browsing interface 112. In general, a user (not shown) can access a web resource via a communications network in two main ways. A user can access a particular web resource directly by typing the web resource's address (usually a Uniform Resource Locator (URL) such as www.example.com) into the command interface 110, or by following a link in a message. email or other web resource (this action is equivalent to copying and pasting into the command interface 110 the URL associated with the link).

[47] В качестве альтернативы, пользователь согласно своей цели может выполнять поиск интересующего ресурса с использованием поисковой системы (не показана). Последний вариант особенно удобен, когда пользователю известна интересующая его тема, но не известен URL-адрес веб-ресурса. Поисковая система обычно формирует страницу результатов поисковой системы (SERP, Search Engine Result Page), которая содержит ссылки на один или несколько веб-ресурсов, соответствующих запросу пользователя. После перехода по одной или нескольким ссылкам на странице SERP пользователь может открыть требуемый веб-ресурс.[47] Alternatively, the user can search for the resource of interest using a search engine (not shown) according to their purpose. The latter option is especially convenient when the user knows the topic of interest, but does not know the URL of the web resource. The search engine usually generates a search engine results page (SERP, Search Engine Result Page), which contains links to one or more web resources that match the user's query. After clicking on one or more links on the SERP page, the user can open the required web resource.

[48] Первое электронное устройство 102 содержит интерфейс связи (не показан) для двухсторонней связи с сетью 114 связи по линии 116 связи. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии в качестве сети 114 связи может использоваться сеть Интернет. В других вариантах осуществления настоящей технологии сеть 114 связи может быть реализована иначе, например, в виде любой глобальной сети связи, локальной сети связи, частной сети связи и т.п.[48] The first electronic device 102 includes a communication interface (not shown) for two-way communication with the communication network 114 over the communication line 116 . In some non-limiting embodiments of the present technology, the Internet may be used as communication network 114 . In other embodiments of the present technology, communications network 114 may be implemented differently, such as any wide area network, local area network, private network, or the like.

[49] На реализацию линии 116 связи не накладывается каких-либо особых ограничений, она зависит от реализации первого электронного устройства 102. Лишь в качестве примера, не имеющего ограничительного характера, в тех вариантах осуществления настоящей технологии, где первое электронное устройство 102 реализовано в виде беспроводного устройства связи (такого как смартфон), линия 116 связи может быть реализована в виде беспроводной линии связи (такой как канал сети связи 3G, канал сети связи 4G, Wireless Fidelity или сокращенно WiFi®, Bluetooth® и т.п.) или проводной линии связи (такой как соединение на основе Ethernet).[49] The implementation of the communication link 116 is not particularly limited, but depends on the implementation of the first electronic device 102. By way of non-limiting example only, in those embodiments of the present technology where the first electronic device 102 is implemented as wireless communication device (such as a smartphone), link 116 may be implemented as a wireless link (such as a 3G network link, a 4G network link, Wireless Fidelity or WiFi®, Bluetooth®, etc. for short) or a wired communication lines (such as an Ethernet-based connection).

[50] Должно быть очевидно, что варианты реализации первого электронного устройства 102, линии 116 связи и сети 114 связи приведены лишь для иллюстрации. Специалисту в данной области должны быть ясны и другие конкретные детали реализации первого электронного устройства 102, линии 116 связи и сети 114 связи. Представленные выше примеры никак не ограничивают объем настоящей технологии.[50] It should be obvious that the embodiments of the first electronic device 102, communication line 116 and communication network 114 are for illustration purposes only. A person skilled in the art should be clear and other specific details of the implementation of the first electronic device 102, communication line 116 and communication network 114. The above examples do not limit the scope of the present technology in any way.

[51] Система 100 также содержит сервер 118, соединенный с сетью 114 связи. Сервер 118 может быть реализован в виде традиционного компьютерного сервера. В примере осуществления настоящей технологии сервер 118 может быть реализован в виде сервера Dell™ PowerEdge™, работающего под управлением операционной системы Microsoft™ Windows Server™. Очевидно, что сервер 118 может быть реализован с использованием любых других подходящих аппаратных средств и/или прикладного программного обеспечения и/или встроенного программного обеспечения либо их сочетания. В представленном не имеющем ограничительного характера варианте осуществления настоящей технологии сервер 118 реализован в виде одного сервера. В других не имеющих ограничительного характера вариантах осуществления настоящей технологии функции сервера 118 могут быть распределены между несколькими серверами.[51] System 100 also includes a server 118 connected to a communication network 114. Server 118 may be implemented as a conventional computer server. In an exemplary embodiment of the present technology, server 118 may be implemented as a Dell™ PowerEdge™ server running a Microsoft™ Windows Server™ operating system. Obviously, the server 118 may be implemented using any other suitable hardware and/or application software and/or firmware, or a combination thereof. In the present non-limiting embodiment of the present technology, the server 118 is implemented as a single server. In other non-limiting embodiments of the present technology, the functions of the server 118 may be distributed among multiple servers.

[52] Реализация сервера 118 хорошо известна. Вкратце, сервер 118 содержит интерфейс связи (не показан), структура и настройки которого позволяют осуществлять связь с различными элементами (такими как первое электронное устройство 102 и другие устройства, которые могут быть связаны с сетью 114 связи). Подобно первому электронному устройству 102, сервер 118 содержит память 120 сервера, которая содержит один или несколько носителей информации и в общем случае обеспечивает пространство для хранения компьютерных программных команд, исполняемых процессором 122 сервера. Например, память 120 сервера может быть реализована в виде машиночитаемого физического носителя информации, включая ПЗУ и/или ОЗУ. Память 120 сервера также может включать в себя одно или несколько устройств постоянного хранения, таких как жесткие диски (HDD), твердотельные накопители (SSD) и карты флэш-памяти.[52] The implementation of the server 118 is well known. Briefly, the server 118 includes a communication interface (not shown) whose structure and settings allow communication with various elements (such as the first electronic device 102 and other devices that may be connected to the communication network 114). Like first electronic device 102, server 118 includes server memory 120 that contains one or more storage media and generally provides storage space for computer program instructions executed by server processor 122. For example, server memory 120 may be implemented as a computer-readable physical storage medium, including ROM and/or RAM. Server memory 120 may also include one or more persistent storage devices such as hard disk drives (HDDs), solid state drives (SSDs), and flash memory cards.

[53] В некоторых вариантах осуществления изобретения сервер 118 может управляться организацией, предоставляющей описанное выше браузерное приложение 108. Например, если браузерное приложение 108 представляет собой браузер Yandex.Browser™, то сервер 118 может управляться компанией Yandex LLC (ул. Льва Толстого, 16, Москва, 119021, Россия). В других вариантах осуществления изобретения сервер 118 может управляться организацией, отличной от той, что предоставляет описанное выше браузерное приложение 108.[53] In some embodiments of the invention, the server 118 may be managed by an organization that provides the browser application 108 described above. , Moscow, 119021, Russia). In other embodiments, the server 118 may be operated by an organization other than the one that provides the browser application 108 described above.

[54] В некоторых вариантах осуществления настоящей технологии сервер 118 в общем случае выполняет функции репозитория для веб-ресурса 124. В контексте настоящего описания термин «веб-ресурс» означает любой связанный с конкретным веб-адресом (таким как URL-адрес) сетевой ресурс (такой как веб-страница, веб-сайт или веб-сервис), контент которого может быть представлен пользователю в визуальной форме первым электронным устройством 102 с использованием браузерного приложения 108.[54] In some embodiments of the present technology, server 118 generally functions as a repository for web resource 124. As used herein, the term "web resource" means any network resource associated with a specific web address (such as a URL). (such as a web page, website, or web service) whose content can be presented to the user in visual form by the first electronic device 102 using the browser application 108.

[55] Веб-ресурс 124 доступен с помощью первого электронного устройства 102 через сеть 114 связи, например, путем ввода пользователем URL-адреса в браузерном приложении 108 или путем веб-поиска с использованием поисковой системы (не показана). Несмотря на то, что в представленном не имеющего ограничительного характера варианте осуществления настоящей технологии на веб-сервере 118 размещен только веб-ресурс 124, объем изобретения этим не ограничивается и веб-ресурсов может быть несколько.[55] The web resource 124 is accessible by the first electronic device 102 via the communication network 114, for example, by a user entering a URL in a browser application 108 or by a web search using a search engine (not shown). Although the web server 118 hosts only the web resource 124 in the present non-limiting embodiment of the present technology, the scope of the invention is not limited to this and there may be multiple web resources.

[56 В общем случае в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер 118 способен формировать и отправлять куки-файлы электронным устройствам, осуществляющим доступ к веб-ресурсу 124. Способ формирования куки-файла хорошо известен в данной области техники и здесь подробно не описан. Достаточно сказать, что в ответ на запрос электронного устройства сервер 118 способен формировать и отправлять куки-файл электронному устройству, если сам запрос не содержит куки-файл.[56 In general, in some non-limiting embodiments of the present technology, server 118 is capable of generating and sending cookies to electronic devices accessing web resource 124. The method of generating a cookie is well known in the art and is not detailed here. described. Suffice it to say that, in response to a request from an electronic device, server 118 is able to generate and send a cookie to the electronic device if the request itself does not contain a cookie.

[57] Например, сервер 118 способен выполнять приложение 128 аутентификации. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии приложение 128 аутентификации способно формировать куки-файл 126 в ответ на запрос доступа от первого электронного устройства 102 к веб-ресурсу 124, если куки-файл отсутствует в запросе доступа.[57] For example, the server 118 is able to execute the application 128 authentication. In some non-limiting embodiments of the present technology, the authentication application 128 is capable of generating a cookie 126 in response to an access request from the first electronic device 102 to the web resource 124 if the cookie is not present in the access request.

[58] Куки-файл 126 представляет собой идентификатор, назначенный приложением 128 аутентификации. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии куки-файл содержит идентификатор пользователя (подробно описан ниже) и отметку времени, соответствующую времени создания куки-файла 126.[58] Cookie 126 is an identifier assigned by the application 128 authentication. In some non-limiting embodiments of the present technology, the cookie contains a user ID (described in detail below) and a timestamp corresponding to the time the cookie 126 was created.

[59] В общем случае куки-файл 126 хранится в первом электронном устройстве 102 и может быть временным, т.е. хранящимся в первом электронном устройстве 102 в течение сеанса просмотра. В качестве альтернативы, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии куки-файл 126 может быть полупостоянным. В этом случае куки-файл 126 хранится в первом электронном устройстве 102 после того, как пользователь покинул веб-ресурс 124, и повторно используется сервером 118 при последующем доступе. Например, куки-файл 126 может храниться в первом электронном устройстве 102, пока не будет удален пользователем.[59] In general, the cookie 126 is stored on the first electronic device 102 and may be temporary, ie. stored in the first electronic device 102 during the browsing session. Alternatively, in some non-limiting embodiments of the present technology, cookie 126 may be semi-permanent. In this case, the cookie 126 is stored on the first electronic device 102 after the user has left the web resource 124 and is reused by the server 118 on subsequent access. For example, cookie 126 may be stored on first electronic device 102 until deleted by the user.

[60] В некоторых вариантах осуществления настоящей технологии куки-файл 126 шифруется с использованием ключа шифрования (не показан). На реализацию ключа шифрования не накладывается каких-либо ограничений. Например, ключ шифрования может быть основан или может представлять собой вариант алгоритма на основе стандарта шифрования AES (Advanced Encryption Standard) со 128-разрядным ключом в режиме электронной кодовой книги (ECB, Electronic Code Book) и т.п.[60] In some embodiments of the present technology, cookie 126 is encrypted using an encryption key (not shown). There are no restrictions on the implementation of the encryption key. For example, the encryption key may be based on or may be a variant of an algorithm based on the Advanced Encryption Standard (AES) with a 128-bit key in Electronic Code Book (ECB) mode, or the like.

[61] В общем случае в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии куки-файл 126 отправляется браузерным приложением 108 серверу 118 при каждом запросе новой веб-страницы с веб-ресурса 124. [61] In general, in some non-limiting embodiments of the present technology, cookie 126 is sent by browser application 108 to server 118 whenever a new web page is requested from web resource 124.

[62] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии куки-файл 126 представляет собой динамический куки-файл. В контексте настоящего описания термин «динамический куки-файл» может означать куки-файл, изменяющийся с течением времени.[62] In some non-limiting embodiments of the present technology, cookie 126 is a dynamic cookie. In the context of this description, the term "dynamic cookie" may mean a cookie that changes over time.

[963] Например. с учетом того, что куки-файл 126 содержит отметку времени, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии приложение 128 аутентификации способно изменять отметку времени куки-файла 126, отражая время и дату каждого запроса доступа. Иными словами, при каждом запросе доступа к веб-ресурсу 124 от первого электронного устройства 102 куки-файл 126 изменяется приложением 128 аутентификации с целью изменения отметки времени. Измененный куки-файл 126 отправляется первому электронному устройству 102 для хранения. Иными словами, с учетом того, что куки-файл 126 содержит по меньшей мере идентификатор пользователя и отметку времени, идентификатор пользователя не изменяется, а отметка времени динамически изменяется на основе времени последнего доступа к веб-ресурсу 124.[963] For example. given that cookie 126 contains a timestamp, in some non-restrictive embodiments of the present technology, authentication application 128 is able to change the timestamp of cookie 126 to reflect the time and date of each access request. In other words, with each request to access the web resource 124 from the first electronic device 102, the cookie 126 is modified by the authentication application 128 to change the time stamp. The modified cookie 126 is sent to the first electronic device 102 for storage. In other words, given that the cookie 126 contains at least a user ID and a timestamp, the user ID does not change, but the timestamp changes dynamically based on the time the web resource 124 was last accessed.

[64] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии приложение 128 аутентификации способно изменять отметку времени куки-файла 126 в ответ на одно или несколько инициирующих событий. Например, приложение 128 аутентификации может быть способным обновлять отметку времени куки-файла 126 при каждом доступе по истечении заранее заданного периода времени (например, еженедельно. ежемесячно и т.д.).[64] In some non-limiting embodiments of the present technology, the authentication application 128 is capable of changing the timestamp of the cookie 126 in response to one or more triggering events. For example, the authentication application 128 may be able to update the timestamp of the cookie 126 on each access after a predetermined period of time (eg, weekly, monthly, etc.).

[65] В другом примере приложение 128 аутентификации может быть способным обновлять отметку времени куки-файла 126 при наличии другого ключа шифрования (такого как новый ключ шифрования (не показан)). В такой ситуации приложение 128 аутентификации способно дешифровать куки-файл 126 с использованием прежнего ключа шифрования и перешифровать куки-файл 126 (с соответствующей новой отметкой времени) с использованием нового ключа шифрования. Например, приложение 128 аутентификации может быть способным периодически использовать новый ключ перешифрования (например, раз в неделю, раз в две недели т.д.).[65] In another example, the authentication application 128 may be able to update the timestamp of the cookie 126 in the presence of a different encryption key (such as a new encryption key (not shown)). In such a situation, the authentication application 128 is able to decrypt the cookie 126 using the old encryption key and re-encrypt the cookie 126 (with a corresponding new timestamp) using the new encryption key. For example, the authentication application 128 may be able to periodically use a new re-encryption key (eg, weekly, biweekly, etc.).

[66] Для отслеживания различных отметок времени, связанных с каждым куки-файлом, сервер 118 в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии связан с базой данных 130.[66] To keep track of the various timestamps associated with each cookie, the server 118, in some non-limiting embodiments of the present technology, is linked to the database 130.

[67] На фиг. 2 представлена структура базы данных 130.[67] FIG. 2 shows the structure of the database 130.

[68] Для удобства объяснения можно предположить, что куки-файл 126 связан с идентификатором 202 пользователя. Список 206 содержит отметки времени, связанные с идентификатором 202 пользователя.[68] For convenience of explanation, it can be assumed that the cookie 126 is associated with the user ID 202. The list 206 contains timestamps associated with the user ID 202 .

[69] В представленном примере идентификатор 202 пользователя связан с тремя отметками времени (первая отметка 208 времени, вторая отметка 210 времени и третья отметка 212 времени). Три отметки времени расположены в хронологическом порядке так, что первая отметка 208 времени связана с первым посещением первого электронного устройства 102, вторая отметка 210 времени связана со следующим посещением первого электронного устройства 102, а третья отметка 212 времени связана с последним посещением (когда куки-файл 126 был зашифрован последний раз).[69] In the example shown, the user ID 202 is associated with three timestamps (first timestamp 208, second timestamp 210, and third timestamp 212). The three timestamps are arranged in chronological order such that the first timestamp 208 is associated with the first visit to the first electronic device 102, the second timestamp 210 is associated with the next visit to the first electronic device 102, and the third timestamp 212 is associated with the last visit (when the cookie 126 was last encrypted).

[70] Разумеется, также предполагается, что отметки времени могут быть связаны не со временем посещения, а указывать на время, когда куки-файл 126 был зашифрован или перешифрован.[70] Of course, it is also contemplated that the timestamps may not be associated with the time of the visit, but point to the time when the cookie 126 was encrypted or re-encrypted.

[71] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии сервер 118 способен отслеживать информацию, связанную с браузерным приложением 108. Например, сервер 118 может хранить информацию о браузерном приложении 108 и используемых операционных системах, о продолжительности посещения (или посещений), о посещенных на веб-ресурсе 124 веб-страницах, о ссылках, кнопках или других элементах, использованных на веб-ресурсе 124, и о данных, введенных с клавиатуры в текстовых полях веб-ресурса 124 (например, об размещенных комментариях).[71] In some non-limiting embodiments of the present technology, server 118 is capable of tracking information associated with browser application 108. For example, server 118 may store information about browser application 108 and the operating systems used, the duration of the visit (or visits), web pages visited on the web resource 124, links, buttons or other elements used on the web resource 124, and data entered from the keyboard in the text fields of the web resource 124 (for example, comments posted).

[72] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии приложение 128 аутентификации способно на основе отслеженной информации назначать оценку пользователя для каждого пользователя. Например, оценка пользователя представляет собой оценку, указывающую на вероятность того, что пользователь представляет собой компьютерное приложение (такое как программа-бот) и/или человека-спамера. Разумеется, также предполагается, что оценка может указывать не на вероятность того, что пользователь представляет собой компьютерное приложение и/или человека-спамера, а на то, что пользователь представляет собой заслуживающего доверия пользователя.[72] In some non-limiting embodiments of the present technology, the authentication application 128 is capable of assigning a user score to each user based on tracked information. For example, a user's score is a score indicating the likelihood that the user is a computer application (such as a bot) and/or a human spammer. Of course, it is also contemplated that the score may indicate not the likelihood that the user is a computer application and/or human spammer, but that the user is a trustworthy user.

[73] На определение оценки пользователя не накладывается каких-либо ограничений. С учетом того, что сервер 118 способен хранить информацию, связанную с браузерным приложением 108, приложение 128 аутентификации может быть способным определять оценку пользователя на основе эмпирического подхода (путем сбора фактических примеров, помеченных как последовательность просмотра веб-ресурса 124 человеком, не являющимся спамером) или эвристического подхода (путем определения последовательности просмотра веб-ресурса 124 человеком, не являющимся спамером). Например, приложение 128 аутентификации может быть способным назначать меньшую оценку пользователя (указывающую на большую вероятность того, что пользователь представляет собой программу-бот или спамера) в случае чрезмерно продолжительного посещения (например, шесть часов) по сравнению со средним пользователем-человеком (например, 30 минут).[73] No restrictions are imposed on the determination of the user's rating. Given that the server 118 is capable of storing information associated with the browser application 108, the authentication application 128 may be able to determine the user's score based on an empirical approach (by collecting actual examples tagged as a non-spammer browsing sequence of the web resource 124) or a heuristic approach (by determining the sequence of browsing the web resource 124 by a person who is not a spammer). For example, the authentication application 128 may be able to assign a lower user score (indicating a greater likelihood that the user is a bot or spammer) in the event of an excessively long visit (e.g., six hours) compared to the average human user (e.g., 30 minutes).

[74] В другом примере приложение 128 аутентификации может быть способным назначать меньшую оценку пользователя в случае чрезмерно большого количества веб-страниц, посещенных на веб-ресурсе 124, (например, 100 веб-страниц) по сравнению со средним пользователем-человеком (например, 10 страниц).[74] In another example, the authentication application 128 may be able to assign a lower user score in the event of an excessive number of web pages visited on the web resource 124 (e.g., 100 web pages) compared to the average human user (e.g., 10 pages).

[75] В еще одном примере приложение 128 аутентификации может быть способным назначать меньшую оценку пользователя, если контент текстовых полей, введенный пользователем, содержит брань, непонятный текст и т.п.[75] In yet another example, the authentication application 128 may be able to assign a lower score to a user if the content of the text fields entered by the user contains swear words, obscure text, and the like.

[76] Несмотря на то, что в представленном выше примере оценка пользователя определяется только с использованием действий пользователя в отношении веб-ресурса 124, объем изобретения этим не ограничивается. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии оценка пользователя может быть определена с использованием операций просмотра или навигации браузерного приложения 108 до обращения к веб-ресурсу 124 путем применения технологии, описанной в патентной заявке этого же заявителя US15893824 «Method and system for detection potential spam activity during account registration», поданной 12 февраля 2018 г. и полностью включенной в настоящий документ посредством ссылки.[76] Although in the above example, the user's score is determined only using the user's actions in relation to the web resource 124, the scope of the invention is not limited to this. In some non-limiting embodiments of the present technology, a user's score may be determined using browsing or navigation operations of the browser application 108 prior to accessing the web resource 124 by applying the technology described in the same applicant's patent application US15893824 "Method and system for detection potential spam activity during account registration, filed February 12, 2018, and incorporated herein by reference in its entirety.

[77] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии, если оценка пользователя оказывается меньшей заранее заданного порога, приложение 128 аутентификации способно выполнять ограничивающее действие в отношении браузерного приложения, связанного с этой оценкой пользователя. Например, ограничивающее действие может соответствовать (а) отклонению запроса электронного устройства на доступ к веб-ресурсу 124, (б) ограничению количества веб-страниц, которые могут быть запрошены электронным устройством на веб-ресурсе 124, или (в) запрету функции размещения комментариев, чтобы соответствующий пользователь не мог размещать сообщения на веб-ресурсе 124 (или чтобы количество сообщений было ограничено).[77] In some non-restrictive embodiments of the present technology, if the user's score falls below a predetermined threshold, the authentication application 128 is able to perform a restrictive action on the browser application associated with that user's score. For example, a restrictive action may correspond to (a) denying the electronic device's request to access the web resource 124, (b) limiting the number of web pages that the electronic device can request on the web resource 124, or (c) disabling the commenting feature. so that the corresponding user cannot post messages on the web resource 124 (or so that the number of messages is limited).

[78] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии оценка пользователя, связанная с каждым куки-файлом, хранится в базе 130 данных.[78] In some non-limiting embodiments of the present technology, the user score associated with each cookie is stored in the database 130.

[79] Можно предположить, что куки-файл 126, хранящийся в первом электронном устройстве 102, содержит идентификатор 202 пользователя и третью отметку 212 времени (см. фиг. 1).[79] It can be assumed that the cookie 126 stored in the first electronic device 102 contains a user ID 202 and a third timestamp 212 (see FIG. 1).

[80] Несмотря на то, что куки-файл 126 описан как содержащий идентификатор 202 пользователя и последнюю отметку 212 времени, объем изобретения этим не ограничивается. В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии куки-файл 126 может содержать идентификатор 202 пользователя и цепочку отметок времени. Иными словами, куки-файл 126 может содержать идентификатор 202 пользователя, первую отметку 208 времени, вторую отметку 210 времени и третью отметку 212 времени для хронологической иллюстрации посещений и/или перешифрования куки-файла 126. В таких вариантах осуществления изобретения не требуется хранить в базе данных отметки времени, т.е. первую отметку 208 времени, вторую отметку 210 времени и третью отметку 212 времени.[80] Although the cookie 126 is described as containing the user ID 202 and the last timestamp 212, the scope of the invention is not limited to this. In some non-limiting embodiments of the present technology, cookie 126 may contain a user ID 202 and a timestamp string. In other words, cookie 126 may contain a user identifier 202, a first timestamp 208, a second timestamp 210, and a third timestamp 212 to chronologically illustrate visits and/or re-encrypt cookie 126. In such embodiments, the invention does not need to be stored in a database. timestamp data, i.e. a first time stamp 208, a second time stamp 210, and a third time stamp 212.

[81] В общем случае в других не имеющих ограничительного характера вариантах осуществления изобретения отметки времени, хранящиеся локально в первом электронном устройстве 102 или централизованно в базе 130 данных, могут представлять собой последовательность отметок времени (т.е. первую отметку 208 времени, вторую отметку 210 времени и третью отметку 212 времени) или только последние отметки времени (в этом случае третью отметку 212 времени).[81] In general, in other non-limiting embodiments of the invention, the timestamps stored locally in the first electronic device 102 or centrally in the database 130 may be a sequence of timestamps (i.e., first timestamp 208, second timestamp 210 timestamp and a third timestamp 212) or only the latest timestamps (in this case, the third timestamp 212).

[82] Система 100 также содержит второе электронное устройство 132, соединенное с сетью 114 связи. На способ реализации второго электронного устройства 132 не накладывается каких-либо ограничений, например, оно может быть реализовано подобно первому электронному устройству 102.[82] The system 100 also includes a second electronic device 132 connected to the communication network 114. There are no restrictions on how the second electronic device 132 is implemented, for example, it can be implemented like the first electronic device 102.

[83] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии второе электронное устройство 132 связано с пользователем, похитившим куки-файл. Иными словами, пользователь, связанный со вторым электронным устройством 132, заинтересован в имитации другого пользователя путем использования куки-файла, связанного с другим электронным устройством (или устройствами), при доступе к веб-ресурсу.[83] In some non-limiting embodiments of the present technology, the second electronic device 132 is associated with the user who stole the cookie. In other words, the user associated with the second electronic device 132 is interested in mimicking another user by using a cookie associated with the other electronic device (or devices) when accessing the web resource.

[84] На причину, по которой второму электронному устройству 132 требуется имитировать куки-файл другого устройства, не накладывается каких-либо ограничений. Например, второе электронное устройство 132 может быть связано с оценкой пользователя ниже порога и поэтому ему требуется похитить куки-файл 126, связанный с оценкой пользователя выше порога. Фактически, как описано выше, многие веб-ресурсы (такие как веб-ресурс 124) используют куки-файлы в качестве идентификаторов, чтобы отфильтровывать пользователей, связанных с оценкой пользователя ниже порога. Путем похищения чужого куки-файла (такого как куки-файл 126) второе электронное устройство 132 также похищает историю, связанную с первым электронным устройством 102, и таким образом может обойти фильтр.[84] The reason why the second electronic device 132 needs to imitate a cookie file of another device is not subject to any restrictions. For example, the second electronic device 132 may be associated with a user's score below a threshold and therefore needs to steal a cookie 126 associated with a user's score above the threshold. In fact, as described above, many web resources (such as web resource 124) use cookies as identifiers to filter out users associated with a user rating below a threshold. By stealing someone else's cookie (such as cookie 126), the second electronic device 132 also steals the history associated with the first electronic device 102 and can thus bypass the filter.

[85] Способ похищения куки-файла вторым электронным устройством 132 не входит в объем настоящей технологии и поэтому подробно не обсуждается. Достаточно сказать, что известные способы похищения куки-файла включают в себя, например, перехват сетевого трафика, межсайтовый скриптинг (также известный как атака типа XSS) и т.п.[85] The method for stealing a cookie by the second electronic device 132 is outside the scope of the present technology and therefore is not discussed in detail. Suffice it to say that known cookie theft methods include, for example, network traffic interception, cross-site scripting (also known as XSS type attack), and the like.

[86] В настоящем примере можно предположить, что второе электронное устройство 132 похитило куки-файл 126, хранящийся в первом электронном устройстве 102. Соответственно, второе электронное устройство 132 содержит куки-файл с идентификатором 202 пользователя и третьей отметкой 212 времени.[86] In the present example, it can be assumed that the second electronic device 132 has stolen the cookie 126 stored in the first electronic device 102. Accordingly, the second electronic device 132 contains a cookie with a user ID 202 and a third timestamp 212.

[87] Несмотря на то, что система 100 описана со ссылкой на различные элементы аппаратных средств (такие как база 130 данных, сервер 118, первое электронное устройство 102 и второе электронное устройство 132), изображенные по отдельности, должно быть понятно, что это сделано для лучшего понимания. Предполагается, что различные функции, выполняемые этими элементами, могут выполняться одним элементом или могут распределяться между различными элементами.[87] Although system 100 has been described with reference to various hardware elements (such as database 130, server 118, first electronic device 102, and second electronic device 132) shown separately, it should be understood that this is done for better understanding. It is contemplated that the various functions performed by these elements may be performed by a single element or may be distributed among different elements.

Приложение 128 аутентификацииApplication 128 Authentication

[88] Очевидно, что в результате «копирования» или «похищения» куки-файла 126 вторым электронным устройством 132 из первого электронного устройства 102 система 100 содержит два электронных устройства, содержащих одинаковые куки-файлы 126.[88] Obviously, as a result of "copying" or "stealing" the cookie 126 by the second electronic device 132 from the first electronic device 102, the system 100 contains two electronic devices containing the same cookies 126.

[89] Иными словами, с точки зрения сервера 118 первое электронное устройство 102 и второе электронное устройство 132 соответствуют одному электронному устройству (поскольку они содержат один и тот же идентификатор 202 пользователя).[89] In other words, from the perspective of the server 118, the first electronic device 102 and the second electronic device 132 correspond to the same electronic device (because they contain the same user ID 202).

[90] Разумеется, что это может вызывать проблемы, поскольку второе электронное устройство 132 способно имитировать первое электронное устройство 102 при обращении к веб-ресурсу 124, чтобы участвовать в рассылке нежелательных сообщений или даже в незаконных действиях на веб-ресурсе 124.[90] Of course, this can cause problems, since the second electronic device 132 is able to imitate the first electronic device 102 when accessing the web resource 124 in order to engage in spam or even illegal activities on the web resource 124.

[91] На фиг. 3 представлена схема процесса обнаружения мошеннического доступа к веб-ресурсу 124. Процесс определения мошеннического доступа выполняется приложением 128 аутентификации (см. фиг. 1), реализованным согласно не имеющему ограничительного характера варианту осуществления настоящей технологии. Приложение 128 аутентификации выполняет процедуру 302 приема, процедуру 304 определения и процедуру 306 вывода (или иным способом осуществляет доступ к ним).[91] FIG. 3 is a diagram of a web resource access fraud detection process 124. The fraudulent access detection process is performed by an authentication application 128 (see FIG. 1) implemented in accordance with a non-restrictive embodiment of the present technology. The authentication application 128 performs (or otherwise accesses) the receive procedure 302, the determine procedure 304, and the output procedure 306.

[92] В контексте настоящего описания термин «процедура» подразумевает подмножество компьютерных программных команд приложения 128 аутентификации, исполняемых процессором 122 сервера (процедура 302 приема, процедура 304 определения и процедура 306 вывода). Должно быть однозначно понятно, что процедура 302 приема, процедура 304 определения и процедура 306 вывода показаны по отдельности для удобства объяснения процессов, выполняемых приложением 128 аутентификации. Предполагается, что некоторые или все процедуры из числа процедуры 302 приема, процедуры 304 определения и процедуры 306 вывода могут быть реализованы в виде одной или нескольких комбинированных процедур.[92] As used herein, the term "procedure" refers to a subset of the authentication application 128 computer program instructions executed by the server processor 122 (accept procedure 302, determine procedure 304, and output procedure 306). It should be clearly understood that the receive procedure 302, determine procedure 304, and output procedure 306 are shown separately for convenience in explaining the processes performed by the authentication application 128. It is contemplated that some or all of the procedures among the receive procedure 302, determine procedure 304, and output procedure 306 may be implemented as one or more combined procedures.

[93] Для лучшего понимания настоящей технологии ниже описаны функции и обрабатываемые или сохраняемые данные и/или информация процедуры 302 приема, процедуры 304 определения и процедуры 306 вывода.[93] For a better understanding of the present technology, the functions and processed or stored data and/or information of the receive procedure 302, determine procedure 304, and output procedure 306 are described below.

Процедура 302 приемаReceive procedure 302

[94] Процедура 302 приема способна получать пакет 308 данных от второго электронного устройства 132. Пакет 308 данных содержит куки-файл 126, хранящийся во втором электронном устройстве 132. Передача пакета 308 данных процедуре 302 приема, на которую не накладывается каких-либо ограничений, может, например, выполняться в ответ на запрос второго электронного устройства 132 на доступ к веб-ресурсу 124.[94] The receiving procedure 302 is capable of receiving a data packet 308 from the second electronic device 132. The data packet 308 contains a cookie 126 stored in the second electronic device 132. The transmission of the data packet 308 to the receiving procedure 302, which is not subject to any restrictions, may, for example, be performed in response to a request from the second electronic device 132 to access the web resource 124.

[95] Если куки-файл 126 зашифрован, процедура 302 приема способна дешифровать куки-файл 126 с использованием средств, описанных выше, для определения идентификатора 202 пользователя и третьей отметки 212 времени.[95] If the cookie 126 is encrypted, the receiving procedure 302 is able to decrypt the cookie 126 using the means described above to determine the user ID 202 and the third timestamp 212.

[96] Далее процедура 302 приема способна отправлять пакет 314 данных процедуре 304 определения. Пакет 314 данных содержит идентификатор 202 пользователя и третью отметку 212 времени.[96] Next, the receive procedure 302 is able to send the data packet 314 to the determine procedure 304 . Packet 314 data contains the identifier 202 of the user and the third mark 212 times.

Процедура 304 определенияProcedure 304 determine

[97] В ответ на получение пакета 314 данных процедура 304 определения способна выполнять следующие функции.[97] In response to receiving the data packet 314, the determination routine 304 is capable of performing the following functions.

[98] Сначала процедура 304 определения способна обращаться к базе 130 данных и определять, является ли третья отметка 212 времени последней отметкой времени, связанной с идентификатором 202 пользователя.[98] First, the determination procedure 304 is able to access the database 130 and determine whether the third timestamp 212 is the last timestamp associated with the user ID 202.

[99] Иными словами, с учетом того, что куки-файл 126, отправленный вторым электронным устройством 132, связан с третьей отметкой 212 времени «25 июля 2019 г. 10:53», процедура 304 определения способна обратиться к базе 130 данных и определить, связана ли с идентификатором 202 пользователя какая-либо следующая (новая) отметка времени.[99] In other words, given that the cookie 126 sent by the second electronic device 132 is associated with the third time stamp 212 "July 25, 2019 10:53", the determination procedure 304 is able to access the database 130 and determine whether there is any next (new) timestamp associated with the user ID 202 .

[100] На фиг. 4 представлена схема определения наличия связи идентификатора 202 пользователя с последней отметкой времени.[100] FIG. 4 is a diagram for determining if the user ID 202 is associated with the latest timestamp.

[101] В настоящем примере список 206 указывает на то, что последняя отметка времени, связанная с идентификатором 202 пользователя, представляет собой не третью отметку 212 времени, а четвертую отметку 214 времени.[101] In the present example, the list 206 indicates that the last timestamp associated with the user ID 202 is not the third timestamp 212, but the fourth timestamp 214.

[102] Иными словами, первое электронное устройство 102 обратилось к веб-ресурсу 30 июля 2019 г. в 10:13, когда новая отметка времени была сопоставлена с идентификатором 202 пользователя.[102] In other words, the first electronic device 102 accessed the web resource on July 30, 2019 at 10:13 am when the new timestamp was associated with the user ID 202.

[103] Если определено, что третья отметка 212 времени не является последней отметкой времени, связанной с идентификатором 202 пользователя, процедура 304 способна определять, что второе электронное устройство 132 мошенническим путем получило куки-файл 126.[103] If it is determined that the third timestamp 212 is not the last timestamp associated with the user ID 202, the procedure 304 is able to determine that the second electronic device 132 has fraudulently obtained the cookie 126.

[104] Процедура 304 определения дополнительно способна отправлять пакет 316 данных процедуре 306 вывода (см. фиг. 3). Пакет 316 данных содержит указание на то, что запрос второго электронного устройства 132 на доступ к веб-ресурсу 124 соответствует мошенническому доступу.[104] The determination procedure 304 is further capable of sending the data packet 316 to the output procedure 306 (see FIG. 3). Packet 316 data contains an indication that the request of the second electronic device 132 to access the web resource 124 corresponds to a fraudulent access.

Процедура 306 выводаOutput procedure 306

[105] В ответ на получение пакета 316 данных процедура 306 вывода способна выполнять следующие функции.[105] In response to receiving the data packet 316, the output procedure 306 is capable of performing the following functions.

[106] Как описано выше, было определено, что запрос второго электронного устройства 132 на доступ к веб-ресурсу 124 соответствует мошенническому доступу. В этой связи процедура 306 вывода способна выполнять в отношении этого запроса ограничивающее действие (как описано выше).[106] As described above, it was determined that the request of the second electronic device 132 to access the web resource 124 corresponds to fraudulent access. In this regard, the output procedure 306 is able to perform a restrictive action on this request (as described above).

[107] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии наряду с выполнением ограничивающего действия процедура 306 вывода дополнительно способна формировать и отправлять второму электронному устройству 132 второй куки-файл 318.[107] In some non-limiting embodiments of the present technology, in addition to performing a restrictive action, the output procedure 306 is further capable of generating and sending a second cookie 318 to the second electronic device 132.

[108] Например, второй куки-файл 318 содержит идентификатор пользователя, который отличается от идентификатора 202 пользователя (см. фиг. 4) и относится ко второму электронному устройству 132. Иными словами, второй куки-файл 318 заменяет куки-файл 126 во втором электронном устройстве 132.[108] For example, the second cookie 318 contains a user ID that is different from the user ID 202 (see FIG. 4) and refers to the second electronic device 132. In other words, the second cookie 318 replaces the cookie 126 in the second electronic device 132.

[109] В некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии предполагается, что формируется не только второй куки-файл 318 для второго электронного устройства 132, но процедура 306 вывода дополнительно способна формировать и отправлять третий куки-файл (не показан) первому электронному устройству 102 в ответ на получение нового запроса на доступ к веб-ресурсу 124.[109] In some non-limiting embodiments of the present technology, it is assumed that not only is a second cookie 318 generated for the second electronic device 132, but the output procedure 306 is additionally capable of generating and sending a third cookie (not shown) to the first electronic device. 102 in response to receiving a new request to access the web resource 124.

[110] Такие варианты осуществления основаны на предположении, что несмотря на то, что похитители куки-файлов обычно хранят похищенный куки-файл в течение некоторого периода времени до его использования (и, следовательно, наиболее вероятно, что первое электронное устройство 102 обратится к веб-ресурсу 124 до поступления запроса от второго электронного устройства 132), это может не всегда быть так. Иными словами, второе электронное устройство 132 может скопировать куки-файл 126 и сразу обратиться к веб-ресурсу 124. Соответственно, когда первое электронное устройство 102 впоследствии запрашивает доступ к веб-ресурсу 124, третий куки-файл (не показан) формируется и отправляется первому электронному устройству 102 для хранения, заменяя, таким образом, куки-файл 126.[110] Such embodiments are based on the assumption that while cookie thieves typically store a stolen cookie for some period of time before it is used (and therefore the first electronic device 102 is most likely to access the web). resource 124 prior to the request from the second electronic device 132), this may not always be the case. In other words, the second electronic device 132 may copy the cookie 126 and immediately access the web resource 124. Accordingly, when the first electronic device 102 subsequently requests access to the web resource 124, a third cookie (not shown) is generated and sent to the first electronic storage device 102, thus replacing the cookie 126.

[111] Иными словами, в некоторых не имеющих ограничительного характера вариантах осуществления настоящей технологии, если определено, что куки-файл 126 использовался двумя различными электронными устройствами, сервер 118 способен формировать и назначать различные куки-файлы каждому из двух различных электронных устройств (в результате чего куки-файл 126 становится устаревшим).[111] In other words, in some non-limiting embodiments of the present technology, if it is determined that cookie 126 was used by two different electronic devices, server 118 is able to generate and assign different cookies to each of the two different electronic devices (resulting in causing cookie 126 to become obsolete).

[112] В различных не имеющих ограничительного характера вариантах осуществления настоящей технологии возможно определение мошеннического доступа к веб-ресурсу.[112] In various non-limiting embodiments of the present technology, it is possible to detect fraudulent access to a web resource.

[113] Описанные выше архитектура и примеры позволяют выполнять компьютерный способ определения мошеннического доступа к веб-ресурсу. На фиг. 5 представлена блок-схема способа 500, выполняемого согласно вариантам осуществления настоящей технологии, не имеющим ограничительного характера. Способ 500 может выполняться сервером 118.[113] The architecture and examples described above allow a computer-based method to detect fraudulent access to a web resource. In FIG. 5 is a flow diagram of a method 500 performed in accordance with non-limiting embodiments of the present technology. Method 500 may be performed by server 118.

[114] Шаг 502: получение сервером от первого электронного устройства первого запроса доступа к веб-ресурсу, содержащего первый куки-файл.[114] Step 502: The server receives from the first electronic device the first access request to the web resource containing the first cookie.

[115] Способ 500 начинается с шага 502, на котором первое электронное устройство 102 отправляет серверу 118 запрос доступа к веб-ресурсу 124. Запрос содержит куки-файл 126, содержащий по меньшей мере идентификатор 202 пользователя и вторую отметку 210 времени.[115] The method 500 begins at step 502, in which the first electronic device 102 sends a request to the server 118 to access the web resource 124. The request contains a cookie 126 containing at least a user ID 202 and a second timestamp 210.

[116] Шаг 504: преобразование сервером первого куки-файла во второй куки-файл.[116] Step 504: The server converts the first cookie into a second cookie.

[117] На шаге 504 сервер 118 обновляет куки-файл 126, который теперь содержит третью отметку 212 времени и идентификатор 202 пользователя.[117] At step 504, the server 118 updates the cookie 126, which now contains the third timestamp 212 and the user ID 202.

[118] Шаг 506: отправка сервером второго куки-файла первому электронному устройству для хранения.[118] Step 506: The server sends the second cookie to the first electronic storage device.

[119] На шаге 506 сервер 118 отправляет куки-файл 126, содержащий идентификатор 202 пользователя и третью отметку 212 времени, первому электронному устройству для хранения.[119] At step 506, the server 118 sends a cookie 126 containing the user ID 202 and the third timestamp 212 to the first electronic storage device.

[120] Шаг 508: получение сервером от второго электронного устройства второго запроса доступа к веб-ресурсу, содержащего третий куки-файл.[120] Step 508: The server receives from the second electronic device a second access request to a web resource containing a third cookie.

[121] На шаге 508 второе электронное устройство 132 отправляет пакет 308 данных процедуре 302 приема. Пакет 308 данных содержит куки-файл 126. Куки-файл 126, принятый от второго электронного устройства 132, содержит идентификатор 202 пользователя и третью отметку 212 времени.[121] At step 508, the second electronic device 132 sends the data packet 308 to the receive procedure 302 . The data packet 308 contains a cookie 126. The cookie 126 received from the second electronic device 132 contains a user ID 202 and a third timestamp 212.

[122] Шаг 510: определение сервером второго запроса как мошеннического на основе анализа третьего куки-файла и первого куки-файла.[122] Step 510: The server determines the second request as fraudulent based on the analysis of the third cookie and the first cookie.

[123] На шаге 510 процедура 304 определения способна обратиться к базе 130 данных, чтобы определить, является ли третья отметка 212 времени последней отметкой времени, связанной с идентификатором 202 пользователя.[123] At step 510, the determination routine 304 is able to query the database 130 to determine if the third timestamp 212 is the latest timestamp associated with the user ID 202.

[124] Если третья отметка 212 времени не является последней отметкой времени, связанной с идентификатором 202 пользователя, процедура 304 способна определить, что запрос от второго электронного устройства 132 представляет собой мошеннический запрос.[124] If the third timestamp 212 is not the last timestamp associated with the user ID 202, procedure 304 is able to determine that the request from the second electronic device 132 is a fraudulent request.

[125] Для специалиста в данной области могут быть очевидными возможные изменения и усовершенствования описанных выше вариантов осуществления настоящей технологии. Предшествующее описание приведено в качестве примера, а не для ограничения объема изобретения. Объем охраны настоящей технологии определяется исключительно объемом приложенной формулы изобретения.[125] For a person skilled in the art, possible changes and improvements in the above-described embodiments of the present technology may be obvious. The foregoing description is given by way of example and not by way of limitation on the scope of the invention. The scope of protection of this technology is determined solely by the scope of the appended claims.

[126] Несмотря на то, что описанные выше варианты реализации приведены со ссылкой на конкретные шаги, выполняемые в определенном порядке, должно быть понятно, что эти шаги могут быть объединены, разделены или их порядок может быть изменен без выхода за границы настоящей технологии. Соответственно, порядок и группировка шагов не носят ограничительного характера для настоящей технологии.[126] Although the embodiments described above are given with reference to specific steps performed in a certain order, it should be understood that these steps can be combined, separated, or their order can be changed without departing from the boundaries of the present technology. Accordingly, the order and grouping of steps is not limiting to the present technology.

Claims (59)

1. Способ обнаружения мошеннического доступа к веб-ресурсу, размещенному на сервере, выполняемый сервером и включающий в себя:1. A method for detecting fraudulent access to a web resource hosted on a server, performed by the server and including: получение сервером от первого электронного устройства первого запроса доступа к веб-ресурсу, содержащего первый куки-файл;receiving by the server from the first electronic device the first request for access to the web resource containing the first cookie; преобразование сервером первого куки-файла во второй куки-файл; the server converting the first cookie into a second cookie; отправку сервером второго куки-файла первому электронному устройству для хранения; sending, by the server, a second cookie to the first electronic storage device; получение сервером от второго электронного устройства второго запроса доступа к веб-ресурсу, содержащего третий куки-файл; и receiving by the server from the second electronic device a second request for access to a web resource containing a third cookie; and определение сервером второго запроса как мошеннического запроса на основе анализа третьего куки-файла и первого куки-файла. determination by the server of the second request as a fraudulent request based on the analysis of the third cookie and the first cookie. 2. Способ по п. 1, отличающийся тем, что2. The method according to p. 1, characterized in that первый куки-файл представляет собой первый зашифрованный куки-файл; the first cookie is the first encrypted cookie; третий куки-файл представляет собой третий зашифрованный куки-файл; и the third cookie is the third encrypted cookie; and преобразование первого куки-файла во второй куки-файл включает в себя перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл. converting the first cookie to the second cookie includes re-encrypting the first encrypted cookie to the second encrypted cookie. 3. Способ по п. 2, отличающийся тем, что3. The method according to p. 2, characterized in that первый зашифрованный куки-файл содержит первый идентификатор пользовательского устройства, связанный с первым электронным устройством, и первую отметку времени, указывающую на время создания первого зашифрованного куки-файла; the first encrypted cookie contains a first user device identifier associated with the first electronic device and a first timestamp indicating the time the first encrypted cookie was created; второй зашифрованный куки-файл содержит первый идентификатор пользовательского устройства и вторую отметку времени, указывающую на время создания второго зашифрованного куки-файла; и the second encrypted cookie contains a first user device identifier and a second timestamp indicating the time the second encrypted cookie was created; and третий зашифрованный куки-файл содержит по меньшей мере второй идентификатор пользовательского устройства. the third encrypted cookie contains at least the second identifier of the user device. 4. Способ по п. 3, отличающийся тем, что сервер соединен с базой данных, а способ дополнительно включает в себя сохранение сервером в базе данных указания на перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл.4. The method according to claim 3, characterized in that the server is connected to the database, and the method further includes storing by the server in the database an indication to re-encrypt the first encrypted cookie into the second encrypted cookie. 5. Способ по п. 4, отличающийся тем, что определение второго запроса как мошеннического запроса включает в себя обращение к базе данных для определения совпадения второго идентификатора пользовательского устройства и первого идентификатора пользовательского устройства.5. The method of claim 4, wherein determining the second request as a fraudulent request includes querying a database to determine if the second user device ID matches the first user device ID. 6. Способ по п. 5, отличающийся тем, что первое электронное устройство отличается от второго электронного устройства.6. Method according to claim 5, characterized in that the first electronic device is different from the second electronic device. 7. Способ по п. 5, отличающийся тем, что первое электронное устройство совпадает со вторым электронным устройством.7. Method according to claim 5, characterized in that the first electronic device matches the second electronic device. 8. Способ по п. 2, отличающийся тем, что он дополнительно включает в себя8. The method according to p. 2, characterized in that it further includes определение времени создания первого зашифрованного куки-файла после получения первого запроса; и determining when the first encrypted cookie is created after the first request is received; and перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл, если время создания указывает на то, что срок существования первого зашифрованного куки-файла превышает заранее заданный порог. re-encrypting the first encrypted cookie into a second encrypted cookie if the creation time indicates that the lifetime of the first encrypted cookie exceeds a predetermined threshold. 9. Способ по п. 2, отличающийся тем, что сервер способен хранить первый ключ шифрования и второй ключ шифрования, а способ дополнительно включает в себя9. The method of claim. 2, characterized in that the server is able to store the first encryption key and the second encryption key, and the method further includes получение третьего запроса от первого электронного устройства до получения первого запроса; receiving a third request from the first electronic device before receiving the first request; формирование первого зашифрованного куки-файла с использованием первого ключа шифрования; и generating a first encrypted cookie using the first encryption key; and отправку первого зашифрованного куки-файла первому электронному устройству для хранения, sending the first encrypted cookie to the first electronic storage device, при этом перешифрование сервером включает в себяwhile reencryption by the server includes дешифрование первого зашифрованного куки-файла с использованием первого ключа шифрования; и decrypting the first encrypted cookie using the first encryption key; and перешифрование дешифрованного первого зашифрованного куки-файла с использованием второго ключа шифрования, при этом второй зашифрованный куки-файл отличается от первого зашифрованного куки-файла. re-encrypting the decrypted first encrypted cookie using the second encryption key, wherein the second encrypted cookie is different from the first encrypted cookie. 10. Способ по п. 2, отличающийся тем, что он дополнительно включает в себя выполнение ограничивающего действия в отношении второго запроса после определения второго запроса как мошеннического запроса.10. The method of claim 2, further comprising performing a restrictive action on the second request after the second request is determined to be a fraudulent request. 11. Способ по п. 10, отличающийся тем, что ограничивающее действие представляет собой отклонение второго запроса или предоставление ограниченного доступа к веб-ресурсу.11. The method according to claim 10, characterized in that the restrictive action is a rejection of the second request or provision of limited access to the web resource. 12. Система для обнаружения мошеннического доступа к веб-ресурсу, размещенному на сервере, содержащем процессор, выполненный с возможностью12. A system for detecting fraudulent access to a web resource hosted on a server containing a processor configured to получения от первого электронного устройства первого запроса доступа к веб-ресурсу, содержащего первый куки-файл; receiving from the first electronic device the first access request to the web resource containing the first cookie; преобразования первого куки-файла во второй куки-файл; converting the first cookie to a second cookie; отправки второго куки-файла первому электронному устройству для хранения; sending a second cookie to the first electronic storage device; получения от второго электронного устройства второго запроса доступа к веб-ресурсу, содержащего третий куки-файл; и receiving from the second electronic device a second request for access to a web resource containing a third cookie; and определения второго запроса как мошеннического запроса на основе анализа третьего куки-файла и первого куки-файла. determining the second request as a fraudulent request based on the analysis of the third cookie and the first cookie. 13. Система по п. 12, отличающаяся тем, что13. The system according to claim 12, characterized in that первый куки-файл представляет собой первый зашифрованный куки-файл; the first cookie is the first encrypted cookie; третий куки-файл представляет собой третий зашифрованный куки-файл; и the third cookie is the third encrypted cookie; and для преобразования первого куки-файла во второй куки-файл процессор выполнен с возможностью перешифрования первого зашифрованного куки-файла во второй зашифрованный куки-файл. to convert the first cookie into a second cookie, the processor is configured to re-encrypt the first encrypted cookie into a second encrypted cookie. 14. Система по п. 13, отличающаяся тем, что14. The system according to claim 13, characterized in that первый зашифрованный куки-файл содержит первый идентификатор пользовательского устройства, связанный с первым электронным устройством, и первую отметку времени, указывающую на время создания первого зашифрованного куки-файла; the first encrypted cookie contains a first user device identifier associated with the first electronic device and a first timestamp indicating the time the first encrypted cookie was created; второй зашифрованный куки-файл содержит первый идентификатор пользовательского устройства и вторую отметку времени, указывающую на время создания второго зашифрованного куки-файла; и the second encrypted cookie contains a first user device identifier and a second timestamp indicating the time the second encrypted cookie was created; and третий зашифрованный куки-файл содержит по меньшей мере второй идентификатор пользовательского устройства. the third encrypted cookie contains at least the second identifier of the user device. 15. Система по п. 14, отличающаяся тем, что сервер соединен с базой данных, а процессор дополнительно выполнен с возможностью хранения в базе данных указания на перешифрование первого зашифрованного куки-файла во второй зашифрованный куки-файл.15. The system according to claim 14, characterized in that the server is connected to the database, and the processor is additionally configured to store in the database an indication to re-encrypt the first encrypted cookie into the second encrypted cookie. 16. Система по п. 15, отличающаяся тем, что для определения второго запроса как мошеннического запроса процессор выполнен с возможностью обращения к базе данных для определения совпадения второго идентификатора пользовательского устройства и первого идентификатора пользовательского устройства.16. The system of claim. 15, wherein in order to determine the second request as a fraudulent request, the processor is configured to access a database to determine a match between the second user device identifier and the first user device identifier. 17. Система по п. 16, отличающаяся тем, что первое электронное устройство отличается от второго электронного устройства.17. The system of claim. 16, characterized in that the first electronic device is different from the second electronic device. 18. Система по п. 16, отличающаяся тем, что первое электронное устройство совпадает со вторым электронным устройством.18. The system according to claim 16, characterized in that the first electronic device is the same as the second electronic device. 19. Система по п. 13, отличающаяся тем, что процессор дополнительно выполнен с возможностью19. The system according to claim 13, characterized in that the processor is additionally configured to определения времени создания первого зашифрованного куки-файла после получения первого запроса; и determining when the first encrypted cookie is created after the first request is received; and перешифрования первого зашифрованного куки-файла во второй зашифрованный куки-файл, если время создания указывает на то, что срок существования первого зашифрованного куки-файла превышает заранее заданный порог. re-encrypting the first encrypted cookie into a second encrypted cookie if the creation time indicates that the lifetime of the first encrypted cookie exceeds a predetermined threshold. 20. Система по п. 13, отличающаяся тем, что процессор дополнительно выполнен с возможностью20. The system according to claim 13, characterized in that the processor is additionally configured to хранения первого ключа шифрования и второго ключа шифрования; storing the first encryption key and the second encryption key; получения третьего запроса от первого электронного устройства до получения первого запроса; receiving a third request from the first electronic device before receiving the first request; формирования первого зашифрованного куки-файла с использованием первого ключа шифрования; generating a first encrypted cookie using the first encryption key; отправки первого зашифрованного куки-файла первому электронному устройству для хранения, sending the first encrypted cookie to the first electronic storage device, при этом для перешифрования сервером процессор выполнен с возможностьюat the same time, for re-encryption by the server, the processor is configured to дешифрования первого зашифрованного куки-файла с использованием первого ключа шифрования; и decrypting the first encrypted cookie using the first encryption key; and перешифрования дешифрованного первого зашифрованного куки-файла с использованием второго ключа шифрования, при этом второй зашифрованный куки-файл отличается от первого зашифрованного куки-файла. re-encrypting the decrypted first encrypted cookie using the second encryption key, wherein the second encrypted cookie is different from the first encrypted cookie.
RU2019128268A 2019-09-09 2019-09-09 Method and system for detection of fraudulent access to web-resource RU2781477C2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
RU2019128268A RU2781477C2 (en) 2019-09-09 Method and system for detection of fraudulent access to web-resource
US16/869,878 US11128645B2 (en) 2019-09-09 2020-05-08 Method and system for detecting fraudulent access to web resource

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
RU2019128268A RU2781477C2 (en) 2019-09-09 Method and system for detection of fraudulent access to web-resource

Publications (3)

Publication Number Publication Date
RU2019128268A RU2019128268A (en) 2021-03-09
RU2019128268A3 RU2019128268A3 (en) 2021-07-05
RU2781477C2 true RU2781477C2 (en) 2022-10-12

Family

ID=

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050132222A1 (en) * 2003-12-12 2005-06-16 Sladjana Petrovic Method and system for secure session management in a web farm
US20060185021A1 (en) * 2002-03-15 2006-08-17 Microsoft Corporation Method and system of integrating third party authentication into internet browser code
US7779103B1 (en) * 2006-12-12 2010-08-17 Google Inc. Dual cookie security system
RU2446459C1 (en) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" System and method for checking web resources for presence of malicious components

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060185021A1 (en) * 2002-03-15 2006-08-17 Microsoft Corporation Method and system of integrating third party authentication into internet browser code
US20050132222A1 (en) * 2003-12-12 2005-06-16 Sladjana Petrovic Method and system for secure session management in a web farm
US7779103B1 (en) * 2006-12-12 2010-08-17 Google Inc. Dual cookie security system
RU2446459C1 (en) * 2010-07-23 2012-03-27 Закрытое акционерное общество "Лаборатория Касперского" System and method for checking web resources for presence of malicious components

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
US 8818906 B1 (JPMORGAN CHASE BANK, N.A.). *

Similar Documents

Publication Publication Date Title
US11102232B2 (en) Blockchain web browser interface
US10021108B2 (en) Anomaly detection for access control events
CN107211016B (en) Session security partitioning and application profiler
US8973123B2 (en) Multifactor authentication
US20070101440A1 (en) Auditing correlated events using a secure web single sign-on login
EP2981924B1 (en) Resilient and restorable dynamic device identification
US10225249B2 (en) Preventing unauthorized access to an application server
KR102595830B1 (en) Location-based access to controlled access resources
EP3253026B1 (en) Cdn-based access control method and relevant device
CN111478910A (en) User identity authentication method and device, electronic equipment and storage medium
US11184389B2 (en) Security mechanisms for preventing retry or replay attacks
US20150067772A1 (en) Apparatus, method and computer-readable storage medium for providing notification of login from new device
US8813200B2 (en) Online password management
US11356433B2 (en) System and method for detecting unauthorized activity at an electronic device
US8892647B1 (en) System and method for associating a cookie with a device identifier
JP7401288B2 (en) System and method for changing account record passwords under threat of unauthorized access to user data
CN113572793B (en) Access request capturing method and device, computer equipment and storage medium
GB2535579A (en) Preventing unauthorized access to an application server
US11356478B2 (en) Phishing protection using cloning detection
RU2781477C2 (en) Method and system for detection of fraudulent access to web-resource
US11128645B2 (en) Method and system for detecting fraudulent access to web resource
Raponi et al. A spark is enough in a straw world: A study of websites password management in the wild
US11985165B2 (en) Detecting web resources spoofing through stylistic fingerprints
Bhandari et al. A Preliminary Study On Emerging Cloud Computing Security Challenges
Dehigaspege et al. Secure Authentication: Defending Social Networks from Cyber Attacks Using Voice Recognition