[RESOLU] Proxy WPAD non résolution du nom de domaine

Forum sur la sécurité des réseaux, la configuration des firewalls, la mise en place de protections contre les attaques, de DMZ, de systèmes anti-intrusion ...

Modérateur: modos Ixus

[RESOLU] Proxy WPAD non résolution du nom de domaine

Messagepar briant » 21 Oct 2009 11:44

Bonjour,

Je dispose d'un réseau 192.168.0.0 /24

J'ai mis en place un proxy Squid d'adresse 192.168.0.50 sur le réseau.

Je fais mes tests tout fonctionne correctement (filtrage avec squidguard) en entrant les paramètres du proxy dans les navigateurs.

Le souci est que le réseau comporte aussi des ordinateurs portables qui doivent pouvoir accéder à internet lorsqu'il ne sont plus sur le réseau d'entreprise. C'est à dire quand le proxy 192.168.0.50 (squid-proxy.domaine.local) n'est plus accessible.

J'ai vu que l'on pouvait faire une configuration automatique des proxy à l'aide du protocole WPAD.

Ma question est la suivante le fichier proxy.pac si il est hébergé sur un serveur http local. Il ne sera jamais accessible en dehors de l'entreprise et les utilisateurs ne pourront donc pas charger ce fichier de configuration ?

Je me trompe ?

Dans ce cas comment celà se passe t'il , le navigateur ne trouvant pas le fichier proxy.pac , laisse le client naviguer en direct sans proxy ?

Cdt
Dernière édition par briant le 02 Nov 2009 12:18, édité 1 fois au total.
briant
Quartier Maître
Quartier Maître
 
Messages: 22
Inscrit le: 15 Oct 2009 12:06

Messagepar Gaston » 21 Oct 2009 22:54

