Propos et Commentaires du Climenole

LnS - Modèle de jeu de règles

Présentation commentée d’un jeu de règles.

1- Résumé des deux articles précédents

Dans le premier article nous avons vu les points importants dont il faut tenir compte dans l’élaboration de notre jeu de règles: les adresses IP, l’ Internet Control Messages Protocol, l’User Datagram Protocol et le Transmission Control Protocol.

Dans le second article de cette série nous avons abordé l’édition des règles pour les filtrages logiciel et internet.

Les éléments déjà vu dans les articles précédents nous fournissent donc les matériaux et les moyens pour monter un jeu de règles permettant à votre système d’être furtif, sans fuite et informatif.

Furtif:

Votre ordinateur ne répond à aucune sollicitation en provenance d’internet tel que des balayages par ICMP, l’envoi de datagrammes UDP ou des tentatives sollicitation de votre système en tant que serveur avec des paquets TCP qui ne vous sont pas normalement destinées ou mal formés.

Parmis ces paquets un bon mombre proviennent de restes de connexions précédentes destinées à l’adresse IP dynamique que vous venez d’obtenir, de routeurs mal configurés, de paquets en provenance de “Zombies” et plus rarement de balayages dirigés vers votre adresse IP utilisés pour détecter si cette adresse IP correspond à une machine en opération et en cas de réponse d’un système non-furtif quelles sont les réponses obtenues.

Ces “scans” permettent de déterminer les ports ouverts, fermés, la présence d’un service en écoute et même le type de système d’exploitation en analysant la signature des réponses. Dans d’autres cas des envois massifs de paquets anormaux sont utilisés pour exploiter des faiblesses connues ou possibles de tel ou tel système d’exploitation.

Look’n'Stop est un pare-feu à état (Stateful): les paquets sont analysés en eux-mêmes et selon qu’ils font partie d’une connexion que vous avez initiée, établie entre votre PC et un serveur et faisant partie de la séquence des paquets échangés pour cette connexion.

Un point important à préciser: les “attaques” et les tentatives d’intrusion dirigées contre des ordinateurs personnels sont rares: les “attaques” étant surtout le fait de “Script_kiddies” et les tentatives d’intrusion résultant le plus souvent d’une infection de l’ordinateur par des programmes malveillants d’où l’importance de préserver votre système de toute infection par ces programmes malveillants et l’importance pour le pare-feu d’empêcher tout fuite vers l’extérieur de la part de ces “malwares“.

Votre système étant furtif, vu de l’extérieur, votre adresse Ip ne révèle rien, ni les ports ouverts ou fermés, ni le type de système ni même la présence ou non d’une machine en activité correspondant à cette adresse.

Sans fuites:

Seuls les programmes autorisés peuvent se connecter à internet ou lancer d’autres programmes qui s’y connectent. Le pare-feu identifie la signature du programme, en demande l’autorisation à l’utilisateur, filtre les connexions selon les règles pré-établies et bloque le reste.

À première vue cela ne devrait pas poser de problème et le filtrage de l’intérieur vers l’extérieur est plus une question d’ordre et d’information qu’autre chose. Mais le système n’est pas clos: il est ouvert sur l’extérieur et les connexions établies sur internet échangent des données au cours des connexions via les applications, les mises à jours et les installations de nouveaux programmes.

Les filtrages du pare-feu concernent la couche TCP-IP de liaison, la couche réseau, la couche transport et la couche application. Cependant la protection de look’n'Stop ne s’étend pas jusqu’aux détails des échanges tels que ceux du navigateur avec un site web. Par exemple, le pare-feu autorise le navigateur à se connecter au site en TCP, sur le port distant 80 (HTTP) mais les données et les codes échangés entre ceux-si sont du ressort des paramètres de sécurité du navigateur (cookies, Javascript, redirections, etc.).

Les tests de fuite révèlent les méthodes les plus courantes utilisées par les programmes malveillants pour passer outre au couches de protection: substitution, lancement indirect, accès direct aux couches réseau, injection par DLL, injection de processus, attaque par multiplication d’identificateur de processus, requêtes récursive, etc.

Le filtrage de Look’n'Stop est l’une des couches de protection intérieure de votre système. Le maintient à jour du système d’exploitation, des pilotes et des applications, une configuration correcte des services, un anti-virus à jour et en protection résidente (”On Access”), des protections anti-spywares, des applications dont les paramètres de sécurité sont correctement réglés et possiblement un protecteur d’intégrité tel que System Safety Monitor font aussi parties de ce système de protection par couches.

