WO2007003818A1 - Method for filtering through multi-protocol coupling based on dns protocol - Google Patents

Method for filtering through multi-protocol coupling based on dns protocol Download PDF

Info

Publication number
WO2007003818A1
WO2007003818A1 PCT/FR2006/050461 FR2006050461W WO2007003818A1 WO 2007003818 A1 WO2007003818 A1 WO 2007003818A1 FR 2006050461 W FR2006050461 W FR 2006050461W WO 2007003818 A1 WO2007003818 A1 WO 2007003818A1
Authority
WO
WIPO (PCT)
Prior art keywords
filtering
request
domain name
user
response
Prior art date
Application number
PCT/FR2006/050461
Other languages
French (fr)
Inventor
Karel Mittig
Samuel Legouix
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 WO2007003818A1 publication Critical patent/WO2007003818A1/en

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/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]

Definitions

  • the invention relates to filtering systems that control access to content hosted on servers to which users have access from a computer terminal via a computer network such as the Internet.
  • the second type relates to solutions based on the use of proxy servers (also called proxy servers). These servers centralize all access to Internet and / or Intranet resources from client computers. These solutions are relatively easy to deploy and maintain, and provide an excellent level of filtering. On the other hand, they rarely support other protocols than the HTTP protocol ("HyperText Transfert
  • the content filtering may be based on the analysis of the request: the filtering is performed according to information sent by the user, typically a server name or a query URI ("Uniform Resource Identifier"). It can also be based on the analysis of the response: the filtering is done according to the response of the server, typically the meta-information that accompanies the response ("header" HTTP for example) and the requested object itself.
  • the filtering tool when a query is presented, the filtering tool:
  • the first is a potentially complex and expensive operation (access to the Information System in the case of a company).
  • the second step is usually ignored or misapplied by the filtering tools, and in the third step, the internal database contains mostly domain names and IP addresses rather than full URIs.
  • content filtering based on response analysis must first identify the response to determine the type of filtering to apply. Then the tool runs a filter rule engine. This is the heart of the filtering system.
  • the techniques used are more or less complex and represent a real technical know-how which consists in controlling both the quality of the filtering performed and the response time.
  • a blocking of access to the Internet resource an application error ("404 Forbiden” for HTTP) is sent to the user to prevent it from blocking.
  • Partial blockage to the Internet resource it can be to delete some parts of the object deemed unnecessary, resource-consuming or potentially dangerous (viruses, PopUp, Banner, ). The user is usually not notified of the change.
  • P2P stream filtering now consists of limiting access by user or group of users.
  • HTTP filtering systems need to break all the TCP ("Transmission Application Protocol") connections to perform content analysis, which has the effect of increasing the processing time and thus reducing the quality of service. perceived by users.
  • TCP Transmission Application Protocol
  • the present invention aims to overcome the aforementioned drawbacks and to propose a filtering solution that can handle almost all requests for access to content servers, and this in an optimized manner, that is to say -describe using a concept based on the analysis and the gradual and multi-protocol filtering of client requests.
  • This goal is achieved by a filtering method for controlling access to content by a user from a computer terminal comprising means for sending requests for content requests to content servers accessible via a network.
  • access to the content servers comprising a prior step of DNS domain name resolution comprising the sending of a DNS resolution request from the computer terminal to obtain a response containing the IP address of the content server corresponding to the domain name indicated in the request, characterized in that it comprises the following steps: a) determining the profile of the user from the data of the domain name resolution request issued by the computer terminal to verify if content filtering is defined in the profile, b) in case of negative verification, authorization of the request and the response of res olution of domain name, c) in case of positive verification, comparison of the domain name present in the request and / or in the response with a list of predefined domain names according to the profile of the user of the computer terminal, d ) filtering the query or the domain name resolution response when the result of the comparison indicates that the domain name present in the request or in the response is to be filtered, said filtering comprising one of the following two steps; dl) blocking the request or response and sending a filtering notification to the user, or d2) returning
  • the invention thus makes it possible to filter the access requests, no longer at the level of the protocol used to obtain the content, but at the level of the DNS resolutions.
  • the invention makes it possible to delegate requests requiring precise analysis (and only these requests) to traditional filtering systems such as relay application servers (HTTP proxies, FTP, etc.). .
  • the invention thus makes it possible:
  • the filtering further comprises a partial filtering step d3) of removing part of the information contained in the domain name resolution response transmitted to the user's terminal, thereby permitting the client to continue the connection but with limited access to only the content to which he has the right to access.
  • step d1) the filtering notification is directly transmitted to the user by means of an application message containing the communication protocol used or indirectly by means of a message sent to the offline user, which allows in all the in case of returning to the user a message explaining the prohibition of access, either by using the content protocol used if it is standard, or by an additional notification system, such as an e-mail or an SMS, this which allows notifying a client access ban for all protocols that can not be supported.
  • the invention also relates to a barrier server comprising application means responsive to connection requests for returning a filtering notification message, each application means being able to support a specific application protocol, said barrier server further comprising means (ie computer program instructions) for checking whether the application protocol used in the connection request corresponds to one of the application protocols supported by the application means and for extracting, from the IP address of the sending user of the connection request, information for indirectly contacting the user and for sending a filtering notification message using said information, in case of negative verification.
  • the invention also relates to a DNS domain name filtering server intended to receive a DNS domain name resolution request issued from a user's computer terminal, characterized in that it comprises means (ie computer program instructions):
  • the domain name filtering server further comprises means for blocking the request or the response and for returning a domain name resolution response containing the IP address of a barrage server as previously described, said barrage server sending a filtering notification to the user.
  • the domain name filtering server further comprises means for returning the request or response to a secondary filtering device.
  • the domain name filtering server makes it possible to process the majority of content request requests, and this is optimized by a first level of simple and fast DNS filtering because it is independent of the protocol used in the content request.
  • the accuracy of the filtering is further preserved with the ability to redirect the only requests requiring more precise filtering on secondary filtering servers.
  • the invention relates to a filtering system for controlling access to content by a user from a computer terminal, said system comprising a DNS domain name filtering server as described above, a server of barrage and one or more secondary filtering servers.
  • FIG. 1 is a schematic global view of an embodiment of the DNS filtering system according to the invention
  • FIG. 2 is a block diagram of a DNS filtering server according to one embodiment of the invention
  • FIG. 3 is a block diagram of a barrier server according to one embodiment of the invention
  • FIG. 4 is a block diagram of a secondary filtering server
  • FIG. 5 is a schematic view of a content filtering system according to the prior art. DETAILED DESCRIPTION OF THE EMBODIMENTS OF THE INVENTION
  • the present invention proposes to remove the limitations of the filtering solutions of the prior art by creating a hybrid filtering system based on the existing proxy server systems, but also and especially on domain name systems or DNS (acronym the English term "Domain Name System” or "Domain Name Service”).
  • DNS domain name systems
  • the DNS protocol is thus used as a sub-layer prior to almost all the application protocols existing today on the Internet.
  • the invention proposes to bring a new approach to existing Web filtering mechanisms by proposing a system combining an initial DNS filtering associated, if necessary, with filtering on other protocols (eg HTTP).
  • the DNS model is defined by the IEETF standard 13 via RFCs 1034 and 1035.
  • the purpose of the DNS model is to define a coherent namespace for Internet resources, allowing a match between a name and an IP address to be mapped. given moment.
  • the DNS model is based on a tree system, capable of supporting high load growth and allowing each organization to manage its address space.
  • each node is a domain
  • each domain is also a subdomain (with the exception of the root server).
  • the servers managing this model are divided into three functional groups: - Authoritative servers, responsible for managing domains. These servers are said to be “iterative”, that is, they only answer questions about the areas they manage.
  • DNS caches also called DNS relay servers. These servers, optional, aim to store the most requested requests in order to accelerate DNS resolution times.
  • the only visible DNS server is its local DNS server (recursive DNS). This server is responsible for retrieving the IP address of the requested server and retransmitting it to the user.
  • DNS Uniform Resource Locator
  • a URL Uniform Resource Locator
  • the browser performs a DNS resolution to obtain the IP address of the server. This request is sent to the local server, which is responsible for transmitting the request if necessary to other servers.
  • the browser connects to the HTTP server, transmits the request for content request, retrieves the content and delivers it to the user.
  • the DNS resolution request contains only the name of the requested server (in the example, "www.francetelecom.com”). The exact nature of the requested content is transmitted only within the HTTP content request request (in the example, "/ subpart / index.html”).
  • HTTP HyperText Transfer Protocol
  • WAP Wireless Application Protocol
  • FTP File Transfer Protocol
  • SMTP Simple Mail Transfer Protocol
  • IRC Internet Relay Chat
  • RTSP Real Time Streaming Protocol
  • the present invention provides: - the realization of a primary filtering system, working on domain names and based on the DNS protocol;
  • the invention can thus be represented by:
  • DNS filtering device can behave like a relay DNS server (DNS proxy), as a recursive DNS server (substitute for the DNS server client) or as an authoritative DNS server. These different modes of operation make it possible to position the invention as a cut-off of DNS flows at any point in the DNS architecture.
  • DNS proxy DNS proxy
  • recursive DNS server substitute for the DNS server client
  • authoritative DNS server authoritative DNS server
  • a barrier device the purpose of which is to return an error message to clients who have made a request that is not allowed.
  • the barrier device and the secondary filtering devices do not need to be placed at a break from the client streams, and can be positioned at any point in a network architecture.
  • FIG. 1 The implementation case where the invention lies between the clients and their recursive DNS server is shown in FIG. 1.
  • a user 1 performs a DNS resolution request from a terminal. computer including means for connection to a computer network such as the Internet.
  • the user may have a personal computer 2, a communicating digital personal assistant 3 (communicating PDA) or a mobile telephone 4 (eg GPRS telephone or UMTS).
  • the user first accesses a relay DNS server 5 in which the DNS filtering specific to the invention is implemented (ie the relay DNS server 5 being used here as the filtering server DNS domain name of the invention).
  • the relay DNS server 5 is placed between the user's computer terminal and the recursive local DNS server 6, the latter having access to authoritative DNS servers 7 responsible for responding to requests from the recursive local server 6.
  • the content that user 1 wants to access by a DNS resolution request from a computer terminal are hosted on servers located at various locations on the computer network. For simplicity, all these content servers, including HTTP servers, are shown in Figure 1 by a content server 40.
  • the system of the invention further comprises a barrier server 10 and a secondary filtering server 20 whose operation will be described later in detail.
  • the DNS filtering server 5 of the invention receives and filters all the domain name resolution requests 41 sent to obtain an IP address. In this respect, it is able to filter access regardless of the protocol requested next. A response 42 is then sent. As described in detail below, depending on this response, there is automatic redirection to the content server 40, to the barrage server 10 or to the secondary filtering server 20. The majority of the traffic 43 is authorized, and not then meets more filtering system (gain in costs, performance and quality of service). A majority of the remaining 44 requests are blocked. Only a small part of the remaining traffic 45 requires a more precise analysis and then relies on secondary filtering systems.
  • FIG. 5 schematically illustrates an example of a state-of-the-art HTTP filtering architecture comprising a DNS server 105 for receiving the domain name resolution requests 108 sent by a user 101 by means of a terminal (a personal computer 102, communicating digital personal assistant 103 or a mobile phone 104) to obtain an IP address in response 109.
  • a terminal a personal computer 102, communicating digital personal assistant 103 or a mobile phone 1004.
  • the contents accessible by any type of flow (HTTP, FTP, P2P, etc.) are materialized by a content server 107.
  • a filtering server 106 supporting the HTTP protocol is intended to filter the content requests sent by the user 101 after obtaining the IP address obtained.
  • One embodiment of the invention is parental control within the framework of an Internet Service Provider (ISP).
  • ISP Internet Service Provider
  • the invention is based on a preliminary step which is the authentication of the user during his connection.
  • This step consists of identifying the user during the initialization of his connection and storing his connection parameters (IP address) in a database. This step allows the various elements of the invention to find the profile of a client based on its IP address by querying a customer base 8.
  • customers can dynamically update their profile via an HTTP server with a Web interface provided that they provide a password that may be the same or different from the one used for the authentication request. This solution allows several users to use the same machine with different profiles.
  • the DNS filtering system consists of six large functional blocks; a DNS server module 51, responsible for receiving the requests from the clients and for returning the responses (filtered or not) to these clients; an identification module 52 responsible for extracting from the database of the clients 8 the profile of the client at the origin of the request received. This profile will contain information (such as "child”, “teenager”, “adult”) that will allow the service to determine the level of filtering to be adopted. This module is based on the customer base presented in the preliminary identification step.
  • Obtaining the client profile is done by searching the client database for the profile attached to the original IP address of the DNS request. This IP address / Profll association is only valid for the duration of the user's connection. In addition, users have the possibility in this context to dynamically change the profile attached to their IP address in order to switch from a "parent" profile to a "child” profile for example.
  • a query filtering module 53 This module analyzes the client's request and uses the profile retrieved during the previous step to determine whether the request must be authorized, filtered or if it requires a secondary filtering system. For this, the analysis module relies on one or more white lists or black lists containing authorized and prohibited domain names.
  • Each profile will be associated with specific lists according to the desired service. As a nonlimiting example of the implementation possibilities, a profile "child” will be rather associated with one or more white lists. A “teenager” profile will be associated with one or more blacklists. Finally, an "adult” profile will not be filtered.
  • a DNS relay module 54 transmitting the client's request to the DNS servers capable of solving it;
  • a response filtering module 55 This module analyzes the response of the DNS servers, and uses the profile retrieved by the identification module to determine whether the response must be authorized, filtered or if it requires a secondary filtering system. . For this, the analysis module relies on one or more white lists or black lists containing authorized and prohibited domain names. These lists may be identical or different from those of the query analysis module, the process remaining the same in both cases; a response generation module 56 comprising four sub-modules 561 to 564.
  • the modules 51 to 56 can be implemented within a server located in the DNS resolution chain, such as the relay DNS server 5 of FIG.
  • Example of implementation of a DNS filtering device or server The steps shown in FIG. 2 are as follows: A user makes a request from a client application 9 (eg browser) installed on its terminal. DNS resolution.
  • client application 9 eg browser
  • This request is received by the DNS server module 51, which implements the protocol defined by the DNS standard (step S1).
  • the request of the user is transmitted to the identification module
  • the identification module 52 This extracts from the request the IP address of the user (step S2).
  • the identification module 52 queries the client base 8 to find the profile of the user associated with the extracted IP address (step S3).
  • the identification module 52 retrieves the profile associated with this IP address, for example "child", "teenager” or "adult". In the case where the customer base 8 does not provide the profile associated with an address (error case), the identification module 52 can apply a default profile
  • step S4 The identification module 52 submits the request of the user with the profile associated with a first level of analysis consisting in determining whether in the profile of the user it is indicated that it implies or not a filtering (step S5 ).
  • a first level of analysis consisting in determining whether in the profile of the user it is indicated that it implies or not a filtering (step S5 ).
  • the request is transmitted to a request filtering module 53 (step S7).
  • the query filtering module 53 confronts the user's request with one or more white lists 58 (case of the "child” profile) or with one or more blacklists 57 (case of the "teenager” profile) (step S8).
  • the white lists contain in an exhaustive manner the domain names that a child is allowed to consult.
  • blacklists contain the domain names that a teenager is not allowed to view, as well as domain names that require analysis by a secondary filtering system.
  • it is mainly to filter the so-called "normal" DNS resolution requests (i.e. requests to obtain an IP address from a domain name).
  • the result of this confrontation is transmitted to a first level of filtering which determines whether the request must be filtered or not according to this result (step S9).
  • the request is returned to the sub-module 561 of the DNS response module 56, which constructs a DNS message containing the IP address of a barrier server (step SlO).
  • step SI1 When the request of the user is not explicitly prohibited, it is transmitted to a second level of filtering (step SI1) to determine whether or not it should be the subject of secondary filtering (step S12).
  • the request is returned to the sub-module 562 of the DNS response module 56, which constructs a DNS message containing the IP address of the secondary filtering system. (Step S13).
  • the request of the user is authorized, it is transmitted to the DNS relay module 54 (step S14).
  • the DNS relay module 54 transmits, to the authoritative DNS servers 7, possibly via a recursive local DNS server (not shown), the DNS resolution request according to the protocol and the DNS standard in order to obtain a DNS resolution (step S15).
  • a DNS resolution response is obtained in return and is received by the DNS relay module 54 (step S16).
  • the module 54 transmits the DNS resolution response (with the user profile causing the request) to the response filtering module 55 (step S18).
  • the response filtering module confronts the response with one or more white lists 58 (case of the "child” profile) or with one or more blacklists 57 (case of the "teenager” profile) (step S19). These lists may be identical to or different from those used in step S8.
  • This step has the advantage of being able to filter the so-called reverse resolution requests (requests for obtaining a name from an IP address), as well as partially filtering certain responses, for example, in a non-limiting manner, the deletion of information in the additional fields of the DNS response.
  • the steps S20 to S24 are identical to the steps S9 to S13 respectively, the only difference being that it is the DNS resolution response that is considered here.
  • step S25 When the response is not directly prohibited and does not require a secondary filtering system, it is transmitted to a third level of filtering (step S25) which will determine whether or not the response requires partial filtering of the information contained in this response.
  • the response contains only information that can be transmitted to the user, it is sent as it is to the sub-module 563 of the DNS response module 56 which will transmit it to the user without modification (step S27).
  • the response contains information not to be transmitted to the user, the information not to be transmitted is deleted, and the request is transmitted to the sub-module 564 of the response module which will generate a response containing only the authorized information (step S28).
  • the response module transmits a DNS-compliant response to the DNS server module 51 (step S29) which transmits the response to the client software 9 of the user initiating the request (step S30).
  • Partial filtering is an interesting feature because it makes it possible to extend DNS filtering to new uses such as ENUM (protocol and technology based on the porting of E.164 telephony numbers on the DNS protocol which allows use the servers and the DNS protocol to store the reachability information of a user and thus offer a universal system for connecting users regardless of the means of access (traditional telephony, mobile or IP, messaging , videophone, etc.)).
  • ENUM protocol and technology based on the porting of E.164 telephony numbers on the DNS protocol which allows use the servers and the DNS protocol to store the reachability information of a user and thus offer a universal system for connecting users regardless of the means of access (traditional telephony, mobile or IP, messaging , videophone, etc.)).
  • ENUM use is to restrict access to personal phone numbers according to the profile of
  • Intranet / Enterprise and Internet context it is possible to have only one profile applicable to all users.
  • the IP address at the origin of the request is not used in this case, and this identification step is then optional.
  • profiles can be associated with specific IP address ranges.
  • a profile for example, limited access to professional sites
  • a user connecting to the corporate network with his username and password will be allocated an IP address according to the address range corresponding to its profile.
  • the previous mechanism can be extended to a multi-enterprise solution, each enterprise being characterized by a given IP address range.
  • DHCP Dynamic Host Configuration Protocol
  • This information can be updated dynamically by the user using associated passwords: - by installing software on the client terminal, allowing to select a profile (parent / child) to associate with the user. identifier of the machine and dynamically updating this information at the level of DHCP, Radius or other servers, or - by the use of a Web application accessible by the users, allowing to select a profile (parent / child) to associate to the identifier of the machine and dynamically updating this information at the DHCP, Radius or other servers.
  • these user profile identification solutions rely on known mechanisms.
  • the multiplicity of protocols supported by the invention (whether standard or not) as well as the impossibility of transmitting an explicit error message via the DNS protocol has led to the creation of a dam server.
  • This dam server aims to indicate to the client at the origin of the request that it has been filtered, and this in a user-friendly manner.
  • the barrage server intervenes when the DNS filtering appliance or server detects that a client needs to be filtered. This server returns to the user the IP address of the dam server in place of the address
  • IP of the server requested by the client The client then establishes a connection to the barrier server with any protocol.
  • the role of the barrage server is to detect a client connection attempt, as well as the application protocol used by this client. If the application protocol used by the client is known and implemented by the barrage server, the barrage server then returns to the client a filtering message using this protocol. If the application protocol used by the client is unknown or not implemented by the barrage server, the barrage server then returns to the client a filter message using a third party protocol.
  • Typical application protocols that can be used by a client and implemented by the dam server include: HTTP, WAP, SMTP, FTP, Telnet, Streaming, etc.
  • the dam server has a particular advantage especially when the client uses an unknown protocol. Indeed, in this case, the dam server implemented;
  • connection detection mechanism This mechanism is similar to those used by firewalls or intrusion detection systems, and involves logging any connection attempt to the barrage server.
  • SMS notification mechanism Short Message Service
  • the client's notification addresses will be stored with the client's profile (the .vs accessible via the IP address at the origin of the request).
  • a client initiating a filtered connection attempt will receive a message explaining that its access has been blocked: - Directly if the application protocol used is recognized and implemented by the dam server - In an indirect way, by electronic mail or SMS, if the application protocol used is not recognized or is not implemented by the barrier server.
  • the user application 9 of the user requests a connection to the barrage server 10 from the IP address that has been communicated to him in response to his DNS resolution request (step SlO or S21 of FIG. 2). (step S40).
  • connection request is received by a connection request reception and analysis module 11 which determines whether the requested protocol is supported or not by the barrier server (step S41). If this is the case, the module 11 orients the request to the associated application (step S42), that is to say to one or more server application modules 12 to 15, capable of supporting connection requests. users, to generate and return to them an explicit filtering notification (step S49).
  • These modules can support (not limited to) the application protocols http (module 12), FTP (module 13), SMTP (module 14) and Telnet (module 15).
  • connection request reception and analysis module 11 directs the request to an offline filtering notification module 16 (step S43).
  • the request is first transferred to a user identification module 17 which, like the module 52 of FIG. 2, relies on the IP address of the users to find, in the client database 8 , their profile (steps S44 and S45).
  • the role of this module is thus to find information to contact the user indirectly.
  • An example of implementation is thus the recovery of the e-mail address of the user. This However, this example does not limit the possibilities of implementing other information, such as the telephone number, that can be exploited.
  • the module 17 generates a filtering notification message and transmits it to one or more module (s) 16 for transmitting an offline message to the client (step S46).
  • An exemplary implementation is thus an e-mail module capable of sending an electronic message to the user's mail server via the client's e-mail server 18 (steps S47 and S48).
  • the site requested by the client contains potentially filterable content.
  • This case applies in particular to the search engines of websites or images, but also to portals sites not performing a clear separation of the contents (personal pages of Wanadoo for example), or
  • the filtering decision involves a content analysis, or has thus responded to a client's DNS resolution request by the IP address of the secondary filtering system.
  • the client initiates its connection to the secondary filtering system as if it were the requested content server.
  • the secondary filtering system therefore acts as a "classic" proxy server, bridging the client and the final content server.
  • the secondary filtering system by positioning itself as a relay between the client and the final server, is thus able to determine the exact nature of the content requested by the client. From this moment, the "traditional" filtering solutions known from the state of the art can thus be implemented. Among these, we can mention:
  • HTTP filtering systems are an integral part of the state of the art. Nevertheless, a description of an implementation in an HTTP filtering server 20 which is requested during the steps S13 or S24 of FIG. 2 is described with reference to FIG. 4. This example is similar to the DNS filtering shown in FIG. 2, with two exceptions: - the option of using a secondary filtering system is removed, and
  • the filtering is based in this case on the content requested by the users and not only on the name of the server.
  • the user's client application 9 requests a connection to the HTTP filtering server 20 from the IP address that has been communicated to him in response to his DNS resolution request (step S13 or S24 of FIG. ) (step S50).
  • This request is received by an HTTP server module 21 which transmits the user's HTTP request to an identification module 22 (step S51). It extracts from the request the IP address of the user by querying the client base 8 and retrieves the profile associated with this IP address (steps S52 and S53).
  • the identification module 22 submits the request of the user with the profile associated with a first level of analysis consisting of determining whether in the user's profile it is indicated that the latter implies or not HTTP filtering (step S54).
  • the request is directly transmitted to the HTTP relay module 24 (step S55).
  • the request is transmitted to a request filtering module 23 (step S56).
  • the request filtering module 23 confronts the user's request with one or more white lists 28 or with one or more blacklists 27 (step S57).
  • the result of this confrontation is analyzed to determine whether the query should be filtered or not based on this result (step S58).
  • the request is returned to a sub-module 261 of an HTTP response module 26, which constructs a filtered HTTP response (step S59).
  • the HTTP relay module 24 transmits, to the HTTP servers 30 having the content requested in the request, the HTTP request in order to obtain an HTTP response (steps S61 and S62).
  • the module 24 transmits the HTTP response (with the user profile at the origin of the request) to a response filtering module 25 (step S63).
  • the response filtering module confronts the response with one or more white lists 28 or one or more blacklists 27 (step S64).
  • the steps S65 and S66 are identical to the steps S58 and S59 respectively, the only difference being that it is the HTTP response that is considered here.
  • the response contains only information that can be transmitted to the user, it is sent as it is to the sub-module 262 of the HTTP response module 26 which will transmit it to the user without modification (step S67).
  • the response module 26 transmits an HTTP compliant response to the HTTP server module 21 (step S68) which transmits the response to the client software 9 of the user initiating the request (step S69).
  • the invention therefore proposes an optimized filtering solution which relies on a first level of filtering based on the domain name protocol or DNS, and which makes it possible to call only, if necessary, more precise analysis systems. like HTTP filtering for example.
  • the invention thus advantageously uses the central position of the DNS protocol to establish a first level of filtering, thus effectively applying to the majority of Internet protocols.
  • the very high performance of this DNS protocol improves filter performance while reducing sizing costs.
  • This invention is also compatible with the standards and standards in force.
  • the invention is also distinguished by its simplicity of implementation and its scalability. Indeed, the configuration of the DNS of the customers is done in the majority of the cases automatically when they are connected, by means of traditional protocols like DHCP or PPP. It is thus easy to modify this configuration centrally so that customers use the invention in place of their local DNS server. Finally, the application framework of the invention is not limited to the protocols and contexts recognized at present, but also to any new protocol and context that can be created from the moment this protocol or context is based on the DNS protocol. An example of this genericity of the invention is thus the ENUM protocol.

