Ce topic a reçu le label R+ dans le méta-topic des topics uniques.
-----------------------------------------------------------------------------------------------
Dernière mise à jour: Mercredi 23 Mars 9h00
-----------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------
Je vais peut-être en décevoir quelques-uns en leur cassant le mythe et leur rappeler que leur sécurité est bien relative. Les informations ont été glanées à droite et à gauche sur différent forums. Merci à 'Drachs' et à d'autres qui se reconnaîtront
Ce 'tutoriel' est donc un résumé, et s'adresse plutôt aux néophytes voulant débuter. Les pros n'y trouveront probablement rien. J'ajoute que je ne sais pas tout, et que j'espère que chacun et particulièrement les super-pros du firewall viendront amener leur pierre à l'édifice pour l'intérêt de tous...
-----------------------------------------------------------------------------------------------
Structure du topic:
0. Introduction
1. Comprendre le principe général
1.1 Le principe du paramétrage
1.2 Ce que ne fera pas Kerio 2.1.5
1.3 Les failles et les limites
2. Les règles
1.1 Les catégories
[*]Loopback
[*]NetBios
[*]ICMP
[*]DHCP
[*]DNS
1.2 Un exemple de liste de règles
3. Les applications
1.1 Vos applications
4. Application pratique
1.1 Connexion WiFi
|
- 2eme Partie du TUT - LA FIN D'UN MYTHE
Structure de la deuxieme Partie:
1. Notions et rappels: 1.1 Fragmentation et ré-assemblage IP
1.2 Protocole TCP
1.3 Les paquets forgés
1.4 Les paquets fragmentés 2. Un vrai hack
3. "RIP" 2.1.5
4. - Et alors ? personne va m'attaquer ! (A venir)
5. Rappel: Le header HTTP (A venir)
6. HTTP passage obligé et exemple de hack (A venir)
7. Cookies: De nouvelles recettes (A venir) 8. SOAP, un désinfectant ou de la vaseline ? (A venir)
9. RPC: à votre service mais jusqu'où ? (A venir)
10.Patchs: efficace ou ça fume toujours ? (A venir)
11.Inspection: Jusqu'à quelle profondeur c'est encore bon ? (A venir)
12.Firewalls: Hard, soft, protection ou abstinence (A venir)
13.Oscar du mauvais scénario (A venir)
14.Conclusion (A venir)
|
-----------------------------------------------------------------------------------------------
0. Introduction
Pourquoi cette version est préférée encore par de nombreuses personnes à la version 4, sachant qu'il n'y a plus de support pour cette version ?
Cela vient du fait que nombreux trouvent encore beaucoup de bugs à la version 4 avec en plus des conflits de paramétrages internes, des problèmes de logs, etc..
Pour savoir utiliser Kerio 2.1.5 (menus, fonctions, etc..), l'aide (fichier Help) de Kerio est à lire (et je vous conseille de le lire avant d'aller plus loin). Il en existe une version en ligne à http://securis.info/securis/ker/
Lorsque vous allez commencer à établir vos règles, celles-ci sont enregistrés dans un fichier ".conf".
Il m'est arrivé une fois de par le passé (et pas qu'a moi) que ce fichier perde les règles. La manière de s'affranchir de ce problème est de faire un enregistrement de ce fichier via l'onglet 'divers > enregistrer' dans un répertoire différent du 'C' - bref pas sur votre DD system, juste comme ça en cas de restauration -. Depuis, le problème n'est jamais réapparu, et quand bien même ce serait le cas, il vous suffit de faire "charger" dans la même fenêtre!
-----------------------------------------------------------------------------------------------
1. Comprendre le principe général
Kerio a été conçu pour être un pare-feu (firewall) qui agit au dessous du niveau de la pile TCP/IP dans le system-Kernel en utilisant la methode "stateful inspection". C'est un système de filtrage dynamique de paquets de CheckPoint Software Technologies qui est basé sur l'inspection des couches 3 et 4 du modèle OSI permettant d'effectuer un suivi des transactions entre le client et le serveur, puis compile cette information 'de suivi' pour les paquets suivants, dans une table au niveau du noyau.
La couche 3 du modèle OSI est la couche réseau , "les paquets", du modèle. Elle regroupe tous les protocoles réseaux et adresses correspondantes (TCP/IP, NetBeui, IPX/SPX...).
La couche 4 est la partie transport qui lie de bout en bout le message et qui recouvre la connexion entre émetteur et récepteur. On y trouve des informations telles que les ports d'attaque de commandes ( TCP / UDP ) pour gérer la connexion -
Si une application sur votre PC souhaite établir une connexion avec un serveur (ou un autre PC) pour effectuer un transfert de données (prenons ici l'exemple d'un transfert de données a faire sur un serveur FTP, via un logiciel). Elle va utiliser un protocole pour effectuer ce transfert.
Les données sont divisées en petites parties appelées packets à l'intérieur de chaque protocole.
l'IP (Internet Protocol) est une suite d'octets qui transporte dans sa structure, tous les autres protocol packets, avec entre autres dans le "header" (l'entête) du paquet IP, l'IP source, l'adresse IP de destination, la fragmentation (DF,MF, Offset) - je les cite ici, vous allez comprendre après pourquoi -. La structure du paquet IP se constitue ainsi:
[version][taille (ou longueur) du header][service][Taille totale du paquet][n° de paquet][Flag][n° de fragment][Time To Live][Protocole][CRC][adresse source(IP)][adresse destinataire(IP)][Options][Bour.]["Message" TCP,UDP,ICMP..]
Kerio analysera chaque IP 'packet'
Cette application va donc demander à votre PC d'ouvrir un port de connexion (local) et effectuer une requête à l'adresse du serveur ou du PC concerné. De nombreux services initient une connexion sur un port statique, mais ouvrent dynamiquement (de manière aléatoire) un port afin d'établir une session entre la machine faisant office de serveur et la machine cliente. La règle "sortante" de Kerio va donc autoriser cette application a sortir ses 'packets'. Le serveur (destinataire) a normalement un ou plusieurs ports ouverts qui sont à l'écoute, prêt à recevoir ce type de requêtes ainsi que les 'packets' de données. Le serveur ayant reçu la requête, retourne un accord ou un refus à cette requête, puis établit la connexion en fonction.
Le tout est de s'assurer que les paquets qui reviennent via ce canal "virtuel" de connexion (comme dans le cas du TCP) vers votre PC, provient bien du destinataire initial, et qu'ils sont à l'intention de l'application concerné. S'il viennent par un autre canal, un autre protocole, ou par un autre chemin (un autre port ou autre), Kerio nécessitera une règle "entrante" pour vérifier qu'ils ont le droit d'entrer vers l'application concerné. Le reste doit être bloqué.
1.1 Le principe du paramétrage
C'est de faire en sorte que Kerio (2.1.5) verifie:
- Que l'application ou le service est autorisé à effectuer (ou recevoir) une connexion.
- Que cette application ou service correspond bien à la signature MD5 qui lui est attribuée.
- Qu'elle communique bien sur le(s) port(s) autorisé(s).
- Qu'elle communique sur un protocole qui lui est permis
- Vers et en retour, d'une destination autorisé (en exemple ci-dessus l'adresse IP du serveur)
On créée donc une liste de règles autorisant les applications ou les services souhaitées, à communiquer.
Le reste sera bloqué!! C'est à dire que tout packet qui ne correspondra pas aux règles établies, sera bloqué. Le principe est que Kerio applique les règles en commençant par la première règle vers la dernière... cependant il ne faut pas paramétrer en mettant du moins restrictif au plus restrictif.
Il faut au contraire garder à l'esprit de commencer par bloquer TOUT et n'autoriser qu'au cas par cas.
Voilà pourquoi le paramétrage correct commence par un positionnement du cran sur « refuser tout » qui, comme l'explique Kerio, bloquera tout ce qui ne correspondra pas aux règles établies... C'est là l'esprit de sécurité à garder en mémoire.
1.2 Ce que ne fera PAS Kerio 2.1.5
Bon, c'est ici que les déceptions vont commencer ...
- Ce n'est pas un firewall de contenu
Il n'analyse donc pas le "data" contenu dans les trames. Kerio 2.1.5 ne vous dira pas si le contenu que vous rapatriez du serveur FTP est un virus ou non. Il ne dira pas non plus si votre collègue infecté avec qui vous avez un dossier partagé, vous transfere un fichier vérolé. Ce n'est pas un anti-virus !!
- Ce n'est pas un firewall applicatif, en ce sens qu'il ne "comprend" pas comment fonctionne les applications et ne peut effectuer un filtrage au niveau de la couche applicative (couche 7 du modèle OSI) si celle-ci possède une faille. Le filtrage applicatif suppose donc une connaissance de l'application, et notamment de la manière de laquelle elle structure les données échangées et requiert une grande puissance de calcul (se traduit donc souvent par un ralentissement des communications).. Par exemple, le protocole HTTP fonctionne sur la couche de niveau 7 de l'OSI, et par conséquent Kerio n'est pas en mesure de détecter dans le "Header" un objet genre "set-cookie", et vous ne pourrez pas le filtrer.
D'autre part, si vous lancer un 'troyen'.exe (genre 'jesuisunesuperrousse.exe' que votre collègue vous a refilé) et que ce troyen 'spoof' un service windows et communique a travers le "svchost" que vous avez autorisé, Kerio 2.1.5 ne sera pas en mesure de vous dire que cette application agit comme troyen. Ce n'est pas un troyen-killer, ni un anti-spyware!
CEPENDANT, Cette version possède un système de vérification basé sur une signature MD5 de l'application communicante, et poura avertir s'il y a substitution du '.exe'. Il ne pourra pas empêcher la substitution, mais il empêchera le '.exe' intrus de communiquer et le signalera. Cependant cette partie est désormais faillible (voir la deuxième partie du tutoriel "la fin d'un mythe" ).
Cette signature fonctionne aussi pour les services de windows. L'avantage serait normalement de signer ses services AVANT la toute première connexion, ce qui doit garantir leur authenticité par la suite.
Nota: Une signature MD est un checksum de l'exécutable d'une application. La première fois qu'une application est lancée (ou lorsque l'application essaie pour le première fois de communiquer via le réseau) Kerio crée une signature MD5 pour cette application. Cette signature est contrôlée à chaque tentative de communication suivante de la-dite application avec le réseau. Si l'exécutable de l'application a été modifié (par exemple s'il est infecté par un virus ou a été remplacé par un autre programme) Kerio 2.1.5 refuse la communication à cette application, présente un avertissement et demande si le changement doit être accepté ou non (par exemple en cas d' upgrade de l'application).
- On ne peut contrôler les protocoles d'applications à l'intérieur des protocoles de transport...
(voir Une passoire avec un autre protocole ? dans failles et limites ci-dessous)
1.3 Les failles et les limites
Les 2 failles du logiciel à corriger avant toute choses ( Copier/coller d'un post qui résume bien -merci à celui qui l'a posté )
Citation :
En attendant il y a deux failles de sécurité critiques qui ont été découvertes dans Kerio 2.1.5 et qui sont assez génantes, elles permettent à n'importe qui d'exécuter des commandes en tant qu'utilisateur SYSTEM (le seul à avoir plus de privilèges que l'administrateur local). Heureusement, elles ne tiennent pas au moteur du firewall, c'est l'essentiel. Ce sont des exploits locaux essentiellement, sauf si pour la première l'admin à distance est activée (je pense).
Exploit 1 : La première tient à la façon dont Kerio charge les jeux de règles. Suffit d'aller dans l'interface d'administration, de cliquer sur le bouton "Load...", d'aller dans System32, de repérer "cmd.exe", de cliquer droit sur le fichier et de choisir "Ouvrir" dans le menu contextuel et non pas "Sélectionner". Oh, la console en ligne de commande s'ouvre. Un rapide whoami confirme que c'est NT AUTHORITY\SYSTEM qui exécute l'interpréteur.
Remède: protéger le module d'administration par un mot de passe connu du seul admin suffit, ce qui est de toutes manière l'attitude recommandée. Si l'administrateur ne protège pas son jeu de règles par un mot de passe, il n'a de toutes façons que ce qu'il mérite.
Exploit 2 : La seconde est beaucoup plus grave et tient d'une part à la conception des fichiers d'aide HTML compilé (CHM) par Microsoft, l'autre au fait que l'icone dans la barre des tâches s'exécute aussi en tant que SYSTEM (puisqu'elle est rattachée au service du firewall). Ici, pas moyen de sécuriser quoi que ce soit par un mot de passe. Suffit de cliquer droit sur le bouclier, d'ouvrir l'aide en ligne (Help), puis de cliquer sur l'icône en haut à gauche en forme de point d'interrogation, de sélectionner "Aller à l'URL..." et de choisir le répertoire System32 comme destination (C: \WINDOWS\SYSTEM32 par exemple). Le contenu du dossier s'affiche dans la fenêtre de l'aide en ligne, suffit de trouver cmd.exe, et c'est parti comme vu plus haut.
Remède: renommer le fichier d'aide afin qu'il ne soit plus possible d'y accéder par ce biais.
|
Nota : bien sûr on peut exécuter n'importe quoi en lieu et place de cmd. La console compmgmt.msc par exemple pour rajouter des utilisateurs, changer les mots de passe existants, enfin, tout, quoi.
D'autres failles pour lesquels il n'existe pas de patchs ont été relevées par le site de Secunia (merci minipouss). http://secunia.com/product/1493/#s [...] riticality
dont voici le résumé:
- Faille n°SA12468: (peu critique)
Concerne un "bypass" sur le système de protection de démarrage d'applications définis dans Kerio. Cette faille a été vérifiée pour la version 4, mais pourrait exister sur les précédentes versions.
Citation :
Sur Win2k/XP, il est possible de restorer le "SDT ServiceTable" du noyau en cours d'execution à son état d'origine, puisqu'une copie complète existe dans "ntoskrnl.exe". Un utilitaire 'SDTrestore rootkit-defense tool' a réussi a restaurer cette table à son origine sur un système faisant tourner KPF4. La protection contre l'execution d'applis définis est désactivée, et Kerio n'indique pas quand un nouveau programme (ou un programme modifié) se lance.. La protection firewall reste cependant intacte!
|
Pour exploiter cette faille, il faut le privilège administrateur. bref, un attaquant doit d'abord convaincre l'utilisateur d'executer un programme malicieux en tant qu'administrateur!!! (genre l'admin qui clique sur "superrousse.exe" )
pour en savoir plus: http://www.security.org.sg/vuln/kerio4016.html
- Faille n°SA10746: (peu critique)
Elle concerne la version 2.1.5 mais a été indiquée plus haut avec la soluce! ( Elle concerne la manière dont Kerio charge le jeu de règle en nécessitant le privilège "system" ).
Conseil supplémentaire: En plus du mot de passe, ne pas prêter son ordinateur a des utilisateurs peu digne de confiance (généralement une grosse faille dans la sécurité).
- Faille n°SA8682: (très critique)
Ne concerne que la version 2.1.4 et antérieure.. donc on n'est pas concerné! Cependant, pour expliquer brièvement, il s'agissait d'une faille lié à la fonction d'administration à distance de Kerio. Il fallait se connecter à l'interface de contrôle a distance ( c'était faisable à condition d'être en mesure de "monitorer" les paquets entre l'admin et le firewall afin de pouvoir executer un "replay" de ces paquets et il fallait le monitorer à une session où l'admin désactive ses règles!! (bref dans les semaines de 4 jeudis ) . La soluce consiste à désactiver l'admin à distance de Kerio pour ces versions.
- Faille n°SA8663 : (pas critique)
N'est pas considéré comme critique par sécunia, mais perso, je la trouve gênante pour plusieurs raisons:
- la première est qu'elle concerne notre version 2.1.5 puisque toute les versions avant la 4.1.0 sont concernés et que le fix (patch) n'a été que pour cette version 4 et les versions suivantes.
- Qu'on apprend qu'il serait possible à une personne malveillante de "spoofer" le port 53 pour communiquer avec des services 'systèmes' en écoute sur le protocole UDP (nécessite quand même de faire un scan des ports, mais la règle par défaut de Kerio permettait TOUT traffic UDP entrant sur le port 53) - nota : d'où à priori l'importance de ne pas mettre "toute application" dans les règles pour les DNS -
Le fix de la société a été d'appliquer un "stateful inspection" (analyse dynamique) sur les paquets UDP et d'autres protocoles IP, pour corriger le problème!
> D'où tout a coup un doute m'assaille pour notre version 2.1.5, car dans le fichier help, il est juste écrit que la méthode principale est le "stateful inspection", mais ne précise pas sur quels paquets s'effectue l'analyse dynamique. Si cela s'averrait qu'ils n'ont implémenté l'analyse dynamique (c'est à dire d'effectuer un suivi des trames) sur l'UDP qu'a partir de la 4.1, alors cela pourrait constituer une faiblesse accrue comme par exemple sur des paquets 'forgés'..(?)
Une passoire avec un autre protocole ?
Il faut beaucoup relativiser, et ne pas se croire invulnérable. Kerio 2.1.5 ne permet pas de paramétrer sur les protocoles d'applications à l'intérieur des protocoles de transport.
Prenons un exemple (grâce un article tiré des jeudi de l'informatique) avec un protocole moins connu comme le protocole SNMP. Celui-ci permet d'agir sur des cartes réseaux à travers des datagrams (UDP) via une station de management - en général, le protocole SNMP se sert du protocole UDP pour ses transmissions -. Un admin peut donc arrêter une connexion sur l'une de ses interfaces réseaux, via le protocole SNMP. Or le protocole UDP n'étant déjà pas un protocole sûr puisqu'il ne crée pas de tunnel virtuel ( toutes les "data" sont transférées via messages individuels appelés datagrams), il existe des outils de hack avec linux permettant de scanner et de récupérer des infos sur ces datagrams (ce qui est plus discret qu'un scan sur TCP/IP). L'UDP peut donc 'renseigner' des informations intéressantes sur votre réseau. Après reflexion, Kerio n'a pas de fonction permettant de sélectionner ou filtrer un protocole (FTP, HTTP, SNMP..) à l'intérieur du protocole de transport - comme ici l'UDP - dans le cas ou ce protocole (UDP) est 'permis' sur une plage IP et ports spécifiques...
Cela ne veut pas dire qu'il n'effectue pas ce filtre automatiquement en fonction de l'application (par exemple avec une application FTP, il ne filtrerait que le protocole FTP) et encore A CONDITION je suppose, que cette application soit précisé dans les règles - à la place d'un paramétrage "tous programmes" -, mais ce n'est pas sûr puisqu'une application comme un navigateur IE6 peut travailler sur le protocole HTTP, mais aussi effectuer un transfert FTP ! Kerio ne filtre t'il qu'en fonction de la demande de protocole faite par l'application, ou bien permet-il à plusieurs protocoles de passer pour cette application?
N'ayant pas plus de précisions sur le moteur de Kerio 2.1.5, il est permis de penser qu'il existe là une limite du fait de cet abscence de paramétrage sur le firewall qu'il faut prendre en compte.
Une passoire avec les paquets fragmentés
Voir deuxième partie du TUT : "La fin d'un mythe".
-----------------------------------------------------------------------------------------------
2. Les règles
C'est une possibilité de classement, mais je range les règles par catégorie
1. Les Catégories
Je pensais qu'elle n'était pas nécessaire avec Kerio, mais cette règle accélère effectivement les échanges, c'est à dire par exemple dans le cas de l'application du browser, la vitesse d'affichage des pages passant de 5 à 10 secondes sur ma configuration à une vitesse instantanée!! Cependant il faut préciser que cela peut dépendre de la configuration.
Cette règle autorise les applications locales avec l'ordinateur sur le port 127.0.0.1. (je dois faire quelques test pour montrer dans quel intérêt il y a ce loopback par les applis)
Cette adresse est reliée au nom "localhost" qui désigne la machine locale, via un fichier de configuration dans le répertoire system32.
Cependant, elle peut constituer une faille dans les cas d'un IP spoofing du localhost (exemple d'un messenger spam : UDP(fake) sur 127.0.0.1:1234 -> votre IP:1026 ).
Une manière de prévenir ce spoofing est d'établir une règle uniquement « sortante » sur le loopback avec les applications communicantes.
Mais il existe certaines applications qui ne ré-utilisent pas le même port et nécessitent une règle « entrante », ce qui oblige de faire du cas par cas sur les applications
Pour les paranos, il vaut mieux donc paramétrer cette règle avec les applications qui peuvent s'en servir:
exemple pour le cache IE :UDP sortante(Tous) ieAppli -> 127.0.0.1(Tous)
Mais cela nécessite de le faire pour chaque application communicante. Devient nécessaire lorsque l'on utilise un soft proxy.
Il apparaîtrait qu'il n'y a pas de subnet spoofing (a prendre avec des pincettes, j'attends que des pro du réseaux confirment ou infirment..), il dvrait être possible d'établir une règle avec un masque. Mais sur certains forums, la règle apparaît comme étant avec un masque 255.0.0.0 ce qui est faux, car en faisant le test (avec désactivation des connexions, etc..), cela ralentit avec un temps d'affichage de 5 à 10 secondes par page.. ce qui fait que si on la désactive ou l'active avec ce submask, on ne voit pas de différence entre activer cette règle loopback et la déactiver. C'est donc avec un autre masque peut-être (je dois faire quelques essais). POu l'instant je ne mets pas de submask:
(Net Basic Input/Output System)
C'est une API qui peut être utilisé par des programmes sur un réseau local. NetBios fournit un jeu de commande aux programmes permettant d'accéder aux ressources bas niveau !! Cette API est nécessaire à la gestion des noms, au déroulement d'une session, à l'échange de datagrammes entre les noeuds d'un réseau.
Exemple d'une commande qui utilise cette API:
Nbtstat
Cette commande de diagnostic affiche les statistiques de protocole et les connexions TCP/IP en cours utilisant NBT (NetBIOS sur TCP/IP). Cette commande est disponible uniquement si le protocole TCP/IP est installé.
nbtstat [-a nom_distant] [-A adresse IP] [-c] [-n] [-R] [-r] [-S] [-s] [intervalle]
Paramètres
- a nom_distant: Affiche la table des noms de l'ordinateur distant en utilisant le nom.
- A adresse IP: Affiche la table des noms de l'ordinateur distant en utilisant son adresse IP.
- c: Affiche le contenu du cache de noms NetBIOS en donnant l'adresse IP de chaque nom.
- n: Affiche les noms NetBIOS locaux. La mention Registered indique que le nom est enregistré par diffusion (Bnode) ou par WINS (autres types de noeuds).
- R: Recharge le fichier Lmhosts après avoir purgé tous les noms du cache de noms NetBIOS.
- r: Affiche les statistiques de résolution de noms pour la résolution de noms en réseau Windows. Sur un système Windows 2000 configuré pour utiliser WINS, cette option renvoie le nombre de noms résolus et enregistrés par diffusion ou par WINS.
- S: Affiche les sessions client et serveur, en répertoriant les ordinateurs distants par adresse IP uniquement.
- s: Affiche les sessions client et serveur. Ce commutateur tente de convertir l'adresse IP de l'ordinateur distant en un nom à l'aide du fichier Hosts.
Si vous désactivez NetBIOS sur TCP/IP, vous risquez de ne plus pouvoir vous connecter aux ordinateurs exécutant des systèmes d'exploitation différents de Windows.
Normalement, netbios n'est pas utilisé pour la communication Internet (c'est le nom d'hote qui est propre au protocole TCP/IP), mais depuis Win2K, le nom netbios et le nom d'hote sont les même.
C'est donc sur les ports NetBios que s'effectue de nombreuses attaques externes.
Voici un copier/coller d'un post décrivant ces ports:
Citation :
- NETBIOS Name Service (NS port 137) : resolution de noms netbios = correspondance entre les noms d'hotes sur le reseau et les adresses IP
- NETBIOS Datagram Service (DG port UDP 138) : ce port est essentiellement utilisé pour diffuser (broadcast) de l'information sur le réseau. En principe, seul le protocole UDP est utilisé sur ce port. Fonctionne en mode déconnecté.
- NETBIOS Session Service (SS port TCP 139): c'est sur ce port que s'établissent les véritables connexions entre deux machines. C'est par exemple celui qui sera utilisé, lorsque tu veux accèder à une machine par le voisinage réseau, pour accéder à ses ressources (partages de fichiers et d'imprimantes).
|
En théorie, si on a positionné sur « refuser tout », cette règle n'est pas nécessaire, mais en pratique -voir pourquoi plus bas- on créée une règle qui bloque tout.
Sauf évidemment, si vous êtes dans un LAN qui utilise le système de réseau Microsoft et que vous utilisez le partage de dossiers, il faudra alors rentrer une règle pour rentrer les IP autorisés des ordinateurs du LAN avec qui vous communiquerez via ces ports... En espérant que vous avez une bonne confiance dans vos « collègues »..
Je n'ai pas fait de test pour savoir si on peut s'en affranchir en utilisant le protocole IPX/SX à la place du TCP/IP..
Même si vous avez désolidarisé NetBIOS du protocole TCP/IP, elles vous permettront de savoir s'il y a une tentative d'intrusion en cochant la case "journaliser si..".
Si vous êtes sur un LAN, il peut être nécessaire d'autoriser le NetBIOS pour les PC de votre réseau local, en créant une régle (voir règle 1 dans l'image ci-dessous) d'autorisation sur une plage d'adresse ou un masque de reseau avant les règles 2 et 3 (ci-dessous en case décoché):
La règle s'établirait ainsi:
l'ICMP est un protocole particulier, pas vraiment nécessaire pour une utilisation normale, mais indispensable dès qu'on aime faire des pings ou des traceroutes, soit les types 0, 3,8,11. Dans la fenêtre de règles de Kerio, il vous est proposé une liste de chiffres correspondant à l'ICMP demandé (Exemple le 8= Echo request).
La liste est la suivante:
http://www.erg.abdn.ac.uk/users/go [...] -code.html
En règle générale, beaucoup mettent en règle sortante :"l'echo request"
En règle entrante: "l'echo reply", "destination unreachable" et "time exceeded for a datagram".
La règle s'établirait ainsi:
Si vous passez par un serveur DHCP pour obtenir votre adresse IP, il faut créer une règle pour permettre la communication avec ce serveur. L'échange se fait normalement par le protocole UDP sur le port 68 en local et 67 en distant
Les Pros Rentreront l'adresse IP du serveur DHCP (et le masque réseau si applicable)dans la règle. On peut obtenir l'adresse IP du serveur avec ipconfig par ligne de commande pour les systèmes NT et winipcfg avec 98/Me . Dans certains cas (comme par exemple sur différent réseaux wifi), on ne peut connaître à l'avance l'adresse IP du serveur DHCP, ce qui oblige soit à établir une régle générale pour tout IP distant, ou bien de modifier la règle et de se reconnecter derrière (pas pratique tout de même). Si vous avez une configuration avec IP fixe, cette règle ne vous concerne pas. Si vous avez un portable qui va sur différents réseaux, il est utile de créer autant de règles pour chacun des serveurs DHCP connus (IP connue) auxquels vous vous connecterez (en activant la bonne règle à chaque fois.. voir "applications" plus loin), sinon, il vous faudra vous servir d'une règle générale. Le service de Windows qui établit la communication avec le seveur est le "services.exe" dans le "sytem32" du repertoire windows.
La règle s'établirait ainsi:
D'une manière générale, la requête DNS est un processus en deux parties :
1ere partie: La résolution locale
Une requête de nom est formulée au niveau d'un ordinateur client et transmise à un solveur, le service Client DNS, en vue d'être résolue.
Lorsque la requête ne peut pas être résolue localement, des serveurs DNS extérieurs sont nécessaires pour résoudre le nom.
Dans les premières étapes du processus de requête, un nom de domaine DNS est utilisé dans un programme de l'ordinateur local. La requête est ensuite transmise au service Client DNS afin d'être résolue à l'aide des informations mises localement en cache. Si la requête de nom peut être résolue, une réponse est donnée à la requête et le processus se termine.
Le cache de résolution local peut inclure des informations de nom issues de deux sources :
Si un fichier Hosts est configuré localement, tout mappage nom d'hôte-adresse contenu dans ce fichier est préchargé dans le cache au démarrage du service Client DNS.
Les enregistrements de ressources obtenus en réponse à de précédentes requêtes DNS sont ajoutés au cache et conservés pendant un certain temps.
Si le requête ne correspond à aucune entrée du cache, le processus de résolution se poursuit et le client interroge un serveur DNS pour résoudre le nom.
2ème partie : interrogation d'un serveur DNS
Le client interroge un serveur DNS par défaut. Le serveur utilisé dans la première partie du processus (requête client/serveur) est sélectionné dans une liste générale. À réception de la requête, le serveur DNS commence par vérifier s'il peut y répondre en faisant autorité à partir des informations d'enregistrement de ressource présentes dans une zone configurée localement sur le serveur. Si la requête de nom correspond à un enregistrement de ressource dans les informations de la zone locale, le serveur répond en faisant autorité et utilise ces informations pour résoudre la requête de nom.
Si la zone locale ne contient aucune information pour le nom faisant l'objet de la requête, le serveur vérifie s'il peut résoudre ce nom en utilisant les informations mises localement en cache à partir de requêtes antérieures. Si une correspondance est trouvée, le serveur envoie ces informations en réponse. Si le serveur par défaut peut envoyer une réponse positive à la requête du client à partir des informations de son cache, la requête prend fin.
Si aucune réponse à la requête de nom n'est trouvée sur le serveur par défaut - dans son cache ou ses informations de zone - le processus de requête se poursuit et la récursivité est utilisée pour résoudre complètement le nom. Ce processus implique l'assistance d'autres serveurs DNS. Par défaut, le service Client DNS demande au serveur d'utiliser un processus de récursivité pour résoudre complètement les noms pour le compte du client avant de renvoyer une réponse. Cela peut remonter jusqu'au "TOP LEVEL DNS" qui eux contiennent tous les domaines du réseau des réseaux.
NOTA: Si la réponse d'une requête est trop longue pour être envoyée et résolue dans un seul paquet de message UDP, le serveur DNS peut lancer une réponse de basculement sur le port TCP 53 pour répondre complètement au client dans une session TCP.
Le serveur DNS fournit les adresses IP aux noms de domaines que vous avez rentré en requête dans votre navigateur. Vous passez par les DNS de votre FAI généralement
Il vous faut créer autant de règles que votre FAI utilise de serveur DNS.
A priori il ne semble pas y avoir d'attaques connu sur le port 53 , donc on pourrait laisser toute communication sur le port 53 et hop, on ne s'embêterait pas à rechanger les adresses IP des DNS si ceux des FAI changent. Mais les pros rentrent les adresses IP des DNS bien sûr , ainsi que celui des « secours »... On peut établir aussi une règle qui bloquera toute autre packet sur ce port juste derrière 'par sécurité' (voir sur l'image ci-dessous les flèches rouge).
le service windows qui s'occupe de ça est : c:\winnt\system32\services.exe
La règle s'établirait ainsi:
-----------------------------------------------------------------------------------------------
Message édité par Krapaud le 03-01-2007 à 22:20:49
---------------
Si tu es champion pour ouvrir ta gueule sur les forums, alors souviens toi de franz et Emma qui sont en train de payer pour toi: http://opserpir.free.fr/petitionF.html