Il est indispensable de noter que la plupart des problèmes de fuites dépendent de la façon dont les systèmes MS Windows ™ sont conçus: “interdépendances” des programmes, niveaux de permissions, privilèges d’exécution, etc. Ce n’est pas le rôle d’un pare-feu de servir de béquille aux méthodes boiteuses d’un système d’exploitation à moins de vouloir transformer les fonctions d’un pare-feu en redresseur de système d’exploitation tordu.

Mais le facteur le plus important est l’utilisateur en tant qu’administrateur de son système. C’est la pratique du Safe-Hex qui assure le bon dosage de sécurité et de fonctionnalité. Être informé est à la base de la pratique du Safe-Hex et les notifications et les journaux du pare-feu vous en procurent une bonne partie.

Sans négliger l’importance d’avoir de bon outils il est bon de rappeler à la suite de Bruce Schneier que la sécurité n’est pas [d'abord]un produit mais [principalement]un processus.

« Security is not a product, it’s a process »

Informatif:

Le pare-feu doit enfin vous donner les informations nécessaire pour que vous restiez le “maître à bord”. La journalisation et les notification en temps réel doivent vous permettre de décider en connaissance de cause de la validité ou non d’une application se connectant à internet. Ces notifications, combinées à d’autres outils tels que Process Explorer ou Packetyzer, vous permetrent un contrôle raisonnable sur les échanges entre votre système et internet.

Il importe toutefois de trouver un juste dosage entre les notifications et la journalisation. Les notifications immédiates ne doivent pas vous alerter inutilement et la journalisation doit être suffisamment complète pour être utilisable. Le point majeur étant la pertinence de ces informations.

Les notifications de Look’n'Stop lors du lancement d’une nouvelle application, la notification lors d’un changement de signature d’un programme sont nécessaires par contre des alertes à tout bout de champs pour les moindres blocages sont aussi ennuyantes qu’inutiles.

Quant à la journalisation elle doit vous permettre des vérifications occasionnelles, retracer les activités du système et l’élaboration de règles d’applications plus précises. Il est évident que passer toutes les entrées en revue ou d’archiver les journaux pour de trop longues périodes seraient aussi fastidieux qu’inutile. Il existe aussi des moyens pour traiter les journaux avec des programmes tiers tels que OO Calc ou MS Excel pour en faire la synthèse permettant d’en faire ressortir les points pertinents.

2- Modèles possibles de jeu de règles

Compte tenu des possibilitées offertes par look’n'Stop par les filtrages logiciel et internet quel peut être la bonne combinaison entre les restrictions et la fonctionnalité du système? Il est possible par exemple de déterminer précisément pour chaque programme reconnu les ports, les adresses ou gammes d’adresses tout en inscrivant au journal l’ensemble des activitées de ceux-ci. Il est possible aussi de n’y mettre aucune contrainte du moment que le programme est approuvé. Quant au filtrage internet on peut établir une gamme de possibilités de filtrage allant d’une seule règle générale permettant à toutes les applications de se connecter à internet jusqu’à un jeu de règles pour chaque application.

Je propose le dosage suivant pour le filtrage logiciel: les programmes susceptible d’être détournés par des programmes malveillants doivent être restreints tant pour les ports, les adresses et la possibilité ou non soit de se connecter à internet ou de lancer d’autres applications susceptibles de le faire. Pour les autres programmes, les contraintes seront minimales au niveau du filtrage logiciel.

FL-Restrictions

Programmes bloqués: pas d’accès internet et pas de lancement de programmes tiers, mention dans le journal en cas d’exécution: wscript.exe et cscript.exe, mshta.exe, schtasks.exe et son jumeau at.exe, rundll32.exe, cmd.exe, wmiprvse.exe.

Sans oublier la nouvelle initiative anti-piratage de Microsoft d’un goût douteux: wgatray.exe.

Programmes bloquées en accès direct avec autorisation de lancer d’autre application internet et notifications au journal: winlogon.exe, smss,exe, services.exe, explorer.exe.

Programmes restreints d’accès par ports et adresses IP avec notification au journal: svchost.exe et msiexec.exe. Les détails sont indiquées plus loin.

Et finalement celui-ci:

FL-restrictions-ie

Une des sources les plus importantes d’infections, traînant depuis des lunes des failles jamais corrigées, cible rêvée de tous les vandales de la Toile, IE est aussi l’intermédiaire de choix utilisé par un bon nombre de programmes malveillants pour passer outre les couches de protection de votre système. Utilisation fortement déconseillée. Ce machin inqualifiable est bloqué. Il faut cependant être conscient du fait que cela n’est pas une garantie absolue et que le blocage logiciel ne constitue pas une panacée.

En ce qui concerne le filtrage internet pour les programmes y ayant accès, je propose d’établir une règle par type d’application en tenant compte de la couche application du protocole TCP-Ip (Http, Https, Ftp, Nntp, Ntp, etc.). Puisqu’il faut un ordre je propose que les règles pour les programmes internet soient listés par le dernier port distant utilisé par la couche application à savoir 21 pour les programmes ou fonctions de programmes Ftp, 80 pour le Http et ainsi de suite. Certains protocoles pourront être regroupés tels que le Pop3 et le Smtp et des exceptions sont prévues pour certains cas. Voyons d’abord le jeu de règles générales (avec les restrictions déjà mentionnées précédemment: pas de réseau, connexion internet PPPoE sans routeur ou DHCP) [3] puis quelques règles pour les applications internet courantes et quelques autres qui pourraient vous intéresser [4].

3- Exemple d’un jeu de règles simple

Règles-Exemple-01

Tout d’abord un mot sur la numérotation des règles. Le problème à résoudre était d’identifier chaque règle ET d’indiquer en même temps la position relative de chacune d’elles en tenant compte de la possibilité d’une expansion future de celles-ci. J’ai constaté que le positionnement correct des nouvelles règles est souvent mal compris. Les règles sont examinées à partir du début de la liste et dès que tous les critères d’une règle correspondent, cette règle est appliqué et les suivantes ne sont pas prises en compte. De plus le modèle utilisé doit permettre d’ajouter facilement et dans le bon positionnement de nouvelles règles reflétant des modifications à la configuration (ajout d’un routeur, installation d’un réseau local ou d’un serveur, nouvelles applications internet, etc.)

Le modèle de numérotation que je propose n’est évidemment pas parfait mais peut vous inspirer pour en trouver un meilleur. Les règles sont classées par catégories au moyen d’un capitale romaine de A à Z: A est réservée pour une expansion future des règles, B pour les règles des gammes d’adresse IP, C pour le protocole ICMP, D pour les règles communes au TCP et à l’UDP, E pour les règles UDP, F est en réserve, G pour les règles en TCP, H à P en réserves pour le réseau local et les serveurs, Q est utilisé pour la règle unique de blocage des sollicitation de connexions serveur (paquets TCP SYN en entrée), R est prévu pour les règles des programmes internet, S en réserve , T à Y utilisés pour les verrouillages des protocoles et enfin, Z utilisé pour la règle finale et obligatoire qui clos la liste des règles: le blocage de tout le reste.

{ A.00}, [AA], identifiant

Entre accolades: la catégorie en capitale romaine, point, numéro de règle, virgule

Entre crochet: l’identifiant de direction des paquets AA autorisé en entrée/sortie, XX interdit en entrée / sortie, EA pour entrée autorisée, SA pour sortie autorisée, EB pour entrée bloquées, SB pour sortie bloquée, suivi d’une virgule.

Enfin le nom de la règle.

L’utilisation des virgules est prévue pour la séparation des champs dans le format brut du journal. (Tout cela est évidemment optionnel: cela vous en indique la possibilité.)

I - Règles { B.01} à { B.09} concernent le blocage en entrée de paquets de n’importe quel protocole en provenance d’adresses IP ne devant pas se retrouver sur internet: adresse IP se terminant par 0 ou 255, adresses réservées pour les réseaux locaux ou le bouclage sur “localhost” et enfin les adresses réservées par L’I.A.N.A pour usage futur.

{ B.01}, [EB], IP Invalides *0

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Masque 0.0.0.0 / 0.0.0.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP (mon adresse IP)
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.02}, [EB], IP Invalides *255

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Masque 0.0.0.0 / 0.0.0.0
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.03}, [EB], IP Locales 10*

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Entre A-B 10.0.0.0- 10.255.255.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.04}, [EB], IP Locales 127*

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Entre A-B 127.0.0.0 - 127.255.255.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.05}, [EB], IP Locales 169*

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Entre A-B 169.254.0.0 - 169.254.255.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.06}, [EB], IP Locales 172*

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Entre A-B 172.16.0.0 - 172.31.255.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.07}, [EB], IP Locales 192*

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Entre A-B 192.168.0.0 - 192.168.255.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.08}, [EB], IP Multipoints

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset: n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Entre A-B 224.0.0.0 - 239.255.255.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ B.09}, [EB], IP Réservées

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: Tous
  • Frag. Offset n/a
  • Frag. Flag: n/a
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Entre A-B 240.0.0.0 - 255.255.255.255
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