Abstract

The invention concerns a filtering system and method for controlling access to content servers (40) by a user (1) from a computer terminal (2; 3; 4) sending a DNS resolution request to obtain a reply containing the IP address of the content server. The filtering method is characterized in that it includes the following steps: determining the user's profile (1) from data of the domain name resolution request emitted by the computer terminal (2; 3; 4) to verify whether a filtering of contents is defined in said profile; b) in case of negative verification, authorizing the domain name resolution request and reply; c) in case of positive verification, comparing the domain name present in the request and/or in the reply with a list of domain names predefined based of the profile of the user (1) of the computer terminal (2; 3; 4); d) filtering the domain name resolution request or reply when the result of the comparison indicates that the domain name present in the request or in the reply should be filtered, said filtering including one of the following two steps: d1) blocking the request or the reply and sending a notification of filtering to the user (1), or d2) sending the request or the reply to a secondary filtering device (20).

Description

PROCEDE DE FILTRAGE PAR COUPLAGE MULTI-PROTOCOLAIRE SUR LA BASE DU PROTOCOLE DNS MULTI-PROTOCOLAR COUPLING FILTERING PROCESS BASED ON THE DNS PROTOCOL
Domaine de l'inventionField of the invention
L'invention se rapporte aux systèmes de filtrage qui permettent de contrôler l'accès à des contenus hébergés sur des serveurs auxquels les utilisateurs ont accès à partir d'un terminal informatique via un réseau informatique tel que le réseau Internet.The invention relates to filtering systems that control access to content hosted on servers to which users have access from a computer terminal via a computer network such as the Internet.
Art antérieurPrior art
Face à la banalisation de l'accès à Internet et à la multiplicité des contenus disponibles sur ce média, le contrôle et le filtrage de l'accès à ces contenus est devenu aujourd'hui une nécessité, soit dans le cadre familial ou éducatif, afin d'empêcher des enfants mineurs d'accéder à des contenus pornographiques ou illégaux, soit dans le cadre professionnel, afin de cantonner aux besoins définis par l'entreprise l'usage des ressources Internet ou Intranet.Faced with the trivialization of access to the Internet and the multiplicity of content available on this medium, the control and filtering of access to these contents has become a necessity today, either in the family or educational context, so to prevent underage children from accessing pornographic or illegal content, either in the professional context, in order to limit the use of Internet or Intranet resources to the needs defined by the company.
Parmi les solutions de filtrage de contenu, deux types de solutions coexistent aujourd'hui.Two types of content filtering solutions coexist today.
Le premier concerne des solutions basées sur l'installation d'un logiciel sur le terminal du client. Ces solutions présentent pour avantage principal de filtrer de nombreux protocoles, mais sont complexes à déployer et à maintenir. Le deuxième type se rapporte à des solutions basées sur l'utilisation de serveurs proxy (également appelés serveurs mandataires). Ces serveurs centralisent l'ensemble des accès aux ressources de l'Internet et/ou de l'Intranet en provenance des postes clients. Ces solutions sont relativement faciles à déployer et à maintenir, et offrent un excellent niveau de filtrage. En revanche, elles supportent rarement d'autres protocoles que Ie protocole HTTP ("HyperText TransfertThe first concerns solutions based on the installation of software on the client's terminal. These solutions have the main advantage of filtering many protocols, but are complex to deploy and maintain. The second type relates to solutions based on the use of proxy servers (also called proxy servers). These servers centralize all access to Internet and / or Intranet resources from client computers. These solutions are relatively easy to deploy and maintain, and provide an excellent level of filtering. On the other hand, they rarely support other protocols than the HTTP protocol ("HyperText Transfert
Protocol") et présentent des performances moyennes pour un coût élevé.Protocol ") and have average performance at a high cost.
Dans le cas des solutions basées sur l'utilisation d'un serveur proxy, le filtrage de contenu peut reposer sur l'analyse de Ia requête : le filtrage est effectué en fonction d'informations envoyées par l'utilisateur, typiquement un nom de serveur ou une URI requêtée ("Uniform Ressource Identifier"). Il peut également reposer sur l'analyse de la réponse : le filtrage est effectué en fonction de la réponse du serveur, typiquement les méta-informations qui accompagnent la réponse ("header" HTTP par exemple) et l'objet demandé lui-même.In the case of solutions based on the use of a proxy server, the content filtering may be based on the analysis of the request: the filtering is performed according to information sent by the user, typically a server name or a query URI ("Uniform Resource Identifier"). It can also be based on the analysis of the response: the filtering is done according to the response of the server, typically the meta-information that accompanies the response ("header" HTTP for example) and the requested object itself.
Naturellement, l'analyse de la requête émise est la plus simple, la moins consommatrice de ressource et la plus rapide en terme de latence pour l'utilisateur. Aussi ce mode est-il privilégié dans toutes les solutions de filtrages de contenu (même lorsqu'il s'agit d'une solution d'analyse de réponse). Concrètement, lorsqu'une requête est présentée, l'outil de filtrage :Naturally, the analysis of the transmitted request is the simplest, the least resource consuming and the fastest in terms of latency for the user. This mode is therefore preferred in all content filtering solutions (even when it is a response analysis solution). In concrete terms, when a query is presented, the filtering tool:
- Identifie la requête, c'est-à-dire détermine quel type de filtrage doit s'appliquer.- Identifies the request, that is, determines what type of filtering should apply.
- Retrouve/vérifie le nom de domaine du serveur distant ou plus généralement I1URI.- Find / verify the domain name of the remote server or more generally I 1 URI.
- Recherche dans sa base interne si I1URI doit être filtrée ou non.- Search in its internal base if I 1 URI must be filtered or not.
- Applique le résultat de sa recherche.- Apply the result of his search.
La première est une opération potentiellement complexe et coûteuse (accès au Système d'Information dans le cas d'une entreprise). La deuxième étape est généralement ignorée ou mal appliquée par les outils de filtrage et, dans la troisième étape, la base interne contient majoritairement des noms de domaine et des adresses IP plutôt que des URI complètes.The first is a potentially complex and expensive operation (access to the Information System in the case of a company). The second step is usually ignored or misapplied by the filtering tools, and in the third step, the internal database contains mostly domain names and IP addresses rather than full URIs.
Comme pour l'analyse de requête, le filtrage de contenu basé sur l'analyse de la réponse doit préalablement identifier la réponse pour déterminer le type de filtrage à appliquer. Ensuite l'outil exécute un moteur de règles de filtrage. Il s'agit du cœur du système de filtrage. Les techniques utilisées sont plus ou moins complexes et représentent un véritable savoir-faire technique qui consiste à maîtriser aussi bien la qualité des filtrages opérés que les temps de réponse.As with query analysis, content filtering based on response analysis must first identify the response to determine the type of filtering to apply. Then the tool runs a filter rule engine. This is the heart of the filtering system. The techniques used are more or less complex and represent a real technical know-how which consists in controlling both the quality of the filtering performed and the response time.
Lorsque le système de filtrage juge qu'un contenu est inapproprié, il peut appliquer :When the filtering system deems that content is inappropriate, it may apply:
- Un blocage de l'accès à la ressource Internet : une erreur applicative ("404 Forbiden" pour HTTP) est envoyée à l'utilisateur pour le prévenir du blocage. - Un blocage partiel à la ressource Internet ; il peut s'agir de supprimer certaines parties de l'objet jugées inutiles, consommatrices de ressources ou potentiellement dangereuses (virus, PopUp, Banner, ...). L'utilisateur n'est généralement pas averti de la modification.- A blocking of access to the Internet resource: an application error ("404 Forbiden" for HTTP) is sent to the user to prevent it from blocking. - Partial blockage to the Internet resource; it can be to delete some parts of the object deemed unnecessary, resource-consuming or potentially dangerous (viruses, PopUp, Banner, ...). The user is usually not notified of the change.
- Un accès dégradé à la ressource Internet ; par exemple, la bande passante pour accéder à l'objet est limitée. L'utilisateur n'est pas averti de la limitation appliquée.- Degraded access to the Internet resource; for example, the bandwidth to access the object is limited. The user is not aware of the limitation applied.
Souvent le filtrage de contenu se confond avec du contrôle d'accès. C'est souvent le cas pour les protocoles autres que HTTP. Ainsi, par exemple, le filtrage des flux "peer to peer" (P2P) consiste aujourd'hui à en limiter l'accès par utilisateur ou groupe d'utilisateurs.Often, content filtering is confused with access control. This is often the case for protocols other than HTTP. Thus, for example, peer-to-peer (P2P) stream filtering now consists of limiting access by user or group of users.
Concernant les systèmes de filtrage basés sur des serveurs proxy, les principales limites de ces systèmes sont : - La latence induite par ces solutions. Par exemple, les systèmes de filtrage HTTP nécessitent de rompre l'ensemble des connexions TCP ("Transmission Application Protocol") pour effectuer une analyse des contenus, ce qui a pour impact d'augmenter le temps de traitement donc de diminuer la qualité de service perçue par les utilisateurs.Concerning filtering systems based on proxy servers, the main limitations of these systems are: - The latency induced by these solutions. For example, HTTP filtering systems need to break all the TCP ("Transmission Application Protocol") connections to perform content analysis, which has the effect of increasing the processing time and thus reducing the quality of service. perceived by users.
- L'inefficacité intrinsèque de ces systèmes. En effet, le pourcentage de contenus filtrés est évalué en moyenne à moins de 5% de l'ensemble des contenus accèdes. Hors, les systèmes de filtrage actuels impliquent d'analyser l'ensemble du trafic, ce qui implique un traitement inutile pour 95% des requêtes.- The intrinsic inefficiency of these systems. Indeed, the percentage of filtered content is evaluated on average less than 5% of all content accessed. Excluding, current filtering systems involve analyzing all traffic, which implies unnecessary processing for 95% of requests.
- La faible tenue en charge. Ces systèmes présentent en effet des performances réduites, ce qui implique des coûts importants dans le cas où le nombre de clients est élevé.- The low resistance in load. These systems have in fact reduced performance, which implies significant costs in the case where the number of customers is high.
- Le faible nombre de protocoles supportés par le filtrage de contenu. La plupart des solutions existantes sont en effet mono-protocoles et reposent uniquement sur HTTP. Quelques rares solutions étendent également le filtrage de contenus à des protocoles comme FTP ("File Transfert Protocol") ou SMTP ("Simple Mail Transfert Protocol"). Objet et description succincte de l'invention- The low number of protocols supported by content filtering. Most existing solutions are indeed mono-protocols and rely only on HTTP. Few solutions also extend content filtering to protocols such as FTP ("File Transfer Protocol") or SMTP ("Simple Mail Transfer Protocol"). Object and brief description of the invention
La présente invention a pour but de remédier aux inconvénients précités et de proposer une solution de filtrage qui permet de traiter la quasi-totalité des demandes d'accès à des serveurs de contenus, et ce d'une manière optimisée, c'est-à-dire en utilisant un concept reposant sur l'analyse et le filtrage graduel et multi-protocolaire des requêtes des clients. Ce but est atteint grâce à un procédé de filtrage pour le contrôle de l'accès à des contenus par un utilisateur à partir d'un terminal informatique comprenant des moyens pour envoyer des requêtes de demandes de contenus à des serveurs de contenus accessibles via un réseau de communication, l'accès aux serveurs de contenus comprenant une étape préalable de résolution de nom de domaine DNS comportant l'envoi d'une requête de résolution DNS à partir du terminal informatique pour obtenir une réponse contenant l'adresse IP du serveur de contenus correspondant au nom de domaine indiqué dans la requête, caractérisé en ce qu'il comprend les étapes suivantes: a) détermination du profil de l'utilisateur à partir des données de la requête de résolution de nom de domaine émise par le terminal informatique pour vérifier si un filtrage des contenus est défini dans ledit profil, b) en cas de vérification négative, autorisation de la requête et de la réponse de résolution de nom de domaine, c) en cas de vérification positive, comparaison du nom de domaine présent dans la requête et/ou dans la réponse avec une liste de noms de domaine prédéfinie en fonction du profil de l'utilisateur du terminal informatique, d) filtrage de la requête ou de la réponse de résolution de nom de domaine lorsque le résultat de la comparaison indique que le nom de domaine présent dans la requête ou dans la réponse doit être filtré, ledit filtrage comprenant l'une des deux étapes suivantes; dl) le blocage de la requête ou de Ia réponse et l'envoi d'une notification de filtrage à l'utilisateur, ou d2) le renvoi de la requête ou de la réponse vers un dispositif de filtrage secondaire.The present invention aims to overcome the aforementioned drawbacks and to propose a filtering solution that can handle almost all requests for access to content servers, and this in an optimized manner, that is to say -describe using a concept based on the analysis and the gradual and multi-protocol filtering of client requests. This goal is achieved by a filtering method for controlling access to content by a user from a computer terminal comprising means for sending requests for content requests to content servers accessible via a network. communication system, access to the content servers comprising a prior step of DNS domain name resolution comprising the sending of a DNS resolution request from the computer terminal to obtain a response containing the IP address of the content server corresponding to the domain name indicated in the request, characterized in that it comprises the following steps: a) determining the profile of the user from the data of the domain name resolution request issued by the computer terminal to verify if content filtering is defined in the profile, b) in case of negative verification, authorization of the request and the response of res olution of domain name, c) in case of positive verification, comparison of the domain name present in the request and / or in the response with a list of predefined domain names according to the profile of the user of the computer terminal, d ) filtering the query or the domain name resolution response when the result of the comparison indicates that the domain name present in the request or in the response is to be filtered, said filtering comprising one of the following two steps; dl) blocking the request or response and sending a filtering notification to the user, or d2) returning the request or response to a secondary filtering device.
L'invention permet ainsi de filtrer les demandes d'accès, non plus au niveau du protocole utilisé pour obtenir le contenu, mais au niveau des résolutions DNS.The invention thus makes it possible to filter the access requests, no longer at the level of the protocol used to obtain the content, but at the level of the DNS resolutions.
Dans le cas où le filtrage DNS s'avère insuffisant, l'invention permet de déléguer les requêtes nécessitant une analyse précise (et uniquement ces requêtes) à des systèmes de filtrage traditionnels comme des serveurs applicatifs relais (proxies HTTP, FTP, etc.). L'invention permet ainsi :In the case where DNS filtering proves to be insufficient, the invention makes it possible to delegate requests requiring precise analysis (and only these requests) to traditional filtering systems such as relay application servers (HTTP proxies, FTP, etc.). . The invention thus makes it possible:
- De filtrer de manière extrêmement performante la majorité des requêtes sur la base du protocole DNS. Ce filtrage s'applique donc a l'ensemble des protocoles applicatifs reposant sur les résolutions DNS (soit la quasi-totalité des protocoles Internet), et la proportion des requêtes pouvant être ainsi filtrées est évaluée à 99% des requêtes totales.- Extremely efficient filtering of the majority of requests based on the DNS protocol. This filtering therefore applies to all application protocols based on DNS resolutions (ie almost all Internet protocols), and the proportion of queries that can be filtered is estimated at 99% of total requests.
- De notifier à un client qu'il a été filtré à l'aide du serveur de barrage.- Notify a client that it has been filtered using the barrage server.
- De rediriger de manière transparente les requêtes restantes et nécessitant un traitement plus précis vers des serveurs relais applicatifs capables d'analyser le contenu demandé par les clients. Ce mécanisme permet d'offrir une précision du filtrage équivalente aux solutions existant sur le marché, en levant toutefois l'ensemble des contraintes de performances de ces solutions, puisque ces équipements ne traiteront que la proportion de requêtes restantes (soit environ 1% du trafic).- Seamlessly redirect the remaining queries requiring more precise processing to application relay servers capable of analyzing the content requested by clients. This mechanism makes it possible to offer a filtering accuracy equivalent to existing solutions on the market, while removing all of the performance constraints of these solutions, since these devices will only process the proportion of remaining requests (ie around 1% of the traffic ).
Dans l'étape d), le filtrage comprend en outre une étape d3) de filtrage partiel consistant à supprimer une partie des informations contenues dans la réponse de résolution de nom de domaine transmise au terminal de l'utilisateur, ce qui permet d'autoriser le client à poursuivre la connexion mais avec un accès limité aux seuls contenus auxquels il a le droit d'accéder.In step d), the filtering further comprises a partial filtering step d3) of removing part of the information contained in the domain name resolution response transmitted to the user's terminal, thereby permitting the client to continue the connection but with limited access to only the content to which he has the right to access.
Dans l'étape dl), la notification de filtrage est directement transmise à l'utilisateur au moyen d'un message applicatif reprenant Ie protocole de communication utilisé ou indirectement au moyen d'un message envoyé à l'utilisateur hors connexion, ce qui permet dans tous les cas de retourner à l'utilisateur un message expliquant l'interdiction d'accès, soit en utilisant le protocole de contenu utilisé si celui-ci est standard, soit par un système de notification annexe, comme un e-mail ou un SMS, ce qui permet notifier une interdiction d'accès à un client pour tous les protocoles qui ne peuvent être pris en charge.In step d1), the filtering notification is directly transmitted to the user by means of an application message containing the communication protocol used or indirectly by means of a message sent to the offline user, which allows in all the in case of returning to the user a message explaining the prohibition of access, either by using the content protocol used if it is standard, or by an additional notification system, such as an e-mail or an SMS, this which allows notifying a client access ban for all protocols that can not be supported.
A cet effet, l'invention concerne également un serveur de barrage comprenant des moyens applicatifs réagissant à des demandes de connexion pour renvoyer un message de notification de filtrage, chaque moyen applicatif pouvant supporter un protocole applicatif déterminé, ledit serveur de barrage comprenant en outre des moyens (i.e. instructions de programme d'ordinateurs) pour vérifier si le protocole applicatif utilisé dans la demande de connexion correspond à un des protocoles applicatifs supportés par les moyens applicatifs et pour extraire, à partir de l'adresse IP de l'utilisateur émetteur de la demande de connexion, une information permettant de contacter l'utilisateur de manière indirecte et pour envoyer un message de notification de filtrage en utilisant ladite information, en cas de vérification négative.To this end, the invention also relates to a barrier server comprising application means responsive to connection requests for returning a filtering notification message, each application means being able to support a specific application protocol, said barrier server further comprising means (ie computer program instructions) for checking whether the application protocol used in the connection request corresponds to one of the application protocols supported by the application means and for extracting, from the IP address of the sending user of the connection request, information for indirectly contacting the user and for sending a filtering notification message using said information, in case of negative verification.
L'invention concerne encore un serveur de filtrage de nom de domaine DNS destiné à recevoir une requête de résolution de nom de domaine DNS émises à partir d'un terminal informatique d'un utilisateur, caractérisé en ce qu'il comprend des moyens (i.e. instructions de programme d'ordinateurs):The invention also relates to a DNS domain name filtering server intended to receive a DNS domain name resolution request issued from a user's computer terminal, characterized in that it comprises means (ie computer program instructions):
- pour déterminer le profil de l'utilisateur à partir des données de la requête de résolution de nom de domaine émise par le terminal informatique et pour vérifier si un filtrage des contenus est défini dans ledit profil,to determine the profile of the user from the data of the domain name resolution request sent by the computer terminal and to check if a content filtering is defined in said profile,
- pour autoriser la requête et la réponse de résolution de nom de domaine en cas de vérification négative,- to allow the request and the response of resolution of domain name in case of negative verification,
- pour comparer le nom de domaine présent dans la requête et/ou dans la réponse avec une liste de noms de domaine prédéfinie en fonction du profil de l'utilisateur, en cas de vérification positive, etto compare the domain name present in the request and / or in the response with a list of predefined domain names according to the profile of the user, in case of a positive verification, and
- pour filtrer Ia requête ou la réponse de résolution de nom de domaine lorsque le résultat de la comparaison indique que le nom de domaine présent dans la requête ou dans la réponse doit être filtré. Le serveur de filtrage de nom de domaine comprend en outre des moyens pour bloquer Ia requête ou la réponse et pour renvoyer une réponse de résolution de nom de domaine contenant l'adresse IP d'un serveur de barrage tel que décrit précédemment, ledit serveur de barrage envoyant une notification de filtrage à l'utilisateur.- to filter the query or the domain name resolution response when the result of the comparison indicates that the domain name present in the request or in the response must be filtered. The domain name filtering server further comprises means for blocking the request or the response and for returning a domain name resolution response containing the IP address of a barrage server as previously described, said barrage server sending a filtering notification to the user.
Le serveur de filtrage de nom de domaine comprend en outre des moyens pour renvoyer la requête ou la réponse vers un dispositif de filtrage secondaire.The domain name filtering server further comprises means for returning the request or response to a secondary filtering device.
Comme pour le procédé de filtrage décrit ci-dessus, le serveur de filtrage de nom de domaine permet de traiter la majorité des requêtes de demande de contenus, et ce de manière optimisée par un premier niveau de filtrage DNS simple et rapide car indépendant du protocole utilisé dans la demande de contenus. La précision du filtrage est en outre conservée avec la possibilité de rediriger les seules requêtes nécessitant un filtrage plus précis sur des serveurs de filtrage secondaires.As for the filtering method described above, the domain name filtering server makes it possible to process the majority of content request requests, and this is optimized by a first level of simple and fast DNS filtering because it is independent of the protocol used in the content request. The accuracy of the filtering is further preserved with the ability to redirect the only requests requiring more precise filtering on secondary filtering servers.
L'invention concerne enfin un système de filtrage pour le contrôle de l'accès à des contenus par un utilisateur à partir d'un terminal informatique, ledit système comprenant un serveur de filtrage de nom de domaine DNS tel que décrit précédemment, un serveur de barrage et un ou plusieurs serveurs de filtrage secondaires.Finally, the invention relates to a filtering system for controlling access to content by a user from a computer terminal, said system comprising a DNS domain name filtering server as described above, a server of barrage and one or more secondary filtering servers.
Brève description des dessinsBrief description of the drawings
D'autres caractéristiques et avantages de l'invention ressortiront de la description suivante de modes particuliers de réalisation de l'invention, donnés à titre d'exemples non limitatifs, en référence aux dessins annexés, sur lesquels:Other characteristics and advantages of the invention will emerge from the following description of particular embodiments of the invention, given by way of non-limiting examples, with reference to the appended drawings, in which:
- la figure 1 est une vue schématique globale d'un mode de réalisation du système de filtrage DNS selon l'invention,FIG. 1 is a schematic global view of an embodiment of the DNS filtering system according to the invention,
- la figure 2 est un schéma fonctionnel d'un serveur de filtrage DNS conformément à un mode de réalisation de l'invention, - la figure 3 est un schéma fonctionnel d'un serveur de barrage conformément à un mode de réalisation de l'invention,FIG. 2 is a block diagram of a DNS filtering server according to one embodiment of the invention; FIG. 3 is a block diagram of a barrier server according to one embodiment of the invention; ,
- Ia figure 4 est un schéma fonctionnel d'un serveur de filtrage secondaire,FIG. 4 is a block diagram of a secondary filtering server,
- la figure 5 est une vue schématique d'un système de filtrage de contenus selon l'art antérieur. Description détaillée des modes de réalisation de l'invention- Figure 5 is a schematic view of a content filtering system according to the prior art. DETAILED DESCRIPTION OF THE EMBODIMENTS OF THE INVENTION
La présente invention propose de lever les limitations des solutions de filtrage de l'art antérieur en créant un système de filtrage hybride s'appuyant sur les systèmes de serveurs proxy existants, mais aussi et surtout sur les systèmes de nom de domaine ou DNS (acronyme du terme anglais "Domain Name System" ou "Domain Name Service").The present invention proposes to remove the limitations of the filtering solutions of the prior art by creating a hybrid filtering system based on the existing proxy server systems, but also and especially on domain name systems or DNS (acronym the English term "Domain Name System" or "Domain Name Service").
En effet, l'accès à un serveur sur Internet (serveur Web, serveur vidéo, serveur de messagerie...) s'effectue après une résolution DNS permettant de traduire sa dénomination facilement mémorisable et intelligible pour un être humain (par exemple "www.wanadoo.fr") en une adresse IP permettant la connexion réelle du poste client vers ce serveur (par exemple "193.252.122.103").Indeed, access to a server on the Internet (web server, video server, mail server ...) is done after a DNS resolution to translate its name easily rememberable and intelligible to a human being (for example "www .wanadoo.fr ") in an IP address allowing the actual connection of the client station to this server (for example" 193.252.122.103 ").
Le protocole DNS est ainsi utilisé comme sous-couche préalable à la quasi-totalité des protocoles applicatifs existants aujourd'hui sur Internet.The DNS protocol is thus used as a sub-layer prior to almost all the application protocols existing today on the Internet.
Il présente par ailleurs des performances extrêmement élevées. Cette position le rend donc à priori très adapté pour des solutions de filtrage d'accès.It also has extremely high performance. This position therefore makes it very suitable for access filtering solutions.
L'invention se propose d'apporter une approche nouvelle aux mécanismes de filtrage Web existants, en proposant un système combinant un filtrage initial DNS associé, le cas échéant, à un filtrage sur d'autres protocoles (ex. HTTP).The invention proposes to bring a new approach to existing Web filtering mechanisms by proposing a system combining an initial DNS filtering associated, if necessary, with filtering on other protocols (eg HTTP).
Le modèle DNS est défini par le standard IEETF 13 via les RFC 1034 et 1035. L'objectif du modèle DNS est de définir un espace de nommage cohérent des ressources Internet, permettant d'établir une correspondance entre un nom et une adresse IP à un instant donné.The DNS model is defined by the IEETF standard 13 via RFCs 1034 and 1035. The purpose of the DNS model is to define a coherent namespace for Internet resources, allowing a match between a name and an IP address to be mapped. given moment.
Le modèle DNS repose sur un système arborescent, capable de supporter une forte croissance de charge et permettant à chaque organisation de gérer son espace d'adressage. Dans ce système arborescent, chaque nœud est un domaine, et chaque domaine est également un sous domaine (à l'exception du serveur racine).The DNS model is based on a tree system, capable of supporting high load growth and allowing each organization to manage its address space. In this tree system, each node is a domain, and each domain is also a subdomain (with the exception of the root server).
Les serveurs gérant ce modèle se divisent en trois groupes fonctionnels : - Des serveurs autoritaires, chargés de gérer les domaines. Ces serveurs sont dits "itératifs", c'est-à-dire qu'ils ne répondent qu'aux questions portant sur les zones qu'ils gèrent.The servers managing this model are divided into three functional groups: - Authoritative servers, responsible for managing domains. These servers are said to be "iterative", that is, they only answer questions about the areas they manage.
- Des serveurs intermédiaires, appelés également caches DNS ou serveurs DNS relais. Ces serveurs, optionnels, ont pour but de stocker les requêtes les plus demandées afin d'accélérer les temps de résolution DNS.- Intermediate servers, also called DNS caches or DNS relay servers. These servers, optional, aim to store the most requested requests in order to accelerate DNS resolution times.
- Des serveurs locaux, prenant en charge les requêtes des utilisateurs. Ces serveurs sont dits "récursifs", c'est-à-dire qu'ils sont capables d'interroger l'ensemble de l'arborescence DNS afin de résoudre une requête d'un client.- Local servers, supporting user requests. These servers are called "recursive", that is, they are able to query the entire DNS tree to resolve a request from a client.
Pour un internaute, le seul serveur DNS visible est son serveur DNS local (DNS récursif). Ce serveur se charge de récupérer l'adresse IP du serveur demandé et de la retransmettre à l'internaute. Lorsqu'un internaute tente de se connecter à un site en HTTP par l'intermédiaire d'une requête de demande de contenu sous forme d'une URL ("Uniform Ressource Locator") dans son navigateur (par exemple, «www.francetelecom.com/sous-partie/index.html»), la connexion s'effectue en deux temps. Le navigateur effectue une résolution DNS afin d'obtenir l'adresse IP du serveur. Cette requête est adressée au serveur local, qui se charge de transmettre si nécessaire la requête à d'autres serveurs. Puis, une fois l'adresse IP obtenue, le navigateur se connecte au serveur HTTP, lui transmet la requête de demande de contenu, récupère le contenu et le délivre à l'internaute. La requête de résolution DNS ne contient que le nom du serveur demandé (dans l'exemple, «www.francetelecom.com»). La nature exacte du contenu demandé n'est transmise qu'au sein de la requête de demande de contenu HTTP (dans l'exemple, «/sous partie/index.html»).For a user, the only visible DNS server is its local DNS server (recursive DNS). This server is responsible for retrieving the IP address of the requested server and retransmitting it to the user. When a user tries to connect to a site in HTTP through a request for content request in the form of a URL ("Uniform Resource Locator") in his browser (for example, "www.francetelecom. com / subpart / index.html "), the connection is made in two stages. The browser performs a DNS resolution to obtain the IP address of the server. This request is sent to the local server, which is responsible for transmitting the request if necessary to other servers. Then, once the IP address obtained, the browser connects to the HTTP server, transmits the request for content request, retrieves the content and delivers it to the user. The DNS resolution request contains only the name of the requested server (in the example, "www.francetelecom.com"). The exact nature of the requested content is transmitted only within the HTTP content request request (in the example, "/ subpart / index.html").
Ce modèle de connexion est commun à la majorité des protocoles : HTTP, WAP ("Wireless Application Protocol"), FTP ("File Transfert Protocol", SMTP ("Simple Mail Transfert Protocol"), IRC ("Internet Relay Chat"), RTSP ("Real Time Streaming Protocol"), etc.This connection model is common to the majority of protocols: HTTP, WAP ("Wireless Application Protocol"), FTP ("File Transfer Protocol", SMTP ("Simple Mail Transfer Protocol"), IRC ("Internet Relay Chat"), RTSP ("Real Time Streaming Protocol"), etc.
Aujourd'hui, toutes les solutions de filtrage reposent uniquement sur l'analyse et le filtrage lors de Ia connexion au serveur HTTP (analyse requête HTTP) et non lors de la résolution DNS préalable. La présente invention propose : - la réalisation d'un système de filtrage primaire, travaillant sur les noms de domaines et basé sur le protocole DNS;Today, all filtering solutions rely solely on the analysis and filtering when connecting to the HTTP server (HTTP request scan) and not during the previous DNS resolution. The present invention provides: - the realization of a primary filtering system, working on domain names and based on the DNS protocol;
- la réalisation d'un système de barrage, capable de retourner un message d'erreur à un client quel que soit le protocole utilisé; - la définition d'un mécanisme de délégation du filtrage vers des filtres secondaires dans le cas où le système de filtrage primaire s'avère insuffisant;- The realization of a dam system, able to return an error message to a client regardless of the protocol used; - the definition of a mechanism for delegation of filtering to secondary filters in the case where the primary filtering system proves to be insufficient;
- la réalisation de systèmes de filtrages secondaires, travaillant sur la notion de contenu et basés sur des protocoles applicatifs comme HTTP, FTP ou SMTP.- The realization of secondary filtering systems, working on the concept of content and based on application protocols such as HTTP, FTP or SMTP.
L'invention peut ainsi être représentée par :The invention can thus be represented by:
- Un dispositif de filtrage DNS. Ce dispositif peut se comporter comme un serveur DNS relais (proxy DNS), comme un serveur DNS récursif (substitut du serveur DNS client) ou comme un serveur DNS autoritaire. Ces différents modes de fonctionnement permettent de positionner l'invention en coupure des flux DNS à un endroit quelconque de l'architecture DNS.- A DNS filtering device. This device can behave like a relay DNS server (DNS proxy), as a recursive DNS server (substitute for the DNS server client) or as an authoritative DNS server. These different modes of operation make it possible to position the invention as a cut-off of DNS flows at any point in the DNS architecture.
- Un dispositif de barrage, dont le but est de renvoyer un message d'erreur aux clients ayant effectué une requête qui n'est pas autorisée.- A barrier device, the purpose of which is to return an error message to clients who have made a request that is not allowed.
- Des dispositifs de filtrage secondaires, capables d'analyser d'autres protocoles comme HTTP, FTP, WAP, etc.- Secondary filtering devices, capable of analyzing other protocols such as HTTP, FTP, WAP, etc.
Comme décrit plus loin en détails, ces trois types de dispositifs peuvent être mis en œuvre au sein de serveurs dédiés. Le dispositif de barrage et les dispositifs de filtrage secondaires n'ont pas besoin d'être placés en coupure des flux des clients, et peuvent être positionnés à un endroit quelconque d'une architecture réseau.As described later in detail, these three types of devices can be implemented within dedicated servers. The barrier device and the secondary filtering devices do not need to be placed at a break from the client streams, and can be positioned at any point in a network architecture.
Principe de filtrage DNS Par souci de simplification, un exemple de filtrage conformément à l'invention est décrit dans le cas où le système de filtrage DNS est implémenté sous forme de relais entre les clients et leur serveur DNS récursif. Cet exemple n'est toutefois pas limitatif des cas de mises en oeuvre possibles, l'invention pouvant être mise en œuvre : - en remplacement du serveur DNS récursif des clients, - ou insérée à un endroit quelconque de la chaîne de résolution DNS en fonction du contexte de déploiement.Principle of DNS filtering For the sake of simplification, an example of filtering according to the invention is described in the case where the DNS filtering system is implemented in the form of a relay between the clients and their recursive DNS server. This example is however not limiting to possible implementation cases, the invention can be implemented: - instead of the DNS server recursive customers, - or inserted anywhere in the DNS resolution chain depending on the deployment context.
Le cas de mise en oeuvre où l'invention se situe entre les clients et leur serveur DNS récursif est présenté sur la figure 1. Dans le système représenté en figure 1, un utilisateur 1 effectue une requête de résolution DNS à partir d'un terminal informatique comprenant des moyens de connexion à un réseau informatique tel que le réseau Internet. A titre d'exemple, l'utilisateur peut disposer d'un ordinateur personnel 2, d'un assistant personnel numérique communicant 3 (PDA communicant) ou d'un téléphone mobile 4 (ex. téléphone GPRS ou UMTS). Suivant l'exemple considéré ici, l'utilisateur accède tout d'abord à un serveur DNS relais 5 dans lequel le filtrage DNS propre à l'invention est mis en œuvre (i.e. le serveur DNS relais 5 étant ici utilisé comme le serveur de filtrage de nom de domaine DNS de l'invention). Le serveur DNS relais 5 est placé entre le terminal informatique de l'utilisateur et le serveur DNS local récursif 6, ce dernier ayant accès à des serveurs DNS autoritaires 7 chargés de répondre aux requêtes du serveur local récursif 6. De façon bien connue, les contenus auxquels l'utilisateur 1 souhaite accéder par une requête de résolution DNS à partir d'un terminal informatique sont hébergés sur des serveurs situés à divers endroits du réseau informatique. Par souci de simplification, tous ces serveurs de contenus, comprenant notamment des serveurs HTTP, sont matérialisés sur la figure 1 par un serveur de contenus 40.The implementation case where the invention lies between the clients and their recursive DNS server is shown in FIG. 1. In the system represented in FIG. 1, a user 1 performs a DNS resolution request from a terminal. computer including means for connection to a computer network such as the Internet. For example, the user may have a personal computer 2, a communicating digital personal assistant 3 (communicating PDA) or a mobile telephone 4 (eg GPRS telephone or UMTS). According to the example considered here, the user first accesses a relay DNS server 5 in which the DNS filtering specific to the invention is implemented (ie the relay DNS server 5 being used here as the filtering server DNS domain name of the invention). The relay DNS server 5 is placed between the user's computer terminal and the recursive local DNS server 6, the latter having access to authoritative DNS servers 7 responsible for responding to requests from the recursive local server 6. In a well-known manner, the content that user 1 wants to access by a DNS resolution request from a computer terminal are hosted on servers located at various locations on the computer network. For simplicity, all these content servers, including HTTP servers, are shown in Figure 1 by a content server 40.
Le système de l'invention comprend en outre un serveur de barrage 10 et un serveur de filtrage secondaire 20 dont le fonctionnement sera décrit plus loin en détail.The system of the invention further comprises a barrier server 10 and a secondary filtering server 20 whose operation will be described later in detail.
Comme on peut le voir sur la figure 1, le serveur de filtrage DNS 5 de l'invention reçoit et filtre toutes les requêtes de résolution de nom de domaine 41 envoyées pour obtenir une adresse IP. A cet égard, il est capable de filtrer les accès quel que soit le protocole demandé ensuite. Une réponse 42 est ensuite envoyée. Comme décrit plus loin en détail, en fonction de cette réponse, il y a redirection automatique vers Ie serveur de contenu 40, vers le serveur de barrage 10 ou vers Ie serveur de filtrage secondaire 20. La majorité du trafic 43 est autorisée, et ne rencontre alors plus de système de filtrage (gain en coûts, en performance et en qualité de service). Une majorité des demandes restantes 44 est bloquée. Seule une petite partie du trafic restant 45 demande une analyse plus précise et s'appuie alors sur des systèmes de filtrage secondaires.As can be seen in FIG. 1, the DNS filtering server 5 of the invention receives and filters all the domain name resolution requests 41 sent to obtain an IP address. In this respect, it is able to filter access regardless of the protocol requested next. A response 42 is then sent. As described in detail below, depending on this response, there is automatic redirection to the content server 40, to the barrage server 10 or to the secondary filtering server 20. The majority of the traffic 43 is authorized, and not then meets more filtering system (gain in costs, performance and quality of service). A majority of the remaining 44 requests are blocked. Only a small part of the remaining traffic 45 requires a more precise analysis and then relies on secondary filtering systems.
La figure 5 présente de manière simplifiée un exemple d'architecture de filtrage HTTP faisant partie de l'état de l'art et comprenant un serveur DNS 105 destiné à recevoir les requêtes de résolution de nom de domaine 108 envoyées par un utilisateur 101 au moyen d'un terminal (un ordinateur personnel 102, assistant personnel numérique communicant 103 ou un téléphone mobile 104) pour obtenir une adresse IP en réponse 109. Les contenus accessibles par tout type de flux (HTTP, FTP, P2P, etc.) sont matérialisés par un serveur de contenus 107. Un serveur de filtrage 106 supportant le protocole HTTP est destiné à filtrer les demandes de contenus envoyées par l'utilisateur 101 une fois l'adresse IP obtenue. A la différence du serveur de filtrage DNS de l'invention, on peut voir que le serveur de filtrage dit "traditionnel" ne se positionne qu'en coupure des flux qu'il est capable d'appréhender, ici les flux HTTP 110. Les autres flux 112 ne sont pas filtrés. En outre, ce type de filtrage nécessite d'analyser toutes les requêtes concernant les flux 110 qu'il appréhende avant d'en autoriser une majorité 111.FIG. 5 schematically illustrates an example of a state-of-the-art HTTP filtering architecture comprising a DNS server 105 for receiving the domain name resolution requests 108 sent by a user 101 by means of a terminal (a personal computer 102, communicating digital personal assistant 103 or a mobile phone 104) to obtain an IP address in response 109. The contents accessible by any type of flow (HTTP, FTP, P2P, etc.) are materialized by a content server 107. A filtering server 106 supporting the HTTP protocol is intended to filter the content requests sent by the user 101 after obtaining the IP address obtained. Unlike the DNS filtering server of the invention, it can be seen that the so-called "traditional" filtering server only positions itself in breaks of the streams that it is able to apprehend, here the HTTP streams 110. other streams 112 are not filtered. In addition, this type of filtering requires the analysis of all the requests concerning the streams 110 that it apprehends before authorizing a majority 111.
On décrit tout d'abord, en relation avec la figure 2, les étapes mises en œuvre lors d'une opération de filtrage DNS conformément à l'invention.First of all, in relation with FIG. 2, the steps implemented during a DNS filtering operation in accordance with the invention are described.
Un mode de mise en oeuvre de l'invention est le contrôle parental dans le cadre d'un fournisseur d'accès Internet (FAI). Dans ce contexte, l'invention s'appuie sur une étape préliminaire qui est l'authentîfication de l'utilisateur lors de sa connexion.One embodiment of the invention is parental control within the framework of an Internet Service Provider (ISP). In this context, the invention is based on a preliminary step which is the authentication of the user during his connection.
Cette étape, connue de l'état de l'art, consiste à identifier l'utilisateur lors de l'initialisation de sa connexion et à stocker ses paramètres de connexion (adresse IP) dans une base de données. Cette étape permet aux différents éléments de l'invention de retrouver le profil d'un client sur la base de son adresse IP en interrogeant une base de clients 8.This step, known from the state of the art, consists of identifying the user during the initialization of his connection and storing his connection parameters (IP address) in a database. This step allows the various elements of the invention to find the profile of a client based on its IP address by querying a customer base 8.
En outre, les clients peuvent mettre à jour de manière dynamique leur profil via un serveur HTTP disposant d'une interface Web sous réserve de fournir un mot de passe qui pourra être indifféremment identique ou différent de celui utilisé pour la demande d'authentification. Cette solution permet ainsi à plusieurs utilisateurs de se servir d'une même machine avec des profils différents.In addition, customers can dynamically update their profile via an HTTP server with a Web interface provided that they provide a password that may be the same or different from the one used for the authentication request. This solution allows several users to use the same machine with different profiles.
Le système de filtrage DNS se compose de six grands blocs fonctionnels ; - un module serveur DNS 51, chargé de recevoir les requêtes des clients et de renvoyer les réponses (filtrées ou non) à ces clients; - un module d'identification 52 chargé d'extraire de la base des clients 8 le profil du client à l'origine de la requête reçue. Ce profil contiendra des informations (comme par exemple « enfant », « adolescent », « adulte ») qui permettront au service de déterminer le niveau de filtrage à adopter. Ce module s'appuie sur la base de clients présentée dans l'étape préalable d'identification.The DNS filtering system consists of six large functional blocks; a DNS server module 51, responsible for receiving the requests from the clients and for returning the responses (filtered or not) to these clients; an identification module 52 responsible for extracting from the database of the clients 8 the profile of the client at the origin of the request received. This profile will contain information (such as "child", "teenager", "adult") that will allow the service to determine the level of filtering to be adopted. This module is based on the customer base presented in the preliminary identification step.
L'obtention du profil du client se fait en recherchant dans la base clients le profil attaché à l'adresse IP d'origine de la requête DNS. Cette association adresse IP/Profll n'est donc valable que pendant la durée de la connexion de l'utilisateur. Par ailleurs, les utilisateurs ont la possibilité dans ce contexte de modifier dynamiquement le profil attaché à leur adresse IP afin de basculer d'un profil "parent" à un profil "enfant" par exemple. - un module de filtrage des requêtes 53. Ce module analyse la demande du client et se sert du profil récupéré durant l'étape précédente pour déterminer si la requête doit être autorisée, filtrée ou bien si elle requiert un système de filtrage secondaire. Pour cela, le module d'analyse s'appuie sur une ou plusieurs listes blanches ou listes noires contenant les noms de domaine autorisés et ceux interdits.Obtaining the client profile is done by searching the client database for the profile attached to the original IP address of the DNS request. This IP address / Profll association is only valid for the duration of the user's connection. In addition, users have the possibility in this context to dynamically change the profile attached to their IP address in order to switch from a "parent" profile to a "child" profile for example. - A query filtering module 53. This module analyzes the client's request and uses the profile retrieved during the previous step to determine whether the request must be authorized, filtered or if it requires a secondary filtering system. For this, the analysis module relies on one or more white lists or black lists containing authorized and prohibited domain names.
Chaque profil se verra associé des listes spécifiques en fonction du service voulu. A titre d'exemple non limitatif des possibilités de mise en oeuvre, un profil "enfant" se verra plutôt associer une ou plusieurs listes blanches. Un profil "adolescent" se verra associé une ou plusieurs listes noires. Enfin, un profil "adulte" ne se verra pas filtré.Each profile will be associated with specific lists according to the desired service. As a nonlimiting example of the implementation possibilities, a profile "child" will be rather associated with one or more white lists. A "teenager" profile will be associated with one or more blacklists. Finally, an "adult" profile will not be filtered.
D'une manière générale, on rattachera à chaque profil une liste d'informations comprenant :In general, we will attach to each profile a list of information including:
- les informations dont l'accès est autorisé pour ce profil;- the information whose access is allowed for this profile;
- les informations dont l'accès est interdit pour ce profil; - les informations nécessitant une analyse à l'aide d'un filtrage secondaire afin de déterminer si elles sont accessibles ou non par ce profil; un module relais DNS 54 transmettant la requête du client vers les serveurs DNS capables de la résoudre;- the information whose access is forbidden for this profile; - information requiring analysis using secondary filtering to determine if they are accessible or not by this profile; a DNS relay module 54 transmitting the client's request to the DNS servers capable of solving it;
- un module de filtrage des réponses 55. Ce module analyse la réponse des serveurs DNS, et se sert du profil récupéré par le module d'identification pour déterminer si la réponse doit être autorisée, filtrée ou bien si elle requiert un système de filtrage secondaire. Pour cela, le module d'analyse s'appuie sur une ou plusieurs listes blanches ou listes noires contenant les noms de domaines autorisés et ceux interdits. Ces listes pourront être identiques ou différentes à celles du module d'analyse des requêtes, le procédé restant le même dans les deux cas; - un module de génération des réponses 56 comprenant quatre sous modules 561 à 564.a response filtering module 55. This module analyzes the response of the DNS servers, and uses the profile retrieved by the identification module to determine whether the response must be authorized, filtered or if it requires a secondary filtering system. . For this, the analysis module relies on one or more white lists or black lists containing authorized and prohibited domain names. These lists may be identical or different from those of the query analysis module, the process remaining the same in both cases; a response generation module 56 comprising four sub-modules 561 to 564.
Ces différents modules ainsi que les étapes mises en oeuvre sont représentés sur la figure 2. Les modules 51 à 56 peuvent être implémentés au sein d'un serveur situé dans la chaîne de résolution DNS comme le serveur DNS relais 5 de la figure 1.These different modules as well as the steps implemented are shown in FIG. 2. The modules 51 to 56 can be implemented within a server located in the DNS resolution chain, such as the relay DNS server 5 of FIG.
Exemple de mise en œuyre d'un dispositif ou serveur de filtrage DNS Les étapes présentées sur la figure 2 sont les suivantes: Un utilisateur effectue, à partir d'une application cliente 9 (ex. navigateur) installée sur son terminal, une requête de résolution DNS.Example of implementation of a DNS filtering device or server The steps shown in FIG. 2 are as follows: A user makes a request from a client application 9 (eg browser) installed on its terminal. DNS resolution.
Cette demande est reçue par le module serveur DNS 51, qui implémente le protocole défini par le standard DNS (étape Sl).This request is received by the DNS server module 51, which implements the protocol defined by the DNS standard (step S1).
La requête de l'utilisateur est transmise au module d'identificationThe request of the user is transmitted to the identification module
52. Celui-ci extrait de la demande l'adresse IP de l'utilisateur (étape S2). Le module d'identification 52 interroge la base de clients 8 afin de retrouver le profil de l'utilisateur associé à l'adresse IP extraite (étape S3). Le module d'identification 52 récupère le profil associé à cette adresse IP, par exemple "enfant", "adolescent" ou "adulte". Dans le cas où la base de clients 8 ne fournirait pas le profil associé à une adresse (cas d'erreur), le module d'identification 52 peut appliquer un profil par défaut52. This extracts from the request the IP address of the user (step S2). The identification module 52 queries the client base 8 to find the profile of the user associated with the extracted IP address (step S3). The identification module 52 retrieves the profile associated with this IP address, for example "child", "teenager" or "adult". In the case where the customer base 8 does not provide the profile associated with an address (error case), the identification module 52 can apply a default profile
(par exemple, le profil "enfant") (étape S4). Le module d'identification 52 soumet la requête de l'utilisateur avec le profil associé à un premier niveau d'analyse consistant à déterminer si dans le profil de l'utilisateur il est indiqué que celui-ci implique ou non un filtrage (étape S5). Lorsque le profil associé à la requête n'implique aucune analyse(for example, the "child" profile) (step S4). The identification module 52 submits the request of the user with the profile associated with a first level of analysis consisting in determining whether in the profile of the user it is indicated that it implies or not a filtering (step S5 ). When the profile associated with the query does not involve any analysis
(cas du profil "adulte" dans notre exemple), aucune analyse supplémentaire n'est appliquée et la requête est transmise au module relais DNS 54 (étape S6).(case of the "adult" profile in our example), no further analysis is applied and the request is transmitted to the DNS relay module 54 (step S6).
Lorsque le profil associé à la requête nécessite une analyse (cas des profils "enfant" et "adolescent" dans notre exemple), la demande est transmise à un module de filtrage des requêtes 53 (étape S7).When the profile associated with the request requires analysis (case of "child" and "teenager" profiles in our example), the request is transmitted to a request filtering module 53 (step S7).
Le module de filtrage des requêtes 53 confronte la requête de l'utilisateur à une ou plusieurs listes blanches 58 (cas du profil "enfant") ou à une ou plusieurs listes noires 57 (cas du profil "adolescent") (étape S8). Dans le cas du profil "enfant", les listes blanches contiennent de manière exhaustive les noms de domaines qu'un enfant est autorisé à consulter. Dans le cas du profil adolescent, les listes noires contiennent les noms de domaines qu'un adolescent n'a pas le droit de consulter, ainsi que les noms de domaine nécessitant une analyse par un système de filtrage secondaire. Il s'agit au cours de cette étape de filtrer principalement les requêtes de résolution DNS dites "normales" (i.e. demandes d'obtention d'une adresse IP à partir d'un nom de domaine).The query filtering module 53 confronts the user's request with one or more white lists 58 (case of the "child" profile) or with one or more blacklists 57 (case of the "teenager" profile) (step S8). In the case of the "child" profile, the white lists contain in an exhaustive manner the domain names that a child is allowed to consult. In the case of the adolescent profile, blacklists contain the domain names that a teenager is not allowed to view, as well as domain names that require analysis by a secondary filtering system. During this step, it is mainly to filter the so-called "normal" DNS resolution requests (i.e. requests to obtain an IP address from a domain name).
Le résultat de cette confrontation est transmis à un premier niveau de filtrage qui détermine si la requête doit être filtrée ou non en fonction de ce résultat (étape S9).The result of this confrontation is transmitted to a first level of filtering which determines whether the request must be filtered or not according to this result (step S9).
Lorsque la requête de l'utilisateur n'est pas autorisée (nom de domaine ne faisant pas partie des listes blanches dans le cas d'un profil "enfant", ou nom de domaine faisant partie des listes noires pour un profil "adolescent"), la requête est renvoyée au sous module 561 du module de réponse DNS 56, qui construit un message DNS contenant l'adresse IP d'un serveur de barrage (étape SlO).When the user's request is not allowed (domain name that is not part of the white lists in the case of a "child" profile, or domain name that is part of the blacklist for a "teenager" profile) , the request is returned to the sub-module 561 of the DNS response module 56, which constructs a DNS message containing the IP address of a barrier server (step SlO).
Lorsque la requête de l'utilisateur n'est pas explicitement interdite, elle est transmise à un second niveau de filtrage (étape SIl) pour déterminer si elle doit faire l'objet ou non d'un filtrage secondaire (étape S12). Lorsque la requête de l'utilisateur coïncide avec un nom de domaine impliquant un système de filtrage secondaire, la requête est renvoyée au sous module 562 du module de réponse DNS 56, qui construit un message DNS contenant l'adresse IP du système de filtrage secondaire (étape S13). Lorsque la requête de l'utilisateur est autorisée, elle est transmise au module relais DNS 54 (étape S14).When the request of the user is not explicitly prohibited, it is transmitted to a second level of filtering (step SI1) to determine whether or not it should be the subject of secondary filtering (step S12). When the user's request coincides with a domain name involving a secondary filtering system, the request is returned to the sub-module 562 of the DNS response module 56, which constructs a DNS message containing the IP address of the secondary filtering system. (Step S13). When the request of the user is authorized, it is transmitted to the DNS relay module 54 (step S14).
Le module relais DNS 54 transmet, aux serveurs DNS autoritaires 7, via éventuellement un serveur DNS local récursif (non représenté), la requête de résolution DNS conformément au protocole et au standard DNS afin d'obtenir une résolution DNS (étape S15).The DNS relay module 54 transmits, to the authoritative DNS servers 7, possibly via a recursive local DNS server (not shown), the DNS resolution request according to the protocol and the DNS standard in order to obtain a DNS resolution (step S15).
Une réponse de résolution DNS est obtenue en retour et est reçue par le module relais DNS 54 (étape S16).A DNS resolution response is obtained in return and is received by the DNS relay module 54 (step S16).
Le module 54 transmet la réponse de résolution DNS (avec le profil utilisateur à l'origine de la demande) au module de filtrage des réponses 55 (étape S18).The module 54 transmits the DNS resolution response (with the user profile causing the request) to the response filtering module 55 (step S18).
Le module de filtrage des réponses confronte la réponse à une ou plusieurs listes blanches 58 (cas du profil "enfant") ou à une ou plusieurs listes noires 57 (cas du profil "adolescent") (étape S19). Ces listes peuvent être identiques ou différentes de celles utilisées lors de l'étape S8. Cette étape présente l'intérêt de pouvoir filtrer les requêtes de résolution dites inverses (demandes d'obtention de nom à partir d'une adresse IP), ainsi que de filtrer partiellement certaines réponses comme par exemple, de manière non limitative, la suppression d'informations contenues dans les champs additionnels de la réponse DNS. Les étapes S20 à S24 sont identiques aux étapes S9 à S13 respectivement à la seule différence que c'est la réponse de résolution DNS qui est ici considérée.The response filtering module confronts the response with one or more white lists 58 (case of the "child" profile) or with one or more blacklists 57 (case of the "teenager" profile) (step S19). These lists may be identical to or different from those used in step S8. This step has the advantage of being able to filter the so-called reverse resolution requests (requests for obtaining a name from an IP address), as well as partially filtering certain responses, for example, in a non-limiting manner, the deletion of information in the additional fields of the DNS response. The steps S20 to S24 are identical to the steps S9 to S13 respectively, the only difference being that it is the DNS resolution response that is considered here.
Lorsque la réponse n'est pas directement interdite et ne nécessite pas de système de filtrage secondaire, elle est transmise à un troisième niveau de filtrage (étape S25) qui va déterminer si la réponse nécessite ou non un filtrage partiel des informations contenues dans cette réponseWhen the response is not directly prohibited and does not require a secondary filtering system, it is transmitted to a third level of filtering (step S25) which will determine whether or not the response requires partial filtering of the information contained in this response.
(étape S26).(Step S26).
Lorsque la réponse ne contient que des informations pouvant être transmises à l'utilisateur, elle est envoyée telle quelle au sous module 563 du module de réponse DNS 56 qui la transmettra à l'utilisateur sans modification (étape S27). Lorsque la réponse contient des informations ne devant pas être transmises à l'utilisateur, les informations ne devant pas être transmises sont supprimées, et la requête est transmise au sous module 564 du module de réponse qui générera une réponse ne contenant que les informations autorisées (étape S28). Ces informations peuvent concerner n'importe quels paramètres transmissibles par le protocole DNS (champs DNS additionnels, types de réponses spécifiques comme un enregistrement ENUM ("tElephone NUmber Mapping"), numéro SIP ("Session Initiation Protocol"), etc.). On peut par exemple supprimer toute information autre que les correspondances (ex. noms de domaine <=> adresses IP) dans le cas d'un profil enfant.When the response contains only information that can be transmitted to the user, it is sent as it is to the sub-module 563 of the DNS response module 56 which will transmit it to the user without modification (step S27). When the response contains information not to be transmitted to the user, the information not to be transmitted is deleted, and the request is transmitted to the sub-module 564 of the response module which will generate a response containing only the authorized information ( step S28). This information may relate to any parameters that can be transmitted by the DNS protocol (additional DNS fields, specific response types such as an ENUM record ("TElephone NUmber Mapping"), Session Initiation Protocol (SIP) number, etc.). For example, you can delete any information other than the correspondences (eg domain names <=> IP addresses) in the case of a child profile.
Le module de réponse transmet une réponse conforme au protocole DNS au module serveur DNS 51 (étape S29) qui transmet la réponse au logiciel client 9 de l'utilisateur à l'origine de la requête (étape S30). Le filtrage partiel (étape S28) constitue une fonctionnalité intéressante, car il permet d'étendre le filtrage DNS à de nouveaux usages comme ENUM (Protocole et technologie basée sur le portage des numéros de téléphonie E.164 sur le protocole DNS qui permet d'utiliser les serveurs et le protocole DNS afin de stocker les informations de joignabilité d'un utilisateur et d'offrir ainsi un système universel de mise en relation d'utilisateurs quel que soit le moyen d'accès (téléphonie traditionnelles, mobile ou IP, messagerie, visiophonie, etc.)). Un exemple d'utilisation dans le cadre d'ENUM consiste ainsi à restreindre l'accès aux numéros de téléphone personnels selon le profil du demandeur. On notera lors de l'étape S3 que le profil de filtrage est obtenu à partir de l'adresse IP à l'origine de la requête. La détermination du profil de filtrage dépendra du contexte de mise en oeuvre de l'invention.The response module transmits a DNS-compliant response to the DNS server module 51 (step S29) which transmits the response to the client software 9 of the user initiating the request (step S30). Partial filtering (step S28) is an interesting feature because it makes it possible to extend DNS filtering to new uses such as ENUM (protocol and technology based on the porting of E.164 telephony numbers on the DNS protocol which allows use the servers and the DNS protocol to store the reachability information of a user and thus offer a universal system for connecting users regardless of the means of access (traditional telephony, mobile or IP, messaging , videophone, etc.)). An example of ENUM use is to restrict access to personal phone numbers according to the profile of the requester. It will be noted in step S3 that the filtering profile is obtained from the IP address at the origin of the request. The determination of the filter profile will depend on the context of implementation of the invention.
En contexte Intranet/Entreprise et Internet, il est possible de n'avoir qu'un seul profil applicable à tous les utilisateurs. L'adresse IP à l'origine de la requête n'est dans ce cas pas utilisée, et cette étape d'identification est alors optionnelle.In Intranet / Enterprise and Internet context, it is possible to have only one profile applicable to all users. The IP address at the origin of the request is not used in this case, and this identification step is then optional.
En contexte Intranet/Entreprise, les profils peuvent être associés à des plages d'adresses IP déterminées. Ainsi, un profil (par exemple, accès limité à des sites professionnels) sera associé à une plage d'adresses IP A (192.168.1.x par exemple). Un utilisateur se connectant au réseau d'entreprise avec son identifiant et son mot de passe se verra ainsi allouer une adresse IP en fonction de la plage d'adresses correspondant à son profil.In the Intranet / Enterprise context, profiles can be associated with specific IP address ranges. Thus, a profile (for example, limited access to professional sites) will be associated with a range of IP addresses A (192.168.1.x for example). A user connecting to the corporate network with his username and password will be allocated an IP address according to the address range corresponding to its profile.
Le mécanisme précédent peut être étendu à une solution multi- entreprises, chaque entreprise étant caractérisée par une plage d'adresses IP donnée.The previous mechanism can be extended to a multi-enterprise solution, each enterprise being characterized by a given IP address range.
Toujours en contexte Intranet/Entreprise, il est possible de stocker de manière dynamique le profil d'un utilisateur associé à une adresse IP. Pour cela, nous nous appuierons sur des solutions standard existantes comme les serveurs DHCP ("Dynamic Host Configuration Protocol") en Intranet, les serveurs Radius en contexte Internet ou enfin des bases de sessions utilisateurs.Still in the Intranet / Enterprise context, it is possible to dynamically store the profile of a user associated with an IP address. To do this, we will rely on existing standard solutions such as Dynamic Host Configuration Protocol (DHCP) servers in Intranet, Radius servers in an Internet context or user session databases.
Les deux solutions ci-dessus sont adaptées au cas où un utilisateur est associé à une machine physique pendant une période donnée. En contexte Internet grand public, il peut s'avérer nécessaire de proposer un mécanisme reposant sur l'identification de l'utilisateur (par exemple lorsque des parents et des enfants utilisent la même machine pour se connecter à Internet).The two solutions above are adapted to the case where a user is associated with a physical machine during a given period. In a consumer Internet context, it may be necessary to provide a mechanism based on user identification (for example when parents and children use the same machine to connect to the Internet).
Pour cela, il est nécessaire de rajouter une information caractérisant l'utilisateur aux solutions précédentes. Cette information pourra être mise à jour dynamiquement par l'utilisateur à l'aide de mots de passe associés: - par l'installation d'un logiciel sur le terminal client, permettant de sélectionner un profil (parent/enfant) à associer à l'identifiant de la machine et mettant à jour dynamiquement cette information au niveau des serveurs DHCP, Radius ou autres, ou - par l'utilisation d'une application Web accessible par les utilisateurs, permettant de sélectionner un profil (parent/enfant) à associer à l'identifiant de la machine et mettant à jour dynamiquement cette information au niveau des serveurs DHCP, Radius ou autres. Dans tous les cas, ces solutions d'identification du profil utilisateur reposent sur des mécanismes connus.For this, it is necessary to add information characterizing the user to previous solutions. This information can be updated dynamically by the user using associated passwords: - by installing software on the client terminal, allowing to select a profile (parent / child) to associate with the user. identifier of the machine and dynamically updating this information at the level of DHCP, Radius or other servers, or - by the use of a Web application accessible by the users, allowing to select a profile (parent / child) to associate to the identifier of the machine and dynamically updating this information at the DHCP, Radius or other servers. In all cases, these user profile identification solutions rely on known mechanisms.
Principe du serveur de barragePrinciple of the dam server
La multiplicité des protocoles supportés par l'invention (qu'ils soient standards ou non) ainsi que l'impossibilité de transmettre un message d'erreur explicite par le biais du protocole DNS a conduit à la création d'un serveur de barrage. Ce serveur de barrage a pour objectif d'indiquer au client à l'origine de la requête qu'il a été filtré, et ceci de manière conviviale.The multiplicity of protocols supported by the invention (whether standard or not) as well as the impossibility of transmitting an explicit error message via the DNS protocol has led to the creation of a dam server. This dam server aims to indicate to the client at the origin of the request that it has been filtered, and this in a user-friendly manner.
Le serveur de barrage intervient lorsque le dispositif ou serveur de filtrage DNS détecte qu'un client doit être filtré. Ce serveur retourne à l'utilisateur l'adresse IP du serveur de barrage en lieu et place de l'adresseThe barrage server intervenes when the DNS filtering appliance or server detects that a client needs to be filtered. This server returns to the user the IP address of the dam server in place of the address
IP du serveur demandé par le client. Le client établit alors une connexion vers Ie serveur de barrage avec un protocole quelconque.IP of the server requested by the client. The client then establishes a connection to the barrier server with any protocol.
Le rôle du serveur de barrage est de détecter une tentative de connexion du client, ainsi que le protocole applicatif utilisé par ce client. Si le protocole applicatif utilisé par le client est connu et implémenté par le serveur de barrage, le serveur de barrage retourne alors au client un message de filtrage à l'aide de ce protocole. Si le protocole applicatif utilisé par le client est inconnu ou n'est pas implémenté par le serveur de barrage, le serveur de barrage retourne alors au client un message de filtrage à l'aide d'un protocole tiers.The role of the barrage server is to detect a client connection attempt, as well as the application protocol used by this client. If the application protocol used by the client is known and implemented by the barrage server, the barrage server then returns to the client a filtering message using this protocol. If the application protocol used by the client is unknown or not implemented by the barrage server, the barrage server then returns to the client a filter message using a third party protocol.
Parmi les protocoles applicatifs pouvant être utilisés par un client et implémentés par le serveur de barrage, on peut citer : HTTP, WAP, SMTP, FTP, Telnet, Streaming, etc.Among the application protocols that can be used by a client and implemented by the dam server include: HTTP, WAP, SMTP, FTP, Telnet, Streaming, etc.
Le serveur de barrage présente un avantage particulier notamment lorsque le client utilise un protocole inconnu. En effet, dans ce cas, le serveur de barrage implémenté ;The dam server has a particular advantage especially when the client uses an unknown protocol. Indeed, in this case, the dam server implemented;
- Un mécanisme de détection de connexion. Ce mécanisme est similaire à ceux utilisés par les pare-feux (firewalls) ou les systèmes de détection d'intrusion, et consiste à enregistrer toute tentative de connexion sur le serveur de barrage.- A connection detection mechanism. This mechanism is similar to those used by firewalls or intrusion detection systems, and involves logging any connection attempt to the barrage server.
- Un mécanisme de notification de filtrage "hors connexion". Ce mécanisme variera en fonction du cadre de mise en oeuvre de l'invention, mais deux implémentations peuvent être proposées :- An offline filtering notification mechanism. This mechanism will vary depending on the implementation framework of the invention, but two implementations may be proposed:
- De manière générale, un mécanisme de notification par messagerie électronique (e-mail) ou instantanée.- Generally speaking, an e-mail or instant notification mechanism.
- Dans le cadre d'un accès mobile, un mécanisme de notification par SMS (Short Message Service).- In the context of mobile access, an SMS notification mechanism (Short Message Service).
Les adresses de notification du client seront stockées avec le profil du client (Le. accessibles par l'intermédiaire de l'adresse IP à l'origine de la requête). Ainsi, un client à l'origine d'une tentative de connexion filtrée recevra un message lui expliquant que son accès a été bloqué : - De manière directe si le protocole applicatif utilisé est reconnu et implémenté par le serveur de barrage - De manière indirecte, par messagerie électronique ou SMS, si le protocole applicatif utilisé n'est pas reconnu ou n'est pas implémenté par le serveur de barrage.The client's notification addresses will be stored with the client's profile (the .vs accessible via the IP address at the origin of the request). Thus, a client initiating a filtered connection attempt will receive a message explaining that its access has been blocked: - Directly if the application protocol used is recognized and implemented by the dam server - In an indirect way, by electronic mail or SMS, if the application protocol used is not recognized or is not implemented by the barrier server.
Exemple de mise en oeuyre du dispositif ou serveur de barrage On décrit, en relation avec la figure 3, les étapes mises en œuvre dans un serveur de barrage 10 qui est sollicité lors des étapes SlO ou S21 de la figure 2.Example of implementation of the device or dam server is described, in connection with Figure 3, the steps implemented in a barrier server 10 which is requested during steps SlO or S21 of Figure 2.
Au départ, l'application cliente 9 de l'utilisateur demande une connexion au serveur de barrage 10 à partir de l'adresse IP qui lui a été communiquée en réponse à sa requête de résolution DNS (étape SlO ou S21 de la figure 2) (étape S40).Initially, the user application 9 of the user requests a connection to the barrage server 10 from the IP address that has been communicated to him in response to his DNS resolution request (step SlO or S21 of FIG. 2). (step S40).
La demande de connexion est reçue par un module de réception et d'analyse des demandes de connexion 11 qui détermine si le protocole demandé est supporté ou non par le serveur de barrage (étape S41). Si c'est le cas, le module 11 oriente la demande vers l'applicatif associé (étape S42), c'est-à-dire vers un ou plusieurs modules applicatifs serveurs 12 à 15, capables de prendre en charge les demandes de connexions des utilisateurs, de générer et de leur retourner une notification de filtrage explicite (étape S49). Ces modules peuvent supporter (liste non limitative) les protocoles applicatifs http (module 12), FTP (module 13), SMTP (module 14) et Telnet (module 15).The connection request is received by a connection request reception and analysis module 11 which determines whether the requested protocol is supported or not by the barrier server (step S41). If this is the case, the module 11 orients the request to the associated application (step S42), that is to say to one or more server application modules 12 to 15, capable of supporting connection requests. users, to generate and return to them an explicit filtering notification (step S49). These modules can support (not limited to) the application protocols http (module 12), FTP (module 13), SMTP (module 14) and Telnet (module 15).
Si le protocole demandé n'est pas supporté par le serveur de barrage, le module de réception et d'analyse des demandes de connexion 11 oriente la demande vers un module de notification de filtrage hors connexion 16 (étape S43). Dans ce cas, la demande est d'abord transférée à un module d'identification des utilisateurs 17 qui, comme le module 52 de la figure 2, s'appuie sur l'adresse IP des utilisateurs pour retrouver, dans la base de client 8, leur profil (étapes S44 et S45). Le rôle de ce module est ainsi de retrouver une information permettant de contacter l'utilisateur de manière indirecte. Un exemple de mise en oeuvre est ainsi la récupération de l'adresse de messagerie électronique de l'utilisateur. Cet exemple n'est toutefois pas limitatif des possibilités d'implémentation d'autres informations, comme le numéro de téléphone, pouvant être exploitées.If the requested protocol is not supported by the barrage server, the connection request reception and analysis module 11 directs the request to an offline filtering notification module 16 (step S43). In this case, the request is first transferred to a user identification module 17 which, like the module 52 of FIG. 2, relies on the IP address of the users to find, in the client database 8 , their profile (steps S44 and S45). The role of this module is thus to find information to contact the user indirectly. An example of implementation is thus the recovery of the e-mail address of the user. This However, this example does not limit the possibilities of implementing other information, such as the telephone number, that can be exploited.
Le module 17 génère un message de notification de filtrage et le transmet à un ou plusieurs module(s) 16 permettant de transmettre un message hors connexion au client (étape S46). Un exemple de mise en oeuvre est ainsi un module de messagerie, capable d'envoyer un message électronique au serveur de messagerie de l'utilisateur via le serveur de messagerie électronique 18 du client (étapes S47 et S48).The module 17 generates a filtering notification message and transmits it to one or more module (s) 16 for transmitting an offline message to the client (step S46). An exemplary implementation is thus an e-mail module capable of sending an electronic message to the user's mail server via the client's e-mail server 18 (steps S47 and S48).
Principe de filtrage secondaireSecondary filtering principle
Le filtrage secondaire s'applique dans le cas où le filtrage DNS :Secondary filtering applies in the case where DNS filtering:
- a détecté que le site demandé par le client contient des contenus potentiellement filtrables. Ce cas s'applique en particulier aux moteurs de recherche de sites web ou d'images, mais également à des sites portails n'effectuant pas de séparation claire des contenus (pages personnelles de Wanadoo par exemple), ou- has detected that the site requested by the client contains potentially filterable content. This case applies in particular to the search engines of websites or images, but also to portals sites not performing a clear separation of the contents (personal pages of Wanadoo for example), or
- a déterminé que la décision de filtrage implique une analyse de contenu, ou - a ainsi répondu à la requête de résolution DNS d'un client par l'adresse IP du système de filtrage secondaire. Dans ce dernier cas, le client initie sa connexion vers le système de filtrage secondaire comme s'il s'agissait du serveur de contenu demandé. Le système de filtrage secondaire agit donc comme un serveur proxy "classique", en établissant un pont entre le client et le serveur de contenu final.determined that the filtering decision involves a content analysis, or has thus responded to a client's DNS resolution request by the IP address of the secondary filtering system. In the latter case, the client initiates its connection to the secondary filtering system as if it were the requested content server. The secondary filtering system therefore acts as a "classic" proxy server, bridging the client and the final content server.
Le système de filtrage secondaire, en se positionnant comme un relais entre le client et le serveur final, est ainsi capable de déterminer la nature exacte des contenus demandés par le client. A partir de cet instant, les solutions de filtrage "traditionnelles" et connues de l'état de l'art peuvent ainsi être mises en oeuvre. Parmi celles-ci, on peut citer :The secondary filtering system, by positioning itself as a relay between the client and the final server, is thus able to determine the exact nature of the content requested by the client. From this moment, the "traditional" filtering solutions known from the state of the art can thus be implemented. Among these, we can mention:
- Les solutions de filtrage HTTP, utilisant des listes noires ou listes blanches d'URLs, ou encore des solutions d'analyse de contenu;- HTTP filtering solutions, using blacklists or whitelists of URLs, or content analysis solutions;
- Les solutions de filtrage FTP (système de transfert de fichier); - Les solutions de filtrage de courriers électroniques;- FTP filtering solutions (file transfer system); - e-mail filtering solutions;
- Les solutions de filtrage de messageries instantanées; Exemple de mise en œuyre d'un dispositif ou serveur de filtrage secondaire basé sur HTTP- instant messaging filtering solutions; Example of implementing an HTTP-based secondary filtering device or server
Les systèmes de filtrage HTTP font partie intégrante de l'état de l'art. Néanmoins, on décrit, en relation avec la figure 4, un exemple de mise en œuvre dans un serveur de filtrage HTTP 20 qui est sollicité lors des étapes S13 ou S24 de la figure 2. Cet exemple est similaire au filtrage DNS présenté sur la figure 2, à deux exceptions près : - l'option consistant à faire appel à un système de filtrage secondaire est supprimée, etHTTP filtering systems are an integral part of the state of the art. Nevertheless, a description of an implementation in an HTTP filtering server 20 which is requested during the steps S13 or S24 of FIG. 2 is described with reference to FIG. 4. This example is similar to the DNS filtering shown in FIG. 2, with two exceptions: - the option of using a secondary filtering system is removed, and
- le filtrage se base dans ce cas sur le contenu demandé par les utilisateurs et non plus seulement sur le nom du serveur.- the filtering is based in this case on the content requested by the users and not only on the name of the server.
Au départ, l'application cliente 9 de l'utilisateur demande une connexion au serveur de filtrage HTTP 20 à partir de l'adresse IP qui lui a été communiquée en réponse à sa requête de résolution DNS (étape S13 ou S24 de la figure 2) (étape S50). Cette demande est reçue par un module serveur HTTP 21 qui transmet la requête HTTP de l'utilisateur à un module d'identification 22 (étape S51). Celui-ci extrait de la demande l'adresse IP de l'utilisateur en interrogeant la base de clients 8 et récupère le profil associé à cette adresse IP (étapes S52 et S53).Initially, the user's client application 9 requests a connection to the HTTP filtering server 20 from the IP address that has been communicated to him in response to his DNS resolution request (step S13 or S24 of FIG. ) (step S50). This request is received by an HTTP server module 21 which transmits the user's HTTP request to an identification module 22 (step S51). It extracts from the request the IP address of the user by querying the client base 8 and retrieves the profile associated with this IP address (steps S52 and S53).
Le module d'identification 22 soumet la requête de l'utilisateur avec le profil associé à un premier niveau d'analyse consistant à déterminer si dans le profil de l'utilisateur il est indiqué que celui-ci implique ou non un filtrage HTTP (étape S54).The identification module 22 submits the request of the user with the profile associated with a first level of analysis consisting of determining whether in the user's profile it is indicated that the latter implies or not HTTP filtering (step S54).
Lorsque le profil associé à la requête n'implique aucune analyse, la requête est directement transmise au module relais HTTP 24 (étape S55). Lorsque le profil associé à la requête nécessite une analyse, la demande est transmise à un module de filtrage des requêtes 23 (étape S56).When the profile associated with the request does not involve any analysis, the request is directly transmitted to the HTTP relay module 24 (step S55). When the profile associated with the request requires analysis, the request is transmitted to a request filtering module 23 (step S56).
Le module de filtrage des requêtes 23 confronte la requête de l'utilisateur à une ou plusieurs listes blanches 28 ou à une ou plusieurs listes noires 27 (étape S57).The request filtering module 23 confronts the user's request with one or more white lists 28 or with one or more blacklists 27 (step S57).
Le résultat de cette confrontation est analysé pour déterminer si la requête doit être filtrée ou non en fonction de ce résultat (étape S58). Lorsque la requête de l'utilisateur n'est pas autorisée, la requête est renvoyée à un sous module 261 d'un module de réponse HTTP 26, qui construit une réponse HTTP filtrée (étape S59).The result of this confrontation is analyzed to determine whether the query should be filtered or not based on this result (step S58). When the request of the user is not allowed, the request is returned to a sub-module 261 of an HTTP response module 26, which constructs a filtered HTTP response (step S59).
Lorsque la requête de l'utilisateur est autorisée, elle est transmise au module relais HTTP 24 (étape S60).When the request of the user is authorized, it is transmitted to the HTTP relay module 24 (step S60).
Le module relais HTTP 24 transmet, aux serveurs HTTP 30 disposant du contenu demandé dans la requête, la requête HTTP afin d'obtenir une réponse HTTP (étapes S61 et S62).The HTTP relay module 24 transmits, to the HTTP servers 30 having the content requested in the request, the HTTP request in order to obtain an HTTP response (steps S61 and S62).
Le module 24 transmet la réponse HTTP (avec le profil utilisateur à l'origine de la demande) à un module de filtrage des réponses 25 (étape S63).The module 24 transmits the HTTP response (with the user profile at the origin of the request) to a response filtering module 25 (step S63).
Le module de filtrage des réponses confronte la réponse à une ou plusieurs listes blanches 28 ou à une ou plusieurs listes noires 27 (étape S64). Les étapes S65 et S66 sont identiques aux étapes S58 et S59 respectivement à la seule différence que c'est la réponse HTTP qui est ici considérée.The response filtering module confronts the response with one or more white lists 28 or one or more blacklists 27 (step S64). The steps S65 and S66 are identical to the steps S58 and S59 respectively, the only difference being that it is the HTTP response that is considered here.
Lorsque la réponse ne contient que des informations pouvant être transmises à l'utilisateur, elle est envoyée telle quelle au sous module 262 du module de réponse HTTP 26 qui la transmettra à l'utilisateur sans modification (étape S67).When the response contains only information that can be transmitted to the user, it is sent as it is to the sub-module 262 of the HTTP response module 26 which will transmit it to the user without modification (step S67).
Le module de réponse 26 transmet une réponse conforme au protocole HTTP au module serveur HTTP 21 (étape S68) qui transmet la réponse au logiciel client 9 de l'utilisateur à l'origine de la requête (étape S69).The response module 26 transmits an HTTP compliant response to the HTTP server module 21 (step S68) which transmits the response to the client software 9 of the user initiating the request (step S69).
L'invention propose par conséquent une solution de filtrage optimisée qui s'appuie sur un premier niveau de filtrage basé sur le protocole de nom de domaine ou DNS, et qui permet d'appeler uniquement en cas de besoin des systèmes d'analyse plus précis comme du filtrage HTTP par exemple.The invention therefore proposes an optimized filtering solution which relies on a first level of filtering based on the domain name protocol or DNS, and which makes it possible to call only, if necessary, more precise analysis systems. like HTTP filtering for example.
L'invention utilise ainsi avantageusement la position centrale du protocole DNS pour établir un premier niveau de filtrage, s'appliquant ainsi de fait à la majorité des protocoles Internet. Les très hautes performances de ce protocole DNS améliorent les performances du filtrage tout en diminuant les coûts de dimensionnement. Cette invention est par ailleurs compatible avec les standards et normes en vigueur.The invention thus advantageously uses the central position of the DNS protocol to establish a first level of filtering, thus effectively applying to the majority of Internet protocols. The very high performance of this DNS protocol improves filter performance while reducing sizing costs. This invention is also compatible with the standards and standards in force.
L'invention se distingue également par sa simplicité de mise en œuvre et son évolutivité. En effet, la configuration du DNS des clients s'effectue dans la majorité des cas de manière automatique lors de leur connexion, au moyen de protocoles traditionnels comme DHCP ou PPP. Il est ainsi aisé de modifier de manière centralisée cette configuration afin que les clients utilisent l'invention en lieu et place de leur serveur DNS local. Enfin, le cadre d'application de l'invention ne se limite pas aux protocoles et contextes reconnus à l'heure actuelle, mais aussi à tout nouveau protocole et contexte pouvant être créé à partir du moment où ce protocole ou contexte s'appuie sur le protocole DNS. Un exemple de cette généricité de l'invention est ainsi le protocole ENUM. The invention is also distinguished by its simplicity of implementation and its scalability. Indeed, the configuration of the DNS of the customers is done in the majority of the cases automatically when they are connected, by means of traditional protocols like DHCP or PPP. It is thus easy to modify this configuration centrally so that customers use the invention in place of their local DNS server. Finally, the application framework of the invention is not limited to the protocols and contexts recognized at present, but also to any new protocol and context that can be created from the moment this protocol or context is based on the DNS protocol. An example of this genericity of the invention is thus the ENUM protocol.

Claims

REVENDICATIONS
1. Procédé de filtrage pour le contrôle de l'accès à des contenus par un utilisateur (1) à partir d'un terminal informatique (2; 3; 4) comprenant des moyens pour envoyer des requêtes de demandes de contenus à des serveurs de contenus (40) accessibles via un réseau de communication, l'accès aux serveurs de contenus (40) comprenant une étape préalable de résolution de nom de domaine DNS comportant l'envoi d'une requête de résolution DNS à partir dudit terminal informatique pour obtenir une réponse contenant l'adresse IP du serveur de contenus correspondant au nom de domaine indiqué dans la requête, caractérisé en ce qu'il comprend les étapes suivantes: a) détermination du profil de l'utilisateur (1) à partir des données de la requête de résolution de nom de domaine émise par le terminal informatique (2; 3; 4) pour vérifier si un filtrage des contenus est défini dans ledit profil, b) en cas de vérification négative, autorisation de la requête et de la réponse de résolution de nom de domaine, c) en cas de vérification positive, comparaison du nom de domaine présent dans la requête et/ou dans la réponse avec une liste de noms de domaine (57; 58) prédéfinie en fonction du profil de l'utilisateur (1) du terminal informatique (2; 3; 4), d) filtrage de la requête ou de la réponse de résolution de nom de domaine lorsque le résultat de la comparaison indique que le nom de domaine présent dans la requête ou dans la réponse doit être filtré, ledit filtrage comprenant l'une des deux étapes suivantes: dl) le blocage de la requête ou de la réponse et l'envoi d'une notification de filtrage à l'utilisateur (1), ou d2) le renvoi de la requête ou de la réponse vers un dispositif de filtrage secondaire (20).A filtering method for controlling access to content by a user (1) from a computer terminal (2; 3; 4) including means for sending requests for content requests to content (40) accessible via a communication network, access to the content servers (40) comprising a prior step of DNS domain name resolution comprising sending a DNS resolution request from said computer terminal to obtain a response containing the IP address of the content server corresponding to the domain name indicated in the request, characterized in that it comprises the following steps: a) determining the profile of the user (1) from the data of the a domain name resolution request issued by the computer terminal (2; 3; 4) to check if a content filtering is defined in said profile; b) in case of negative verification, authorization of the request and the reply domain name resolution response, c) in case of positive verification, comparison of the domain name present in the request and / or in the response with a list of domain names (57; 58) predefined according to the profile of the user (1) of the computer terminal (2; 3; 4), d) filtering the query or the domain name resolution response when the result of the comparison indicates that the domain name present in the request or in the response must be filtered, said filtering comprising one of the following two steps: dl) blocking the request or response and sending a filtering notification to the user (1), or d2) returning the request or response to a secondary filtering device (20).
2. Procédé selon la revendication 1, caractérisé en ce que, dans l'étape c), le nom de domaine présent dans la requête de résolution de nom de domaine est comparé avec une liste de noms de domaine interdits (57) correspondant à tous les noms de domaine devant être filtrés ou avec une liste de noms de domaine autorisés (58) correspondant aux seuls noms de domaine ne devant pas être filtrés.2. Method according to claim 1, characterized in that, in step c), the domain name present in the domain name resolution request is compared with a list of prohibited domain names (57) corresponding to all domain names to be filtered or with a list of authorized domain names (58) corresponding to the only domain names that should not be filtered.
3. Procédé selon la revendication 1 ou 2, caractérisé en ce que, dans l'étape d), ledit filtrage comprend en outre une étape d3) de filtrage partiel consistant à supprimer une partie des informations contenues dans la réponse de résolution de nom de domaine transmise au terminal (2; 3; 4) de l'utilisateur (1), les informations contenues dans la réponse étant comparées avec une liste d'informations de noms de domaine interdits correspondant à toutes les informations à supprimer dans la réponse ou à une liste d'informations de noms de domaine autorisés correspondant aux seules informations devant figurer dans la réponse.3. Method according to claim 1 or 2, characterized in that, in step d), said filtering further comprises a partial filtering step d3) of removing a part of the information contained in the name resolution response of domain transmitted to the terminal (2; 3; 4) of the user (1), the information contained in the response being compared with a list of prohibited domain name information corresponding to all the information to be deleted in the response or to a list of authorized domain name information corresponding to the only information to be included in the response.
4. Procédé selon l'une quelconque des revendications 1 à 3, caractérisé en ce que, dans l'étape dl), la notification de filtrage est directement transmise à l'utilisateur (1) au moyen d'un message applicatif reprenant le protocole de communication utilisé ou indirectement au moyen d'un message envoyé à l'utilisateur hors connexion.4. Method according to any one of claims 1 to 3, characterized in that, in step dl), the filtering notification is directly transmitted to the user (1) by means of an application message incorporating the protocol used or indirectly through a message sent to the offline user.
5. Serveur de filtrage de nom de domaine DNS (5) destiné à recevoir une requête de résolution de nom de domaine DNS émise à partir d'un terminal informatique (2; 3; 4) d'un utilisateur (1), caractérisé en ce qu'il comprend des moyens (52) pour déterminer le profil de l'utilisateur (1) à partir des données de la requête de résolution de nom de domaine émise par le terminal informatique (2; 3; 4) et pour vérifier si un filtrage des contenus est défini dans ledit profil, des moyens (54) pour autoriser la requête et la réponse de résolution de nom de domaine en cas de vérification négative, des moyens (53) pour comparer le nom de domaine présent dans la requête et/ou dans la réponse avec une liste de noms de domaine prédéfinie (57; 58) en fonction du profil de l'utilisateur, en cas de vérification positive, et des moyens pour filtrer la requête ou la réponse de résolution de nom de domaine lorsque le résultat de Ia comparaison indique que Ie nom de domaine présent dans la requête ou dans Ia réponse doit être filtré. A DNS domain name filtering server (5) for receiving a DNS domain name resolution request issued from a computer terminal (2; 3; 4) of a user (1), characterized in that it comprises means (52) for determining the profile of the user (1) from the data of the domain name resolution request issued by the computer terminal (2; 3; 4) and for checking whether content filtering is defined in said profile, means (54) for authorizing the request and the domain name resolution response in the case of a negative verification, means (53) for comparing the domain name present in the request and / or in the response with a list of predefined domain names (57; 58) according to the profile of the user, in case of positive verification, and means for filtering the request or the domain name resolution response when the result of the comparison indicates that the domain name in the request or in the response must be filtered.
6. Serveur de filtrage de nom de domaine DNS (5) selon la revendication 5, caractérisé en ce qu'il comprend en outre des moyens (561) pour bloquer la requête ou la réponse et pour renvoyer une réponse de résolution de nom de domaine DNS contenant l'adresse IP d'un serveur de barrage (10), ledit serveur de barrage envoyant une notification de filtrage à l'utilisateur.The DNS domain name filtering server (5) according to claim 5, characterized in that it further comprises means (561) for blocking the request or the response and for returning a domain name resolution response. DNS containing the IP address of a barrage server (10), said barrage server sending a filtering notification to the user.
7. Serveur de filtrage de nom de domaine DNS (5) selon la revendication 5 ou 6, caractérisé en ce qu'il comprend en outre des moyens (562) pour renvoyer la requête ou la réponse vers un dispositif de filtrage secondaire (20).The DNS domain name filtering server (5) according to claim 5 or 6, characterized in that it further comprises means (562) for returning the request or response to a secondary filtering device (20) .
8. Programme d'ordinateur pouvant être mis en œuvre par un serveur de filtrage de nom de domaine DNS (5) selon l'une quelconque des revendications 5 à 7, ledit serveur étant destiné à recevoir une requête de résolution de nom de domaine DNS émises à partir d'un terminal informatique (2; 3; 4) d'un utilisateur (1), caractérisé en ce qu'il comprend des instructions pour:A computer program that can be implemented by a DNS domain name filtering server (5) according to any one of claims 5 to 7, said server being adapted to receive a DNS domain name resolution request. issued from a computer terminal (2; 3; 4) of a user (1), characterized in that it comprises instructions for:
- déterminer le profil de l'utilisateur (1) à partir des données de la requête de résolution de nom de domaine émise par le terminal informatique (2; 3; 4) et pour vérifier si un filtrage des contenus est défini dans ledit profil,determining the profile of the user (1) from the data of the domain name resolution request sent by the computer terminal (2; 3; 4) and to check if a content filtering is defined in said profile,
- autoriser la requête et la réponse de résolution de nom de domaine en cas de vérification négative, - comparer le nom de domaine présent dans la requête et/ou dans la réponse avec une liste de noms de domaine prédéfinie (57; 58) en fonction du profil de l'utilisateur, en cas de vérification positive, et- allow the request and the response of resolution of domain name in case of negative verification, - compare the domain name present in the request and / or in the response with a list of predefined domain names (57; 58) according to the profile of the user, in case of positive verification, and
- filtrer la requête ou la réponse de résolution de nom de domaine lorsque le résultat de la comparaison indique que le nom de domaine présent dans la requête ou dans la réponse doit être filtré.- filtering the domain name resolution request or response when the result of the comparison indicates that the domain name present in the request or in the response must be filtered.
9. Système de filtrage pour le contrôle de l'accès à des contenus par un utilisateur (1) à partir d'un terminal informatique (2; 3; 4) comprenant des moyens pour envoyer une requête de demande de contenu à des serveurs de contenus (40) accessibles via un réseau de communication, Ie terminal informatique (2; 3; 4) envoyant, préalablement à l'accès aux serveurs de contenus (40), une requête de résolution de nom de domaine DNS pour obtenir une réponse contenant l'adresse IP du serveur de contenus correspondant au nom de domaine indiqué dans la requête, caractérisé en ce que ledit système comprend en outre un serveur de filtrage de nom de domaine DNS (5) selon l'une des revendications 5 à 7.9. Filtering system for controlling access to content by a user (1) from a computer terminal (2; 3; 4) including means for sending a request for content request to servers contents (40) accessible via a communication network, the computer terminal (2; 3; 4) sending, prior to accessing the content servers (40), a DNS domain name resolution request for a response containing the IP address of the content server corresponding to the domain name indicated in the request, characterized in that said system further comprises a DNS domain name filtering server (5) according to one of claims 5 to 7.
10. Système selon la revendication 9, caractérisé en ce qu'il comprend en outre un serveur de barrage (10) comprenant des moyens applicatifs (12-15) réagissant à des demandes de connexion pour renvoyer un message de notification de filtrage, chaque moyen applicatif pouvant supporter un protocole applicatif déterminé, ledit serveur de barrage comprenant en outre des moyens (11) pour vérifier si le protocole applicatif utilisé dans la demande de connexion correspond à un des protocoles applicatifs supportés par les moyens applicatifs, et des moyens (16, 17) pour extraire, à partir de l'adresse IP de l'utilisateur émetteur de la demande de connexion, une information permettant de contacter l'utilisateur de manière indirecte et pour envoyer un message de notification de filtrage en utilisant ladite information, en cas de vérification négative.10. System according to claim 9, characterized in that it further comprises a barrier server (10) comprising application means (12-15) reacting to connection requests to return a filtering notification message, each means application capable of supporting a specific application protocol, said barrier server further comprising means (11) for checking whether the application protocol used in the connection request corresponds to one of the application protocols supported by the application means, and means (16, 17) for extracting, from the IP address of the user issuing the connection request, information for indirectly contacting the user and for sending a filtering notification message using said information, in case negative verification.
IL Système selon la revendication 10, caractérisé en ce que le serveur de barrage comprend des moyens pour extraire dans une base de données l'adresse électronique de messagerie de l'utilisateur émetteur de la demande de connexion et pour envoyer un message électronique de notification de filtrage à un serveur de messagerie électronique en utilisant l'adresse électronique de messagerie extraite. System according to Claim 10, characterized in that the barrier server comprises means for extracting from a database the e-mail address of the user issuing the connection request and for sending an e-mail notification message. filtering to an email server using the extracted email address.
PCT/FR2006/050461 2005-05-20 2006-05-19 Method for filtering through multi-protocol coupling based on dns protocol WO2007003818A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0505074 2005-05-20
FR0505074 2005-05-20

