WO2009050407A2 - Procede de communication sur un reseau au moyen d'un serveur mettant en oeuvre un test - Google Patents

Procede de communication sur un reseau au moyen d'un serveur mettant en oeuvre un test Download PDF

Info

Publication number
WO2009050407A2
WO2009050407A2 PCT/FR2008/051758 FR2008051758W WO2009050407A2 WO 2009050407 A2 WO2009050407 A2 WO 2009050407A2 FR 2008051758 W FR2008051758 W FR 2008051758W WO 2009050407 A2 WO2009050407 A2 WO 2009050407A2
Authority
WO
WIPO (PCT)
Prior art keywords
server
page
question
network
proposal
Prior art date
Application number
PCT/FR2008/051758
Other languages
English (en)
Other versions
WO2009050407A3 (fr
Inventor
Gérald Huet
Eric Malville
Sébastien Brault
Benoît BAILLEUX
Original Assignee
France Telecom
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom filed Critical France Telecom
Publication of WO2009050407A2 publication Critical patent/WO2009050407A2/fr
Publication of WO2009050407A3 publication Critical patent/WO2009050407A3/fr

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation

Definitions

  • a method of communication over a network using a server implementing a test is a method of communication over a network using a server implementing a test.
  • the invention relates to communications over a network such as the Internet and in particular to access to a communication server via the network.
  • captcha is the acronym for Completely Automated Public Turing Test to Tell Computers and Humans Apart, which means in English "Fully Automatic Public Turing Test to Differentiate Humans from Computers”.
  • This test is used on the Internet to limit access to certain pages or documents. It is found especially at the end of forms. The user must fill in fields and answer the test before returning the form to the server. If in particular the response to the test is as expected by the server, the latter allows the user to access certain services offered by the server. This test is used to protect the ISP and its server against automated and intensive submissions that can be made by malicious robots.
  • captcha implements the image analysis capabilities or sound of the human being.
  • a usual captcha thus requires the user to enter digits and / or letters on his terminal that are visible on the screen on a distorted image.
  • Some websites prefer to display an image that contains a mathematical question.
  • Captchas can fight against different types of threats. Thus, they can fight against spam by avoiding the registration of robots to free webmails (whose accounts could be used later for sending unsolicited emails).
  • webmail which can be translated by "webmail”, a web interface making it possible to send, consult and manipulate e-mails directly on the web from a browser.
  • Captchas can also be used to combat spam, when submitting messages in discussion forums and blogs, which could allow spamdexing.
  • This term, which can be translated as "abusive referencing” refers to a set of techniques consisting in deceiving the search engines on the quality of a page or a site in order to obtain for a given keyword a good ranking in the results provided by the search engines.
  • Captchas also help to prevent automated extraction of databases by robots. They are a tool to fight against brute force attacks, this term designating a method used in cryptanalysis to find a password or a key. The method consists of to test one by one all the possible combinations and thus constitutes an exhaustive search method. Finally, captchas make it possible to combat the participation of robots in polls whose results could thus be distorted by automated votes. Captchas are commonly used by so-called state servers, that is, session servers. In such a case, the server that receives a response from a terminal of a user knows the question he asked because he kept it in memory.
  • the proposal sent by the user is compared by the server with the contents of a verification page at the same time as the other possible input fields (for example the fields of a form). Since the verification page knows the initial question or challenge that was sent by the server at the beginning of the session, the server can determine if the response proposal sent by the user is correct or not.
  • captchas can not be used on stateless servers, that is, without a session. This is the case for example in the case of the standardized interface used by HTTP type servers and designated by the acronym CGI which stands for Common Gateway Interface, namely "Common Gateway Interface".
  • CGI Common Gateway Interface
  • a disadvantage of stateless servers is that, if such a server receives a response proposal from a user, it does not know what question it was to answer. He is therefore unable to examine the validity of the response received.
  • stateless servers unlike stateful servers, can not remember the issue they sent to the network.
  • a communication method on a network comprising a step of sending, by a server, a computer page comprising a question and an element considered by the server as a correct answer to the question.
  • the invention is applicable to both stateful and stateless servers. Nevertheless, it is particularly advantageous in the case of stateless servers.
  • the server when the user returns the page to the server with its proposal for answering the question, the server also receives in this page the element that answers the question correctly. It can therefore compare the user's proposal with the element and determine if this proposal is a correct answer to the question, even if the server did not remember the question asked.
  • the element it will be preferable that the element not appear in the page displayed on a screen in a manner that is too legible or identifiable by the user.
  • the element is encrypted.
  • the method comprises a step, performed by the server, of encryption of the element, the page comprising the element in encrypted form.
  • the element is not understood in the clear on the page comprising the question and consulted by the user.
  • a robot To answer the question correctly, a robot must either have been informed of the correct answer by a human user or search for and decrypt the encrypted item, which requires a substantial amount of time and a significant amount of resources. of a CPU and slows down the attack that the robot is trying to execute.
  • the method comprises a step, performed by the server, of inserting in the page, preferably in the element, a time registration data item for determining a time elapsed since the insertion step.
  • the server when the server receives back the page with the user's proposal, he can determine the date of dispatch of this page to the user. If this date appears to be too old, the server may qualify the received proposal as suspicious and not treat it as a response from a human user.
  • This feature allows the server to recognize an intervention from a robot even if the robot has sent the server a response proposal that is correct.
  • the intervention of the robot is therefore recognized as such by the server because of its character too late compared to the age of the expedition of the question by the server.
  • this feature will not give more chances of success if the robot tries one or more times to resend the same page to the server. Indeed, the delay with which it sends the response to the server will only increase and will always prevent the robot from being assimilated to a user by the server. The number of attempts made by the robot is therefore perfectly indifferent to the failure of his attack.
  • the method according to the invention may also include the following steps executed by the server:
  • a communication server on a network which comprises means for sending a computer page comprising a question and an item considered by the server as a correct answer to the question.
  • the server is a stateless type server.
  • a computer program capable of controlling the execution of a method according to the invention, a recording medium comprising such a program and making available such a program with a view to download.
  • a computer page comprising a question, an element forming a correct answer to the question, and a field capable of receiving a proposal for an answer to the question.
  • FIG. 1 is a schematic view of a communication network in which a server according to the invention takes place
  • FIG. 2 is a schematic view of a computer page sent by the server of FIG. 1;
  • FIG. 3 is a flowchart of one embodiment of the method of the invention.
  • FIG. 1 illustrates a server 2 connected to a telecommunications network such as the Internet network 4.
  • the network could be a local or intranet network.
  • the server 2 comprises in this case a computer which connects through the network of client terminals such as the terminal 6 illustrated in Figure 1.
  • the server 2 is used in a conventional manner to store files, to transfer electronic mail and to hosting websites including web pages in computer language.
  • the server 2 comprises a microprocessor central unit and random access memories. It is the same for the terminal 6 which is further connected to a monitor 8.
  • the server 2 is a stateless server, that is to say a server without a session.
  • the server 2 comprises means 12 of a conventional type capable of producing and sending over the network 4 in the form of signals of the computer web pages such as Ia page 10 illustrated in Figure 2. It is also able to receive such pages to treat them. These pages are for example made in the standard HTML format. They may include one or more texts 14, one or more illustrations 16, one or more hypertext links, etc.
  • the page includes in this case several fields 1 1 that the user of the terminal 6 must complete by entering various information such as name, age, etc.
  • the server 2 is programmed to determine whether or not a human user intervenes on the terminal 6 as part of its communication with the server. In other words, it seeks to determine whether, on the contrary, the communications that the server 2 receives emanate from a robot or automaton capable of performing malicious actions.
  • the server 2 implements the method that will be described later in which intervenes a captcha.
  • the server 2 comprises in particular a computer program able to control the execution of the steps of this method.
  • This program can be recorded on a recording medium (such as a USB key, a DVD or a floppy disk) for example to be transferred to another machine. It can also be provided that this program is made available on a network such as the Internet for download, subject to certain conditions of access.
  • the method of the invention is in the present example implemented as follows.
  • the server 2 received from the terminal 6 a request to send it to the latter of the computer web page 10 which can be displayed on the monitor 8.
  • the server searches to determine if a human user intervenes on the terminal 6.
  • the server 2 has on page 10 a question 18 or test comprising for example a portion of text with a question mark and if necessary an illustration 20.
  • This question is for example asking the user to identify or identify what is shown in Figure 20. It may also include asking him to enter a sequence of characters and / or figures distorted in this illustration 20.
  • the page 10 includes a field 13 intended to receive from the user a proposed answer to the question 18. This field is distinct from the fields 1 1 if they exist.
  • the server 2 also has an element or content 23 formed for example by an alphanumeric string.
  • This plaintext content will, by hypothesis, be considered by the server as a correct answer to question 18.
  • illustration 20 represented in a deformed way the alphanumeric string "5fg5"
  • the content 23 in clear, considered as a valid response by the server 2, will be constituted by the alphanumeric string
  • the server 2 performs an encryption of the element 23 by means for example of a conventional encryption function.
  • the server 2 inserts in the encrypted content time registration data which will subsequently determine the date of completion of this encryption operation.
  • time registration data Such data, of a classic type in itself, is sometimes referred to as
  • time stamp The encrypted content 23 provided with this data is inserted by the server into the page
  • the server 2 sends the page 10 thus produced, in the form of a signal, through the network 4 to the terminal 6. 1 1.
  • the signal carries information capable of constituting on a screen the page 10.
  • the page sent therefore includes in particular the question 18, the encrypted content 23 and the field 13 to fill.
  • the terminal 6 receives the signal and displays on the screen of the monitor 8 page 10 transmitted by this signal.
  • the encrypted content 23 is intended not to appear on the screen or at least not in a form allowing a human being to identify this content as such. If a human user is present at the terminal 6, he acquires the question 18 and responds by entering a response proposal in the field 13 for this purpose on page 10. It also fills the fields 1 1 if necessary.
  • the terminal 6 If, on the other hand, the terminal 6 is an automaton capable of responding on its own, it inserts a response proposal in the field 13 and sends the page (or a part of this page or an analogous page) to the server in the form of a signal.
  • the computer page sent by the terminal 6 includes the encrypted content 23 as originally sent by the server and the field 13 comprising the response proposal.
  • the server 2 therefore receives the signal comprising this page. The server 2 extracts from this page (or more precisely from the signal) the response proposal as well as the encrypted content 23.
  • the server proceeds to decrypt the encrypted content 23.
  • the server 2 being in the present example a stateless server, the server, before receiving the page from the terminal 6, he has neither the question 18 that he asked nor the answer that must be considered valid. Decrypting the encrypted content 23 therefore allows it to determine what valid response is expected from the user.
  • the server proceeds to read the time registration data that it had inserted during the sending.
  • the server 2 determines the duration separating the date corresponding to the time registration data (date which is the date of the encryption) and the date of the decryption operation. It is observed here that the temporal registration data is not necessarily in the form of a date.
  • the server compares this duration with a predetermined value which it has in memory. This predetermined value will depend on the circumstances, the type of server, the type of web pages exchanged with the users and the type of services that the server aims to offer them. As examples, the reference duration may be 30 seconds, one hour or twenty-four hours. It will be assumed here that it is 30 seconds.
  • the server determines whether the duration is less than the predetermined value of 30 seconds. If the answer to this question is negative, the server proceeds to a step 34 during which the sending from the terminal 6 will be processed by the server as not emanating from a human user. In other words, this shipment is considered suspicious that is to say likely to have been sent by a robot. No follow-up will be given by the server. However, it is possible in this case to send an alert or error message.
  • the server proceeds to a next step 36 reading the response proposal in the field 13. It then proceeds to a step 38 aimed at to determine if the response proposal is identical to the decrypted content 23. If the response proposal is different from the content 23 in clear, again, the server proceeds to a step 40 in which it does not respond to the sending from the terminal 6 and considers this shipment suspect. However, here again it is possible to provide for the sending of an alert or error message. We can also consider sending a new test to the terminal for a new attempt (for example if we consider that it is possible that a human being intervened but responding incorrectly)
  • the server 2 considers that the proposal sent by the terminal 6 is correct since the proposal is identical to the content 23.
  • the terminal therefore considers that it is a human being and not a robot that has prepared this response. It thus gives free access to the user 6 to one or more services provided by the server 2.
  • the server 2 thus receives with the response proposal from the terminal 6 the content 23 considered as a correct response by the server. He may therefore, despite the fact that he ignores the question that has been asked, consider the validity of the proposal addressed by the terminal 6.
  • the fact that the content 23 is transmitted in encrypted form to terminal 6 before being sent back to the server can limit malicious attempts.
  • the presence in this content of the time registration data makes it possible to recognize, because of their late nature, response proposals addressed automatically by robots. The validity of the response is therefore verified on the one hand in the temporal dimension and on the other hand in the background.
  • the invention is adaptable to many types of tests or captchas. These can be visual tests, hearing tests, or even logic tests for example.
  • the invention is also applicable to servers with state, that is to say with session. Of course, we can bring to the invention many changes without departing from the scope thereof. For example, the following variants can be envisaged.
  • Page 10 may be a specific test page so it will only include question 18, item 23 and field 13.
  • the question 18 is also returned in the page by the terminal 6 to the server 2.
  • the time registration data is inserted by the server in the question 18 (broadcast in clear and displayed) and not in the element 23.
  • the registration data could in other cases be inserted at another location on page 10, ie in a separate place from question 18 and item 23. It can be expected that the server sends on page 10 element 23 not in encrypted form but hashed. By this is meant that the page includes an imprint of the element 23 obtained by means of a hashing function. In this case, the time registration data will be inserted by the server into another component of the page 10 than the hashed element 23. Moreover, the substantive comparison of the validity of the proposal sent by the terminal 6 will be done by proceeding to the hashing of this proposition and by comparing the imprint thus obtained with the imprint 23. Element 23 may include one or more signs other than numbers and letters. He can understand a sound or an image.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Le procédé de communication sur un réseau comprend une étape d'envoi, par un serveur (2), d'une page informatique (10) comprenant une question (18) et un contenu (23) considéré par le serveur comme une réponse correcte à la question.

Description

Procédé de communication sur un réseau au moyen d'un serveur mettant en œuvre un test.
L'invention concerne les communications sur un réseau tel qu'Internet et en particulier l'accès à un serveur de communication via le réseau.
Il est connu d'insérer dans une page web informatique un test de type captcha qui est une forme de test de Turing permettant de différencier un utilisateur humain d'un ordinateur. "Captcha" est l'acronyme anglais de Completely Automated Public Turing Test to Tell Computers and Humans Apart, qui signifie en français "Test de Turing public complètement automatique ayant pour but de différencier les humains des ordinateurs". Ce test est utilisé sur Internet pour limiter l'accès à certaines pages ou à certains documents. On le trouve en particulier à la fin de formulaires. L'utilisateur doit remplir des champs et répondre au test avant de renvoyer le formulaire au serveur. Si notamment la réponse au test est telle qu'attendue par le serveur, ce dernier autorise l'utilisateur à accéder à certains services offerts par le serveur. Ce test est utilisé pour prémunir le fournisseur d'accès et son serveur à l'égard des soumissions automatisées et intensives susceptibles d'être réalisées par des robots malveillants. A cette fin, la réponse au captcha met en œuvre les capacités d'analyse d'image ou de son de l'être humain. Un captcha usuel requiert ainsi que l'utilisateur entre sur son terminal des chiffres et/ou des lettres qui sont visibles à l'écran sur une image distordue. Certains sites web préfèrent afficher une image qui contient une question mathématique.
Les captchas permettent de lutter contre différents types de menaces. Ainsi, ils permettent de lutter contre les spams en évitant l'inscription des robots à des webmails gratuits (dont les comptes pourraient être utilisés par la suite pour l'envoi de courriels non sollicités). On désigne ici par webmail, que l'on peut traduire par « courrielleur web », une interface web rendant possible l'émission, la consultation et la manipulation de courriers électroniques directement sur le web depuis un navigateur. Les captchas permettent également de lutter contre les spams, lors de la soumission de messages dans des forums de discussion et des blogs, qui pourraient permettre de faire du spamdexing. Ce terme, que l'on peut traduire par « référencement abusif », désigne un ensemble de techniques consistant à tromper les moteurs de recherche sur la qualité d'une page ou d'un site afin d'obtenir pour un mot-clé donné un bon classement dans les résultats fournis par les moteurs de recherche. Les captchas permettent également d'empêcher l'extraction automatisée de bases de données par les robots. Ils constituent un outil de lutte contre les tentatives d'attaque par force brute, ce terme désignant une méthode utilisée en cryptoanalyse pour trouver un mot de passe ou une clé. La méthode consiste à tester une à une toutes les combinaisons possibles et constitue ainsi une méthode de recherche exhaustive. Enfin, les captchas permettent de lutter contre la participation de robots à des sondages dont les résultats pourraient ainsi être faussés par des votes automatisés. Les captchas sont couramment utilisés par les serveurs dits à état, c'est-à-dire à session. Dans un tel cas, le serveur qui reçoit une réponse de la part d'un terminal d'un utilisateur connaît la question qu'il a posée car il l'a gardée en mémoire. Ainsi la proposition envoyée par l'utilisateur est comparée par le serveur avec le contenu d'une page de vérification en même temps que les autres zones de saisie éventuelles (par exemple les champs d'un formulaire). Puisque la page de vérification connaît la question posée ou challenge initial qui a été envoyée par le serveur en début de session, ce dernier peut déterminer si la proposition de réponse adressée par l'utilisateur est correcte ou pas.
Cependant, les captchas ne sont pas utilisables sur les serveurs sans état, c'est-à- dire sans session. C'est le cas par exemple dans le cas de l'interface normalisée utilisée par les serveurs de type HTTP et désignée par l'acronyme CGI qui signifie Common Gateway Interface, à savoir "Interface passerelle commune". En effet, un inconvénient des serveurs sans état est que, si un tel serveur reçoit une proposition de réponse de la part d'un utilisateur, il ne sait pas à quelle question il s'agissait de répondre. Il n'est donc pas en mesure d'examiner la validité de la réponse reçue. En effet, les serveurs sans état, au contraire des serveurs avec état, ne peuvent pas avoir en mémoire la question qu'ils ont envoyée sur le réseau.
On prévoit selon l'invention un procédé de communication sur un réseau comprenant une étape d'envoi, par un serveur, d'une page informatique comprenant une question et un élément considéré par le serveur comme une réponse correcte à la question.
L'invention est applicable aussi bien aux serveurs à état qu'aux serveurs sans état. Néanmoins, elle est particulièrement avantageuse dans le cas des serveurs sans état. Ainsi, lorsque l'utilisateur retourne la page au serveur avec sa proposition de réponse à la question, le serveur reçoit en outre dans cette page l'élément qui répond correctement à la question. Il peut donc comparer la proposition de l'utilisateur avec l'élément et déterminer si cette proposition est une réponse correcte à la question, et ce même si le serveur n'a pas gardé en mémoire la question posée. Bien entendu, il sera préférable que l'élément n'apparaisse pas dans la page affichée sur un écran d'une façon trop lisible ou identifiable par l'utilisateur. Avantageusement, l'élément est chiffré. Nous verrons dans la suite de la description, en référence au mode préféré de réalisation, que le procédé comprend une étape, exécutée par le serveur, de chiffrement de l'élément, la page comprenant l'élément sous forme chiffrée. Ainsi, l'élément n'est pas compris en clair dans la page comprenant la question et consultée par l'utilisateur. Pour répondre correctement à la question, un robot doit donc ou bien avoir été informé de la réponse correcte par un utilisateur humain ou bien rechercher et décrypter l'élément chiffré, ce qui nécessite d'y consacrer un temps substantiel et une part importante des ressources d'une unité centrale et ralentit donc l'attaque que le robot tente d'exécuter.
De préférence, le procédé comprend une étape, exécutée par le serveur, d'insertion dans la page, de préférence dans l'élément, d'une donnée de repérage temporel permettant de déterminer une durée écoulée depuis l'étape d'insertion.
Ainsi, lorsque le serveur reçoit en retour la page avec la proposition de l'utilisateur, il peut déterminer la date de l'expédition de cette page à l'utilisateur. Si cette date apparaît comme trop ancienne, le serveur pourra qualifier la proposition reçue de suspecte et ne pas la traiter comme une réponse émanant d'un utilisateur humain.
Cette caractéristique permet au serveur de reconnaître une intervention de la part d'un robot même si ce dernier a envoyé au serveur une proposition de réponse qui s'avère exacte. L'intervention du robot est donc reconnue comme telle par le serveur en raison de son caractère trop tardif par rapport à l'ancienneté de l'expédition de la question par le serveur.
En outre, cette caractéristique, pour les mêmes raisons, ne donnera pas plus de chances de succès au robot s'il essaie une ou plusieurs fois de réexpédier la même page au serveur. En effet, le retard avec lequel il envoie la réponse au serveur ne fera que s'accroître et empêchera toujours le robot d'être assimilé à un utilisateur par le serveur. Le nombre de tentatives effectuées par le robot est donc parfaitement indifférent à l'égard de l'insuccès de son attaque.
Le procédé selon l'invention pourra également comprendre les étapes suivantes exécutées par le serveur :
- réception d'une proposition comprenant la page ;
- lecture de la donnée de repérage temporel dans la proposition ; et
- comparaison d'une durée séparant les étapes d'insertion et de lecture avec une valeur prédéterminée. On prévoit également selon l'invention un serveur de communication sur un réseau, qui comprend des moyens pour envoyer une page informatique comprenant une question et un élément considéré par le serveur comme une réponse correcte à la question.
Avantageusement, le serveur est un serveur de type sans état. On prévoit en outre selon l'invention un programme d'ordinateur apte à commander l'exécution d'un procédé selon l'invention, un support d'enregistrement comprenant un tel programme et une mise à disposition d'un tel programme en vue de son téléchargement.
On prévoit aussi une page informatique comprenant une question, un élément formant une réponse correcte à la question, et un champ apte à recevoir une proposition de réponse à la question.
On prévoit enfin un signal transportant des informations aptes à constituer sur un écran une page informatique conforme à l'invention.
Ce signal pourra être de nature électromagnétique et par exemple électrique ou optique. D'autres caractéristiques et avantages de l'invention apparaîtront encore dans la description suivante d'un mode préféré de réalisation donné à titre d'exemple non limitatif en référence aux dessins annexés sur lesquels :
- la figure 1 est une vue schématique d'un réseau de communication dans lequel prend place un serveur selon l'invention ; - la figure 2 est une vue schématique d'une page informatique envoyée par le serveur de la figure 1 ; et
- la figure 3 est un organigramme d'un mode de mise en œuvre du procédé de l'invention.
On a illustré à la figure 1 un serveur 2 connecté à un réseau de télécommunications tel que le réseau Internet 4. En variante, le réseau pourrait être un réseau local ou intranet. Le serveur 2 comprend en l'espèce un ordinateur auquel se connectent à travers le réseau des terminaux clients tels que le terminal 6 illustré à la figure 1. Le serveur 2 sert de façon classique à stocker des fichiers, à transférer du courrier électronique et à héberger des sites Internet comprenant notamment des pages web en langage informatique. De façon classique, le serveur 2 comprend une unité centrale à microprocesseur et des mémoires vive et morte. Il en est de même pour le terminal 6 qui est en outre relié à un moniteur 8.
Le serveur 2 est dans le présent exemple un serveur sans état, c'est-à-dire un serveur sans session. Le serveur 2 comprend des moyens 12 d'un type classique aptes à réaliser et à envoyer sur le réseau 4 sous la forme de signaux des pages web informatiques telles que Ia page 10 illustrée à la figure 2. Il est apte aussi à recevoir de telles pages pour les traiter. Ces pages sont par exemple réalisées dans le format HTML classique. Elles peuvent comprendre un ou plusieurs textes 14, une ou plusieurs illustrations 16, un ou plusieurs liens hypertexte, etc. La page comprend en l'espèce plusieurs champs 1 1 que l'utilisateur du terminal 6 doit compléter en entrant divers renseignements tels que nom, âge, etc.
Dans certaines circonstances, le serveur 2 est programmé pour déterminer si oui ou non un utilisateur humain intervient sur le terminal 6 dans le cadre de sa communication avec le serveur. En d'autres termes, il cherche à déterminer si au contraire les communications que le serveur 2 reçoit émanent d'un robot ou automate susceptible d'accomplir des actions malveillantes.
A cette fin, le serveur met en œuvre le procédé qui sera décrit plus loin dans lequel intervient un captcha. Le serveur 2 comprend notamment un programme d'ordinateur apte à commander l'exécution des étapes de ce procédé. Ce programme peut être enregistré sur un support d'enregistrement (tel qu'une clé USB, un DVD ou une disquette) afin par exemple d'être transféré sur une autre machine. On peut également prévoir que ce programme soit mis à disposition sur un réseau tel que le réseau Internet en vue de son téléchargement, moyennant le cas échéant certaines conditions d'accès.
En référence à la figure 3, le procédé de l'invention est dans le présent exemple mis en œuvre comme suit.
On suppose que le serveur 2 a reçu de la part du terminal 6 une requête d'envoi à ce dernier de la page web informatique 10 qui peut être affichée sur le moniteur 8. A cette occasion et au moyen de cette page, le serveur cherche à déterminer si un utilisateur humain intervient sur le terminal 6. Pour cela, le serveur 2 dispose dans la page 10 d'une question 18 ou test comprenant par exemple une partie de texte avec un point d'interrogation et si nécessaire une illustration 20. Cette question consiste par exemple à demander à l'utilisateur de désigner ou d'identifier ce qui est représenté sur l'illustration 20. Elle peut également consister à lui demander d'entrer une suite de caractères et/ou de chiffres figurant de façon déformée sur cette illustration 20. La page 10 comprend un champ 13 destiné à recevoir de la part de l'utilisateur une proposition de réponse à la question 18. Ce champ est distinct des champs 1 1 s'ils existent.
Le serveur 2 dispose aussi d'un élément ou contenu 23 formé par exemple par une chaîne alphanumérique. Ce contenu en clair sera par hypothèse considéré par le serveur comme une réponse correcte à la question 18. Par exemple, si l'illustration 20 représentait de façon déformée la chaîne alphanumérique "5fg5", le contenu 23 en clair, considéré comme une réponse valide par le serveur 2, sera constitué par la chaîne alphanumérique
"5fg5".
Dans une première étape 22 du procédé, le serveur 2 réalise un chiffrage de l'élément 23 au moyen par exemple d'une fonction de chiffrage classique. En outre, dans le présent exemple, à l'occasion du chiffrage de ce contenu, le serveur 2 insère dans le contenu chiffré une donnée de repérage temporel qui permettra ultérieurement de déterminer la date de l'accomplissement de cette opération de chiffrage. Une telle donnée, d'un type classique en soi, est parfois désignée par le terme
"timbre horaire". Le contenu chiffré 23 muni de cette donnée est inséré par le serveur dans la page
10, de préférence de façon telle qu'il sera invisible pour un utilisateur humain lorsque la page apparaîtra sur un écran.
Dans une étape suivante 24, le serveur 2 envoie la page 10 ainsi réalisée, sous la forme d'un signal, à travers le réseau 4 jusqu'au terminal 6. 1 1 . Le signal transporte des informations aptes à constituer sur un écran la page 10. La page envoyée comprend donc notamment la question 18, le contenu chiffré 23 et le champ 13 à remplir.
Ensuite, le terminal 6 reçoit le signal et affiche sur l'écran du moniteur 8 la page 10 transmise par ce signal. Le contenu chiffré 23 est prévu pour ne pas apparaître à l'écran ou du moins pas sous une forme permettant à un être humain d'identifier ce contenu comme tel. Si un utilisateur humain est présent auprès du terminal 6, il prend connaissance de la question 18 et y répond en entrant une proposition de réponse dans le champ 13 destiné à cet effet dans la page 10. Il remplit aussi si besoin les champs 1 1.
Puis il retourne cette page ou une partie de cette page ou encore une page analogue à la page 10, au serveur 2 via le réseau 4 sous la forme d'un signal. Si au contraire le terminal 6 est un automate apte à répondre de lui-même, il insère une proposition de réponse dans le champ 13 et renvoie la page (ou une partie de cette page ou une page analogue) au serveur sous la forme d'un signal. Dans les deux cas, la page informatique envoyée par le terminal 6 comprend le contenu chiffré 23 tel qu'envoyé à l'origine par le serveur et le champ 13 comprenant la proposition de réponse. Dans une étape ultérieure 26, le serveur 2 reçoit donc le signal comprenant cette page. Le serveur 2 extrait de cette page (ou plus précisément du signal) la proposition de réponse ainsi que le contenu chiffré 23.
Au cours d'une étape ultérieure 28, le serveur procède au déchiffrage du contenu chiffré 23. Il convient ici de rappeler que le serveur 2 étant dans le présent exemple un serveur sans état, le serveur, avant la réception de la page venant du terminal 6, ne dispose ni de la question 18 qu'il a posée ni de la réponse qui doit être considérée comme valide. Procéder au déchiffrage du contenu chiffré 23 lui permet donc de déterminer quelle réponse valide est attendue de la part de l'utilisateur. En outre, à l'occasion de ce déchiffrage, le serveur procède à la lecture de la donnée de repérage temporel qu'il avait insérée lors de l'envoi. Dans une étape ultérieure 30, le serveur 2 détermine la durée séparant la date correspondant à la donnée de repérage temporel (date qui est la date du chiffrage) et la date de l'opération de déchiffrage. On observe ici que la donnée de repérage temporel n'est pas nécessairement sous la forme d'une date. Il suffit qu'elle permette de déterminer la date à laquelle le chiffrage a eu lieu. Une fois cette durée déterminée, le serveur compare cette durée avec une valeur prédéterminée dont il dispose en mémoire. Cette valeur prédéterminée sera fonction des circonstances, du type de serveur, du type de pages web échangées avec les utilisateurs et du type de services que le serveur vise à leur offrir. A titre d'exemples, la durée de référence pourra être de 30 secondes, de une heure ou encore de vingt-quatre heures. On supposera ici qu'elle est de 30 secondes. Lors d'une étape 32, le serveur détermine ensuite si la durée est inférieure à la valeur prédéterminée de 30 secondes. Si la réponse à cette question est négative, le serveur passe à une étape 34 au cours de laquelle l'envoi en provenance du terminal 6 sera traité par le serveur comme n'émanant pas d'un utilisateur humain. En d'autres termes, cet envoi est considéré comme suspect c'est-à-dire susceptible d'avoir été envoyé par un robot. Aucune suite ne lui sera donnée par le serveur. On peut cependant prévoir dans ce cas l'envoi d'un message d'alerte ou d'erreur.
Dans le cas contraire, c'est-à-dire si la durée est inférieure à la valeur prédéterminée, le serveur passe à une étape suivante 36 de lecture de la proposition de réponse dans le champ 13. II passe ensuite à une étape 38 visant à déterminer si la proposition de réponse est identique au contenu déchiffré 23. Si la proposition de réponse est différente du contenu 23 en clair, à nouveau, le serveur passe à une étape 40 dans laquelle il ne donne pas suite à l'envoi provenant du terminal 6 et considère cet envoi comme suspect. On peut cependant ici encore prévoir dans ce cas l'envoi d'un message d'alerte ou d'erreur. On peut aussi envisager l'envoi d'un nouveau test au terminal en vue d'une nouvelle tentative (par exemple si l'on considère qu'il est possible qu'un être humain soit intervenu mais en répondant de façon erronée)
Dans le cas contraire, le serveur 2 considère que la proposition envoyée par le terminal 6 est correcte puisque que la proposition est identique au contenu 23. Le terminal considère donc que c'est un être humain et non un robot qui a préparé cette réponse. Il donne donc libre accès à l'utilisateur 6 à un ou plusieurs services fournis par le serveur 2. Comme on le voit, le serveur 2 reçoit donc avec la proposition de réponse venant du terminal 6 le contenu 23 considéré comme une réponse correcte par le serveur. Il peut donc, en dépit du fait qu'il ignore la question qui a été posée, examiner la validité de la proposition adressée par le terminal 6. En outre, dans le présent exemple, le fait que le contenu 23 soit transmis sous forme chiffrée au terminal 6 avant d'être renvoyé au serveur permet de limiter les tentatives d'action malveillantes. De plus, la présence dans ce contenu de la donnée de repérage temporel permet de reconnaître, en raison de leur caractère tardif, des propositions de réponse adressées de façon automatique par des robots. La validité de la réponse est donc vérifiée d'une part dans la dimension temporelle et d'autre part quant au fond.
L'invention est adaptable à de nombreux types de tests ou captchas. Il peut s'agir de tests visuels, de tests auditifs, ou encore de tests logiques par exemple. L'invention est également applicable aux serveurs avec état, c'est-à-dire avec session. Bien entendu, on pourra apporter à l'invention de nombreuses modifications sans sortir du cadre de celle-ci. On peut par exemple envisager les variantes suivantes.
La page 10 pourra être une page spécifiquement consacrée au test de sorte qu'elle ne comprendra que la question 18, l'élément 23 et le champ 13.
Bien qu'il soit avantageux d'insérer la donnée de repérage temporel dans l'élément 23 à l'occasion du chiffrage de ce dernier, ces deux étapes pourront être dissociées. Ainsi on pourrait imaginer que le serveur 2 envoie dans la page 10 l'élément 23 en clair (mais sous forme invisible pour un humain sur l'écran affichant la page), en ayant inséré dans cet élément la donnée de repérage temporel.
Dans une variante, on pourrait imaginer que la question 18 est renvoyée elle aussi dans la page par le terminal 6 au serveur 2. Dans ce cadre, on peut prévoir que la donnée de repérage temporel soit insérée par le serveur dans la question 18 (diffusée en clair et affichée) et non dans l'élément 23.
La donnée de repérage pourrait dans d'autres cas être insérée à un autre endroit de la page 10, c'est-à-dire dans un endroit distinct de la question 18 et de l'élément 23. On pourra prévoir que le serveur envoie dans la page 10 l'élément 23 non pas sous forme chiffrée mais hashée. On entend par là que la page comprend une empreinte de l'élément 23 obtenue au moyen d'une fonction de hashage. Dans ce cas, la donnée de repérage temporel sera insérée par le serveur dans un autre composant de la page 10 que l'élément hashé 23. De plus, la comparaison quant au fond de la validité de la proposition envoyée par le terminal 6 se fera en procédant au hashage de cette proposition et en comparant l'empreinte ainsi obtenue avec l'empreinte 23. L'élément 23 pourra comprendre un ou plusieurs signes autres que des chiffres et des lettres. Il pourra comprendre un son ou une image.
On pourra prévoir de modifier l'ordre des étapes 32 de test de la durée et 38 de test de la validité de la proposition quand au fond. Ainsi, après avoir mis en œuvre les étapes 30 de détermination de la durée et 36 de lecture de la proposition, on pourra exécuter l'étape 38 de test de la validité de la proposition quand au fond puis, en cas de test favorable, l'étape 32 de test de la durée.
Enfin, on pourra prévoir de mettre en œuvre le procédé suivant, dans lequel l'utilisation d'un test est seulement optionnelle : un procédé de communication sur un réseau qui comprend les étapes suivantes exécutées par un serveur :
- une étape de réception d'un contenu ;
- une étape de lecture d'une donnée de repérage temporel du contenu ; et
- une étape de comparaison d'une durée séparant une date correspondant à la donnée et l'étape de lecture, avec une valeur prédéterminée.