II- Règles { C.01} à { C.05} concernent le protocole ICMP. Elles comprennent d’abord deux règles de blocages visant la fragementation et trois règles autorisant l’utilisation légitime de ce protocole par votre système. Une règle de blocage finale est prévue à la fin du jeu de règles.

{ C.01}, [EB], Fragmentés

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: ICMP
  • Frag. Offset: Different 0
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: Tous
  • type: Tous
  • Source Adresse(s) IP: Toutes
  • Source Port(s): n/a
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): n/a
  • Application(s): Toutes

{ C.02}, [EB], + Fragments

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: ICMP
  • Frag. Offset: Tous
  • Frag. Flag: MF
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: Tous
  • type: Tous
  • Source Adresse(s) IP: Toutes
  • Source Port(s): n/a
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): n/a
  • Application(s): Toutes

{ C.03}, [SA], Requête

AUTORISÉ

  • Type Ethernet: IP
  • Direction(s): Sortante
  • Protocole IP: ICMP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: 0
  • type: 8
  • Source Adresse(s) IP: @IP
  • Source Port(s): n/a
  • Destination Adresse(s) IP: Toutes
  • Destination Ports(s): n/a
  • Application(s): Toutes

{ C.04}, [EA], Réponse

AUTORISÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: ICMP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN; n/a
  • code: 0
  • type: 0
  • Source Adresse(s) IP: Toutes
  • Source Port(s): n/a
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): n/a
  • Application(s): Toutes

{ C.05}, [EA], Dépassement de temps

AUTORISÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: ICMP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: 0
  • type: 11
  • Source Adresse(s) IP: Toutes
  • Source Port(s): n/a
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): n/a
  • Application(s): Toutes

III- Règles { D.01} à { D.04} concernent les règles de blocages communes aux protocoles TCP et UDP: paquets en provenance ou en direction du port 0 et paquets fragmentés.

{ D.01}, [EB], Src Port 0 Invalide

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP/UDP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): 0
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ D.02}, [EB], Dst Port 0 Invalide

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP/UDP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP:@IP
  • Destination Ports(s): 0
  • Application(s): Toutes

{ D.03}, [EB], Fragmentés

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrantes
  • Protocole IP: TCP/UDP
  • Frag. Offset: Différent 0
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ D.04}, [EB], + Fragments

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP/UDP
  • Frag. Offset: Tous
  • Frag. Flag: MF
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

IV- Règles { E.01} à { E.99} concernent l’autorisation des requêtes DNS, mettent des numéros de règles en réserve pour le DHCP et les NetBios en UDP pour un réseau local et se terminent par le blocage des datagrammes NetBios et NetSend Messenger en provenance d’internet.

{ E.01}, [AA], DNS - Résolution des noms

AUTORISÉ

  • Type Ethernet: IP
  • Direction(s): Entrantes et Sortantes
  • Protocole IP: UDP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: @IP
  • Source Port(s): 1024-5000
  • Destination Adresse(s) IP: Ip des serveurs DNS
  • Destination Ports(s): 53
  • Application(s): Toutes

Commentaire: l’adresse IP des serveurs DNS est celles indiquées par la commande Ipconfig /all

Ipconfig

{ E.98}, [EB], NetBios name/datagram

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: UDP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): 137-138
  • Application(s): Toutes

Commentaire: la règle ne bloque pas les paquets NetBios sortants. Le jeu de règles présenté suppose que le NetBios n’est pas utilisé (pas de réseau local) et que votre système est correctement configuré (paramètres de la connexion réseau et les services NetBios et associés arrêtés et mis en mode manuel ou désactivé.) Les règles ne sont pas une béquille pour une mauvaise configuration …

{ E.99}, [EB], Net send messenger

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: UDP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): 1024-1055
  • Application(s): Toutes