Publications (1)

Publication Number Publication Date
WO2007003818A1 true WO2007003818A1 (en) 2007-01-11

Family

ID=35593626

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2006/050461 WO2007003818A1 (en) 2005-05-20 2006-05-19 Method for filtering through multi-protocol coupling based on dns protocol

Country Status (1)

Country Link
WO (1) WO2007003818A1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2659652A1 (en) * 2010-12-30 2013-11-06 Verisign, Inc. Method and system for partitioning recursive name servers
CN106550247A (en) * 2016-10-31 2017-03-29 吴俊� The monitoring method of radio and television
CN106657001A (en) * 2016-11-10 2017-05-10 广州赛讯信息技术有限公司 Botnet detection method based on Netflow and DNS blog
EP3264720A1 (en) * 2011-05-24 2018-01-03 Palo Alto Networks, Inc. Using dns communications to filter domain names
US10505985B1 (en) 2016-04-13 2019-12-10 Palo Alto Networks, Inc. Hostname validation and policy evasion prevention

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6266699B1 (en) * 1996-04-17 2001-07-24 Siemens Aktiengesellschaft Control in an intelligent network
US6408336B1 (en) * 1997-03-10 2002-06-18 David S. Schneider Distributed administration of access to information
US20020152286A1 (en) * 2001-04-12 2002-10-17 International Business Machines Corporation Method and apparatus for handling requests for content in a network data processing system
FR2857541A1 (en) * 2003-07-07 2005-01-14 Orange France Communication processing personalization device, has personalization modules selectively activated by base depending on personalized profiles to process communication between user terminal and telecommunication network

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6266699B1 (en) * 1996-04-17 2001-07-24 Siemens Aktiengesellschaft Control in an intelligent network
US6408336B1 (en) * 1997-03-10 2002-06-18 David S. Schneider Distributed administration of access to information
US20020152286A1 (en) * 2001-04-12 2002-10-17 International Business Machines Corporation Method and apparatus for handling requests for content in a network data processing system
FR2857541A1 (en) * 2003-07-07 2005-01-14 Orange France Communication processing personalization device, has personalization modules selectively activated by base depending on personalized profiles to process communication between user terminal and telecommunication network

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2659652A1 (en) * 2010-12-30 2013-11-06 Verisign, Inc. Method and system for partitioning recursive name servers
EP3264720A1 (en) * 2011-05-24 2018-01-03 Palo Alto Networks, Inc. Using dns communications to filter domain names
US10505985B1 (en) 2016-04-13 2019-12-10 Palo Alto Networks, Inc. Hostname validation and policy evasion prevention
US10965716B2 (en) 2016-04-13 2021-03-30 Palo Alto Networks, Inc. Hostname validation and policy evasion prevention
CN106550247A (en) * 2016-10-31 2017-03-29 吴俊� The monitoring method of radio and television
CN106550247B (en) * 2016-10-31 2019-06-07 杭州天时亿科技有限公司 The monitoring method of radio and television
CN106657001A (en) * 2016-11-10 2017-05-10 广州赛讯信息技术有限公司 Botnet detection method based on Netflow and DNS blog