Claims

REVENDICATIONS
1. Procédé de communication sur un réseau (4), caractérisé en ce qu'il comprend une étape d'envoi, par un serveur (2), d'une page informatique (10) comprenant une question (18) et un élément (23) considéré par le serveur comme une réponse correcte à la question.
2. Procédé selon la revendication précédente, caractérisé en ce que l'élément est chiffré.
3. Procédé selon l'une quelconque des revendications précédentes, qui comprend une étape, exécutée par le serveur, d'insertion dans la page (10), de préférence dans l'élément, d'une donnée de repérage temporel permettant de déterminer une durée écoulée depuis l'étape d'insertion.
4. Procédé selon la revendication précédente, qui comprend les étapes suivantes exécutées par le serveur (2) : - réception d'une proposition comprenant la page ;
- lecture de la donnée de repérage temporel dans la proposition ; et
- comparaison d'une durée séparant les étapes d'insertion et de lecture avec une valeur prédéterminée.
5. Serveur (2) de communication sur un réseau (4) caractérisé en ce qu'il comprend des moyens (12) pour envoyer une page informatique (10) comprenant une question (18) et un élément (23) considéré par le serveur comme une réponse correcte à la question.
6. Serveur selon la revendication précédente, qui est un serveur de type sans état.
7. Programme d'ordinateur caractérisé en ce qu'il est apte à commander l'exécution d'un procédé selon l'une quelconque des revendications 1 à 4.
8. Support d'enregistrement caractérisé en ce qu'il comprend un programme selon la revendication précédente.
9. Mise à disposition d'un programme selon la revendication 7 en vue de son téléchargement.
10. Page informatique (10) caractérisée en ce qu'elle comprend une question (18), un élément (23) formant une réponse correcte à la question, et un champ (13) apte à recevoir une proposition de réponse à la question.
1 1 . Signal caractérisé en ce qu'il transporte des informations aptes à constituer sur un écran une page informatique (10) conforme à la revendication précédente.
PCT/FR2008/051758 2007-10-04 2008-09-30 Procede de communication sur un reseau au moyen d'un serveur mettant en oeuvre un test WO2009050407A2 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0758074 2007-10-04
FR0758074 2007-10-04