Commentaire: cette règle concerne les datagrammes UDP du service d’affichage des messages détournées par les “spammeurs” (principalement originaires du “Pacific Ring” ou des pays d’Europe de l’est.). Si votre système est à jour et correctement configuré vous ne devriez pas être ennuyés par ces messages. Toutefois j’ai inclu cette règle afin de différencier le blocage du Net Send Messenger des autres blocages UDP. Cette règle est optionnelle mais pratique pour des raisons de débogage des applications utilisant l’UDP et pour une journalisation plus précise.

V- Règles { G.01} à { G.07} concernent les règles de blocage pour le TCP; le bouclage sur l’adresse Ip de votre système [l'exploit "Land Attack"] et le blocage des paquets TCP avec des flags anormaux.

{ G.01}. [XX]. Src & Dst = @IP

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante et Sortante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: @IP
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ G.02}, [EB], Null

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP:
  • Masque: URG ACK PSH RST SYN FIN
  • Actif : Aucun flag activé
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ G.03}, [EB], Full

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP:
  • Masque: URG ACK PSH RST SYN FIN
  • Actif : Tous les flags activés
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ G.04}, [EB], Fin & variantes

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP:
  • Masque: ACK FIN
  • Actif : FIN
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

Commentaire: cette règle permet un filtrage des paquets TCP anormaux avec les 14 variantes suivantes: FIN, FIN-SYN, FIN-RST, FIN-PSH, FIN-URG, FIN-SYN-RST, FIN-SYN-PSH, FIN-SYN-URG, FIN-RST-PSH, FIN-RST-URG, FIN-PSH-URG, FIN-SYN-RST-PSH, FIN-SYN-RST-URG, FIN-SYN-RST-PSH-URG.

{ G.05}, [EB], Syn Rst & variantes

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP:
  • Masque: ACK RST SYN FIN
  • Actif : RST SYN
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

Commentaire: cette règle permet un filtrage des paquets TCP anormaux avec les 4 variantes suivantes: SYN-RST, SYN-RST-PSH, SYN-RST-URG, SYN-RST-PSH-URG.

{ G.06}, [EB], Syn Psh & variantes

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP:
  • Masque: ACK PSH RST SYN FIN
  • Actif : PSH SYN
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

Commentaire: cette règle permet le filtrage des paquets TCP anormaux suivants: SYN-PSH, SYN-PSH-URG.

{ G.07}, [EB], Syn Urg

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP:
  • Masque: URG ACK SYN FIN
  • Actif : URG SYN
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

VI- Règle { Q.999} concerne le blocage des paquets TCP avec le flag SYN en provenance d’internet. Cette règle est la règle pivot du jeu de règles. Elle permet de bloquer toute tentative de solliciter votre système en tant que serveur. Si vous installez un serveur sur votre PC, les règles concernant le serveur devront se placer obligatoirement entre la règle { G.07} et la règle { Q.999}. Toutes les règles concernant les programmmes internets doivent être à la suite de cette règle et précéder les règles finales de verrouillage.

{ Q.999}, [EB], SYN Entrant

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: Option “bloquer les connexions réseau” cochée
  • Masque: URG ACK PSH RST SYN FIN
  • Actif : SYN
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: @IP
  • Destination Ports(s): Tous
  • Application(s): Toutes

VII- Règles {R.00000.00} à {R.99999.99} sont réservées pour les règles des programmes devant normalement se connecter à internet. Les identifiants { S.00} sont gardés en réserve pour des utilisations de déboguage ou autre.

{R.00000.00}, [AA], Programmes internet

AUTORISÉ

  • Type Ethernet: IP
  • Direction(s): Entrante et Sortante
  • Protocole IP: TCP/UDP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: @IP
  • Source Port(s): 1024-65535
  • Destination Adresse(s) IP: Toutes
  • Destination Ports(s): Toutes
  • Application(s): Au moins une des applications listées dans le filtrage logiciel.

Commentaire: cette règle très peu restrictive permet d’utiliser à peu près n’importe quelle application internet; navigateur, courrielleur, messagerie instatanée, etc. Cependant elle doit être combinée à l’option de journalisation du filtrage logiciel à défaut de quoi la trace de “qu’est-ce ce qui fait quoi” se perd assez vite. Est-il besoin de préciser que cette règle ne doit pas être utilisée sans inclure au moins une application pour la règle. De plus le nombre d’applications maximales par règle étant de 10, ses limites se recontrent assez rapidement. Dans le prochain article de cette série nous verrons une façon plus ordonnée de procéder. Il est à noter qu’une règle sans restriction pourra être utilisée de façon temporaire pour suivre l’exécution à la trace d’un programe afin d’en déterminer les règles précises.