Similar Documents

Publication Publication Date Title
EP2692089B1 (en) Incoming redirection mechanism on a reverse proxy
EP3503508B1 (en) Method for processing requests and proxy server
EP2514167B1 (en) Monitoring method and device
EP1469660B1 (en) Method for controlling communication setup between user selected terminals
FR2801754A1 (en) Double IP address assignment procedure uses configuration file allows resource control across networks of LANs.
EP1562343A1 (en) System and method for user authorization access management at the local administrative domain during the connection of a user to an IP network
WO2006108989A2 (en) Method for controlling the sending of unsolicited voice information
WO2007003818A1 (en) Method for filtering through multi-protocol coupling based on dns protocol
FR2737372A1 (en) DEVICE AND METHOD FOR INTERCONNECTING NETWORKS, IP ROUTER COMPRISING SUCH A DEVICE
WO2013110884A1 (en) System and method for controlling a dns request
FR3058015A1 (en) METHOD FOR DYNAMIC AND INTERACTIVE CONTROL OF A RESIDENTIAL GATEWAY CONNECTED TO A COMMUNICATION NETWORK, CORRESPONDING COMPUTER DEVICE AND PROGRAM
EP2266279B1 (en) Multimedia content sharing via audio-video communication
EP4115582A1 (en) Method and device for detecting the use of an uncertified domain name server
WO2011124810A1 (en) Management of personalized service in an ip network
EP1432213B1 (en) Mediation platform and message transport network
EP4258137A1 (en) Method for distributing file between 3gpp mcdata interconnected systems
EP4115579A1 (en) Method for managing a request to access an internet site from an access device
EP1471714A2 (en) Method and system for redirection on detecting an error in the DNS resolution
WO2022234218A1 (en) Configuration of a terminal
EP3149902A1 (en) Technique for obtaining a policy for routing requests emitted by a software module running on a client device
EP2080404B1 (en) Region descriptor server and method of selecting a wireless network
EP2100430B1 (en) Telecommunication method and system allowing at least two distinct users to access the same information set
FR2893208A1 (en) METHOD AND DEVICE FOR PROVIDING NETWORK IDENTITY FEDERATION ALIAS TO SERVICE PROVIDER
EP3643035A1 (en) Method of control of the obtaining by a terminal of a configuration file
FR2865331A1 (en) Removable digital medium e.g. CD-ROM, stores single policy enforcement point identifier intended to be transmitted to policy decision point server in order to be stored in server corresponding to network address

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

NENP Non-entry into the national phase

Ref country code: RU

WWW Wipo information: withdrawn in national office

Country of ref document: RU

122 Ep: pct application non-entry in european phase

Ref document number: 06794444

Country of ref document: EP

Kind code of ref document: A1