Publications (2)

Publication Number Publication Date
WO2009050407A2 true WO2009050407A2 (fr) 2009-04-23
WO2009050407A3 WO2009050407A3 (fr) 2009-06-25

Family

ID=39015876

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2008/051758 WO2009050407A2 (fr) 2007-10-04 2008-09-30 Procede de communication sur un reseau au moyen d'un serveur mettant en oeuvre un test

Country Status (1)

Country Link
WO (1) WO2009050407A2 (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10402555B2 (en) 2015-12-17 2019-09-03 Google Llc Browser attestation challenge and response system
CN111460426A (zh) * 2020-04-02 2020-07-28 武汉大学 基于对抗演化框架的抗深度学习文本验证码生成系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000041103A1 (fr) * 1998-12-31 2000-07-13 Perfecto Technologies Ltd. Procede et systeme de discrimination entre une action humaine et une action informatisee
US6195698B1 (en) * 1998-04-13 2001-02-27 Compaq Computer Corporation Method for selectively restricting access to computer systems
US20070074154A1 (en) * 2002-06-28 2007-03-29 Ebay Inc. Method and system for monitoring user interaction with a computer

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6195698B1 (en) * 1998-04-13 2001-02-27 Compaq Computer Corporation Method for selectively restricting access to computer systems
WO2000041103A1 (fr) * 1998-12-31 2000-07-13 Perfecto Technologies Ltd. Procede et systeme de discrimination entre une action humaine et une action informatisee
US20070074154A1 (en) * 2002-06-28 2007-03-29 Ebay Inc. Method and system for monitoring user interaction with a computer

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JUN XU ET AL: "Mandatory human participation: a new authentication scheme for building secure systems" COMPUTER COMMUNICATIONS AND NETWORKS, 2003. ICCCN 2003. PROCEEDINGS. THE 12TH INTERNATIONAL CONFERENCE ON DALLAS, TX, USA 20-22 OCT. 2003, PISCATAWAY, NJ, USA,IEEE, 20 octobre 2003 (2003-10-20), pages 547-552, XP010695028 ISBN: 0-7803-7945-4 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10402555B2 (en) 2015-12-17 2019-09-03 Google Llc Browser attestation challenge and response system
CN111460426A (zh) * 2020-04-02 2020-07-28 武汉大学 基于对抗演化框架的抗深度学习文本验证码生成系统及方法

Also Published As

Publication number Publication date
WO2009050407A3 (fr) 2009-06-25

Similar Documents

Publication Publication Date Title
US11356479B2 (en) Systems and methods for takedown of counterfeit websites
US20080201401A1 (en) Secure server authentication and browsing
TW201025073A (en) Image-based human iteractive proofs
EP3391614B1 (fr) Procédé de transmission d'une information numérique
EP2443566B1 (fr) Procede de selection de versions d'un document parmi une pluralite de versions reçues a la suite d'une recherche, et recepteur associe
WO2011141464A1 (fr) Systeme permettant l'affichage d'un fichier informatique prive sur un ecran d'un terminal de telecommunications et procede correspondant
Van Dongen Forensic artefacts left by windows live messenger 8.0
WO2009050407A2 (fr) Procede de communication sur un reseau au moyen d'un serveur mettant en oeuvre un test
EP1646194B1 (fr) Procédé de production d'un accusé de réception fiable
EP3732849B1 (fr) Procédé et système d'identification de terminal d'utilisateur pour la réception de contenus multimédia protégés et fournis en continu
EP2336967B1 (fr) Messagerie personnalisée sur encarts web.
WO2018115647A1 (fr) Validation de livraison de contenu et de verification d'une delegation de livraison d'un contenu
EP1227640B1 (fr) Procédé et système de communication d'un certificat entre un module de sécurisation et un serveur
EP3136354A1 (fr) Méthode de sécurisation et de vérifiabilité d'un vote électronique
FR2844943A1 (fr) Procede de production d'un premier identifiant isolant un utilisateur se connectant a un reseau telematique
WO2018029564A1 (fr) Systeme et procede d'authentification sans mot de passe d'un utilisateur d'un systeme applicatif par un serveur central
EP3899765B1 (fr) Réinitialisation d'un secret applicatif au moyen du terminal
EP4246890A1 (fr) Systeme d'analyse automatisee des actions d'un utilisateur connecte a distance sur un serveur
WO2007003853A2 (fr) Procede et systeme de stockage de donnees numeriques
WO2006134072A1 (fr) Procede de protection contre le piratage d'un terminal client utilisant une connexion securisee avec un serveur sur un reseau public
FR2940727A1 (fr) Systeme d'authentification simplifie (sas)
WO2015132183A1 (fr) Procédé de sécurisation d'accés à un site de la toile
EP2254275A1 (fr) Procédé de chiffrement de parties particulières d'un document pour les utilisateurs privilèges
Klein A forensic analysis of a distributed two-stage web-based spam attack
WO2017109352A1 (fr) Procede et dispositif de connexion a un serveur distant

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08839079

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08839079

Country of ref document: EP

Kind code of ref document: A2