VIII- Règles { T.00} à { Y.9999} sont utilisées pour le verrouillage final des différents protocoles. Sans être obligatoires ces règles permettent d’identifier facilement le blocages par protocole.

{ T.99999}, [XX], Verrouillage TCP

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante et Sortante
  • Protocole IP: TCP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: Tous
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ U.99999}, [XX], Verrouillage UDP

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante et sortante
  • Protocole IP: UDP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP: n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: Toutes
  • Destination Ports(s): Tous
  • Application(s): Toutes

{ V.99999}, [XX], Verrouillage ICMP

BLOQUÉ

  • Type Ethernet: IP
  • Direction(s): Entrante et Sortante
  • Protocole IP: ICMP
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: Tous
  • type: Tous
  • Source Adresse(s) IP: Toutes
  • Source Port(s) n/a
  • Destination Adresse(s) IP: Toutes
  • Destination Ports(s): n/a
  • Application(s): Toutes

IX- Règle {Z.99999.99} est la règle finale et obligatoire pour clore le jeu de règles afin d’interdire et de bloquer tout ce qui n’est pas soumis à une règle placée avant. Elle est absolument nécessaire pour assurer la validité de votre jeu de règles.

{ Z.9999999}, [XX], VERROUILLAGE FINAL

BLOQUÉ

  • Type Ethernet: Tous
  • Direction(s): Entrantes et Sortantes
  • Protocole IP: Tous
  • Frag. Offset: Tous
  • Frag. Flag: Tous
  • Flag TCP n/a
  • Masque: URG ACK PSH RST SYN FIN: n/a
  • Actif : URG ACK PSH RST SYN FIN: n/a
  • code: n/a
  • type: n/a
  • Source Adresse(s) IP: Toutes
  • Source Port(s): Tous
  • Destination Adresse(s) IP: Toutes
  • Destination Ports(s): Tous
  • Application(s): Toutes

4- Règles pour les programmes internets

Le jeu de règles tel que présenté jusqu’ici permet de bloquer les paquets anormaux en provenance d’internet, d’utiliser n’importe quel programme internet et de verrouiller correctement le jeu de règles.

Toutefois la règle unique autorisant les programmes internets est trop permissive et suppose soit que le filtrage logiciel précise les ports ou les adresses IP autorisées pour les applications soit que les programmes internets soient contrôlés par des règles spécifiques du filtrage internet.

Dans le prochain article de cette série nous verrons comment combiner les possibilités du filtrage logiciel et du filtrage internet pour les programmes les plus courants de façon à n’autoriser explicitement les programmes qu’avec des règles de filtrage internet.

L’avantage de cette méthode de filtrage est de réduire les possibilités de fuites et d’avoir les traces explicites des activités, programme par programme, dans les journaux. Cela permet aussi de simplifier la gestion de votre pare-feu en regroupant les réglages du côté du filtrage internet plutôt qu’en les dispersant dans le filtrage logiciel.

Les règles présentées ici seront dans le prochain article en format téléchargeable prêtes à l’importation dans Look’n'Stop pour vous permettre de les essayer, de les adapter à votre système et de les améliorer. La méthode pour créer de nouvelles règles à partir du format brut des journaux avec un chiffrier sera aussi expliquée.


2 commentaires »

  1. salut,

    j’utilise look’n’stop depuis fort longtemps,ton tutorial est d’enfer,mais j’ai un probleme pour cacher mon port 135 qui est detecté fermé sur pcflank.
    Y a t-il moyen de la cacher?

    Merci,Bulit

    Commentaire par bulit — 2006/12/31 @ 12:56

  2. Salut Bulit :)

    Sans doute une configuration erronée de certaines règles.
    Pour obtenir du support tu peux poser la question sur le forum officiel de LNS. Quelqu’un te viendra en aide, moi ou qq1 d’autre.
    A+

    http://www.wilderssecurity.com/forumdisplay.php?f=29

    :)

    Commentaire par climenole — 2007/01/4 @ 11:31

Flux RSS des commentaires de cet article. URI de Trackback

Ajouter un commentaire

Publié sur WordPress.