Bonsoir,
à confirmer (y a longtemps que j'ai pas essayé ...) mais je pense que effectivement, si le serveur avec le wpad n'est pas joignable, il n'y a pas de configuration de proxy récupérée, les portable sont donc dans une conf "direct to internet"
Tu peux aussi poser le .pac en local sur les postes, en jouant avec des directives "isInNet(myIpAddress(), xxx, yyy) " par exemple, tu peux gérer de nombreuses possibilités .

Just my 2 cents
G.
Avatar de l’utilisateur
Gaston
Amiral
Amiral
 
Messages: 1367
Inscrit le: 06 Oct 2003 00:00
Localisation: Saint Maur, 94 FR

Messagepar jdh » 21 Oct 2009 23:58

Ca c'est une intéressante question !


Le principe :
WPAD propose d'indiquer à un (programme) client un serveur (http) sur lequel il récupère un fichier (proxy.pac ou wpad.dat).
Ce fichier est un script (en javascript) retournant (en fonction de l'url) l'info "PROXY" (avec le proxy) ou "DIRECT".

Il faut noter que
- il y a 2 moyens d'indiquer le serveur (dhcp ou dns) (d'où 2 noms de fichiers différents),
- il faut que le client soit quand même configuré "en détection auto",
- les programmes clients (IE, firefox, ...) traitent "de façon variable" le script,
- la recherche du script prend un peu de temps ... même hors du réseau de l'entreprise,
- et, last but not least, cela ne fonctionne QUE pour http.

Bref une bonne idée avec beaucoup de limitations et d'écueils !


Concernant la question précise, il est important de configurer IE, Firefox, ... en mode "détection auto" ce qui permet aux portables de fonctionner avec WPAD dans le réseau local et sans WPAD à l'extérieur (et avec le petit temps de latence indiqué plus haut).

Il y a en fait 3 modes de fonctionnement : direct to internet, détection auto, proxy manuel (cf les écrans d'options internet IE ou param réseaux FF).


(C'est la config mise en place dans mon entreprise principale. Et cela fonctionne correctement et ... comme je l'attends.)


NB: Gaston : ce que tu mentionnes est une combinaison de fonctions logiques qui permet de savoir si on est dans tel ou tel réseau ... encore faut-il avoir récupérer ledit fichier. J'espère que l'idée n'est pas que chaque pc ait son propre serveur http pour fournir "itself" le proxy.pac !
Avatar de l’utilisateur
jdh
Amiral
Amiral
 
Messages: 4741
Inscrit le: 29 Déc 2002 01:00
Localisation: Nantes

Messagepar briant » 22 Oct 2009 16:03

je rencontre des difficultés pour établir la configuration automatique de mon proxy.

La situation :

- Windows Serveur 2003 faisant serveur DHCP et serveur DNS
ayant pour ip 192.168.0.250 /24

- Proxy squid + squidguard ayant pour ip 192.168.0.50 tournant sur le port 3128

- Ubuntu avec serveur Apache2 d'ip 192.168.0.55

Je me connecte au serveur 2003, vais dans gérer mon serveur DNS et j'ajoute un hôte que je nomme WPAD avec pour ip mon serveur web 192.168.0.55 mais la résolution ne se fait jamais.

Je ne ping jamais WPAD.mondomaine.fr

Image

Si je fais la même manip en mettant WPADD.mondomaine.fr celà fonctione tout les noms fonctionnent sauf WPAD.

Comment nommer mon serveur web (sous ubuntu) en wpad.mondomaine.fr svp

Cdt
briant
Quartier Maître
Quartier Maître
 
Messages: 22
Inscrit le: 15 Oct 2009 12:06

Messagepar jdh » 22 Oct 2009 19:23

Il y a quelque chose qui m'échappe.

- un micro connait le serveur dns qui lui traduit les noms en @ip,
- un ping pour un nom est strictement équivalent à un ping pour la même @ip,
- il n'y a pas d'obligation pour une machine à s'appeler comme le dns la déclare !

Alors quel est le problème ?

(depuis un autre pc)
- le ping à l'adresse ip répond ou non ? (= @ip bien configurée)
- le ping au nom dns répond ou nom ? (= nom bien défini dans le dns)
(sur le serveur)
- le nom est-il correspondant au nom défini dans le dns : vérif par "hostname", sinon config de /etc/hostsname et de la table /etc/hosts
Avatar de l’utilisateur
jdh
Amiral
Amiral
 
Messages: 4741
Inscrit le: 29 Déc 2002 01:00
Localisation: Nantes

Messagepar Gaston » 22 Oct 2009 22:11

ca c'est fort :(
Microsoft se réserverait des entrées de dns dans ses config serveurs sans le dire à personne ? pas glop
peux tu vérifier pour nous ?
Si tu ne peux pas déclarer un tel hôte avec une résolution différente de celle du serveur 2003 la solution du wpad est morte pour toi : le principe de la solution étant de résoudre automatiquement "wpad.tondomaine.tld" , mais j'ose espérer à une erreur/omission de ta part

NB: Gaston : ce que tu mentionnes est une combinaison de fonctions logiques qui permet de savoir si on est dans tel ou tel réseau ... encore faut-il avoir récupérer ledit fichier. J'espère que l'idée n'est pas que chaque pc ait son propre serveur http pour fournir "itself" le proxy.pac !
c'est en fait la soltution q&d que j'ai appliqué sur mon poste : que je sois en clientèles (qui me fournissent une ip spécifique et un proxy) au taf ou chez moi je n'ai pas besoin de reconfigurer mon navigateur . Ce pac est posé en local sur mon disque. Je ne mentionnais ces fonctions que parce que je les trouve utiles dans un pac pour un pc changeant d'@IP/réseau souvent (entre différentes filiales avec des plans d'adresse différents - même si on peut différencier le contenu du pac à la distribution ;) )
Sinon je sui presque sur que le navigateur, si il ne trouve pas de pac à charger, n'utilise pas de copie (cache) locale, et donc qu'on se retrouve en configuration "connexion directe vers Internet" alors que le navigateur est configuré pour "configuration automatique"
Et sinon, sur le fonds, je préfère une configuration avec l'adresse du site et le nom du pac, qu'un wpad ... , la seule restriction étant la mise en place de la config ...

G.
Avatar de l’utilisateur
Gaston
Amiral
Amiral
 
Messages: 1367
Inscrit le: 06 Oct 2003 00:00
Localisation: Saint Maur, 94 FR

Messagepar Franck78 » 22 Oct 2009 22:54

tcpdump dira si le serveur dns est en cause.

Pour ma part je pencherais plus pour un résolution locale avant interrogation du server dns.
C'est quand même facile à vérifier depuis d'autres clients (non windows)....
Franck
L'art de poser une question sur ce site afin d'obtenir la réponse
A LIRE
Avatar de l’utilisateur
Franck78
Amiral
Amiral
 
Messages: 5625
Inscrit le: 20 Fév 2004 01:00
Localisation: Paris

Messagepar jdh » 23 Oct 2009 06:48

Il est clair que w2k3 ne réserve rien : j'ai mis en place WPAD dans ma société à partir d'un 2k3 serveur dhcp et dns et avec un Debian serveur proxy et apache délivrant proxy.pac et wpad.dat (avec et la méthode dns =wpad.xxx et la méthode dhcp = option 252=wpad.xxx).

Donc cela peut fonctionner (si on maitrise mais avec de nombreuses itérations !).

Là, je ne suis pas sûr que la maitrise soit là : elle viendra en jalonnant le chemin vers l'objectif.

Je ne peux que conseiller le lien http://en.wikipedia.org/wiki/Web_Proxy_ ... y_Protocol (et quelques liens très intéressant en pas de page)



NB : Gaston : je note qu'un pc peut fournir à ses navigateurs un .pac sans serveur http : un changement de réseau, et hop changement manuel du fichier = pas de clic-clic dans les navigateurs. Sympa mais réservé à un expert, je suppose.
Avatar de l’utilisateur
jdh
Amiral
Amiral
 
Messages: 4741
Inscrit le: 29 Déc 2002 01:00
Localisation: Nantes

Messagepar briant » 23 Oct 2009 08:24

Bonjour,

Merci de vos réponses.

Je ne comprend je pense faire les bonnes manips non compliqué, j'arrive a associer n'importe quel nom sauf wpad.

J'ai testé d'associé le nom DNS wpad à un autre serveur à puis une autre station, même symptome wpad ne fonctionne pas :(

jdh a écrit:Il y a quelque chose qui m'échappe.

- un micro connait le serveur dns qui lui traduit les noms en @ip,
- un ping pour un nom est strictement équivalent à un ping pour la même @ip,
- il n'y a pas d'obligation pour une machine à s'appeler comme le dns la déclare !

Alors quel est le problème ?

(depuis un autre pc)
- le ping à l'adresse ip répond ou non ? (= @ip bien configurée) = OUI
- le ping au nom dns répond ou nom ? (= nom bien défini dans le dns)
(sur le serveur) = NON (uniquement si le nom est wpad)
- le nom est-il correspondant au nom défini dans le dns : vérif par "hostname", sinon config de /etc/hostsname et de la table /etc/hosts = OUI




Voici les tests de ping depuis le serveur 2003
Image


configuration hostname du serveur http :

si je fais un ping wpad celà fonctionne depuis le serveur http
si je fais un ping wpad.mondomaine.fr celà ne fonctionne plus

mon fichier /etc/hostname comporte une seule ligne : wpad.mondomaine.fr

Image

Cdt
briant
Quartier Maître
Quartier Maître
 
Messages: 22
Inscrit le: 15 Oct 2009 12:06

Messagepar jdh » 23 Oct 2009 10:16

Ma config (qui fonctionne)

- un serveur sous Debian de nom 'proxy-http.domaine.com' (192.168.1.229) et qui fait proxy (squid) et http (apache),
- un serveur Windows 2003 qui fait dhcp et dns,
- 2 enregistrements dns (A) proxy-http.domaine.com = 192.168.1.229 = wpad.domaine.com
- dans le dhcp, j'ai l'option 252 = wpad.domaine.com

Je lis :

sur windows :
ping apache : OK
ping wpad : ERR

Il faut travailler la config dns de windows. Point barre.

(NB : le serveur n'est pas en DHCP bien évidemment)
(NB : ping wpad sur le serveur, qui s'appelle wpad, donne 127.0.x.x ... ce qui parait très normal et ne donne aucun renseignement !)
Avatar de l’utilisateur
jdh
Amiral
Amiral
 
Messages: 4741
Inscrit le: 29 Déc 2002 01:00
Localisation: Nantes

Messagepar briant » 24 Oct 2009 14:16

Voici ce que j'ai trouvé à propos d'un patch de sécurité de microsoft

patch : ms09-008

Lors de l’application du patch, ce dernier va détecter si un enregistrement WPAD (ou ISATAP) est déjà présent dans le serveur DNS. Si aucun enregistrement n’est présent, le patch va créer une clef de registre qui va avoir pour effet d’empêcher la résolution du nom WPAD.

Cela signifie que, si un administrateur (ou un pirate) ajoute un enregistrement WPAD après l’application du patch, il devra également supprimer la clef de registre bloquant la résolution WPAD. Sinon le nom ne sera pas résolu.


lien :

http://blogs.technet.com/srd/archive/20 ... etail.aspx

ou l'on peut lire :

The security update we released helps protect customers by implementing a block list on the DNS server, containing a list of names which the DNS server will no longer resolve. This list is implemented as the following registry key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters\
GlobalQueryBlockList

sur mon serveur (Windows 2003 Server Standard R2)

j'avais bien cette clé bloquant wpad et isatap

Image

après suppression tout est rentré dans l'ordre

le patch de microsoft réserve donc ou bloque plutôt la résolution de nom WPAD si ce patch est installé... :lol:

voir aussi (section liste rouge):

http://technet.microsoft.com/fr-fr/libr ... 3635(WS.10).aspx
briant
Quartier Maître
Quartier Maître
 
Messages: 22
Inscrit le: 15 Oct 2009 12:06

Messagepar jdh » 24 Oct 2009 14:38

Je ne suis pas d'accord avec la traduction initiale !

This is typically a local domain attack where there is a degree of trust between the domain members. The Windows DNS server can allow clients to register their own hostname in the DNS server using dynamic updates. In the most common scenario, this takes place using secure dynamic updates, where a client authenticated against the domain can update its own name on the DNS server. If the WPAD or ISATAP names have not yet been registered, a domain-authenticated user could register his own machine as either of these two names.


Le patch empêche qu'un micro s'inscrive avec le nom wpad (ou isatap).
Cela n'empêche pas de créer un enregistrement A dans le nom de domaine.

Mais, si, d'une part, il n'est pas possible d'enregistrer une machine de nom WPAD (ce qui est assez logique),
d'autre part, on ne peut résoudre wpad.domaine car wpad est ajouté à une liste de valeurs interdites (ce qui est moins logique). (Ah Microsoft et la sécurité ...)

Je me réfèrerais à http://support.microsoft.com/kb/968732/ (en français) pour trouver la clé de registre qui "verrouille" wpad en quelque sorte.

Je suis d'accord avec la correction !


Bon, nous voilà renseigné sur la non résolution wpad.domaine !
Avatar de l’utilisateur
jdh
Amiral
Amiral
 
Messages: 4741
Inscrit le: 29 Déc 2002 01:00
Localisation: Nantes


Retour vers Sécurité et réseaux

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité