PDA

View Full Version : [REGLE]Probleme check_http authentification


sergestage
04-19-2006, 05:40 PM
Bonjour,
donc comme ecris dans le titre j'essaye de tester l'authentification dans une page web. Pour commencer j'ai donc utiliser check_http en ligne de commande ca donne ca :
./check_http -H 192.168.X.X -u /developpement/loginSE.asp -a user:login

Le probleme en plus c'est que ca marche :? mais ca marche trop bien en fait quoi que je mette dans user et login il me renvois OK....et je precise ca viens pas du site j'ai essayé avec un autre....
Donc j'aimerai bien savoir si quelqu'un a deja utilisé cette option et réussi a la faire marcher et comment ?

templuche
04-19-2006, 06:12 PM
Bonjour,

Plusieurs possibilités:
1) essaye de rentrer l'URL suivante dans ton navigateur web http://192.168.X.X/eveloppement/loginSE.asp et vérifie qu'il te demande bien un login/mot de passe
2) change le user par "toto" juste pour vérifier (et fait le vraimen avec "toto", ne me dis pas que tu l'as déjà testé)
3) dis moi, c'est bien une authentification basée sur le HTTP et non une authentification de type formulaire?
4) essaye avec l'option -v pour vérifier le retour

sergestage
04-19-2006, 06:22 PM
euh.... en fait c une authentification de type formulaire ca doit etre pour ca que ca marche pas comme je veux :lol:
Bon et ya pas de solution pour les authentification de type formulaire ?

templuche
04-19-2006, 06:26 PM
Bonjour,

Il y a une solution : webinject. Cependant, ce n'est pas aussi trivial que check_http.

surcouf
04-19-2006, 06:41 PM
euh.... en fait c une authentification de type formulaire ca doit etre pour ca que ca marche pas comme je veux :lol:
Bon et ya pas de solution pour les authentification de type formulaire ?

Un formulaire n'est jamais qu'une requête HTTP de type POST, hein :

$ ./check_http --help
...
-P, --post=STRING
URL encoded http POST data
...

Mais si tu veux aller plus loin et que tu souhaites dérouler un véritable scénario afin de simuler les actions d'un utilisateur, je te renvoie à également à webinject (http://www.webinject.org/).

templuche
04-19-2006, 06:58 PM
Bonjour,

Un formulaire n'est jamais qu'une requête HTTP de type POST, hein.
Ca dépend, ça peut être aussi une requète GET. De plus, le mot de passe et le login peuvent être encodés et il peut ne pas être possible de trouver le mécanisme d'encodage utilisé.

sergestage
04-20-2006, 10:22 AM
Bon j'ai regardé un peu webinject mais c'est un vraiment un truc dediée j'aurais bien aimé quelquechose d'integré a nagios. Donc je vais essayer de voir la requete de type post si je peut m'en sortir. Et puis j'ai juste a demander a une personne de mon entreprise pour savoir si c'est du post du get ou comment c'est crypté mais bon ca pas l'air facile :?
Et puis si j'y arrive pas j'aurais tjrs webinject alors :wink:

sergestage
04-20-2006, 04:51 PM
j'ai testé avec le post du check_http mais j'y arrive pas ca marche pas :cry:
alors je me suis rabattu sur webinject et en fait j'avais pas vu la premiere fois mais il y a bien un plugin pour nagios, le souci c que c pas trop documenté donc j'y arrive pas :(
Donc j'espere que quelqu'un a deja reussi a faire marcher ce plugin et qu'il pourra me dire d'ou viens l'erreur. Donc voici mon config.xml :
<testcasefile>testcases.xml</testcasefile>
<useragent>Webinject appli</useragent>
<timeout>10</timeout>
<globaltimeout>20</globaltimeout>
<reporttype>nagios</reporttype>

et testcases.xml :

<testcases repeat="1">

<case
id="1"
description1="Post "
method="post"
url="http://192.168.x.x:83/portalmanager/loginSE.asp"
postbody="user=xxx&password=xxx"
verifynegative="Mauvais login mot de passe"
errormessage="Unnable to connect"

/>

<case
id="2"
description1="SAMPLE [NEGATIVE] TEST CASE - load WebInject dev page"
description2="verify string 'bogus string' does not exist in response"
method="get"
url="http://www.webinject.org/dev.html"
verifynegative="bogus string"
/>

<case
id="3"
description1="SAMPLE TEST CASE THAT FAILS - load bogus page"
description2="case should fail with an HTTP 404 (not found) error"
method="get"
url="http://www.webinject.org/bogus.html"
/>

<case
id="4"
description1="SAMPLE TEST CASE THAT FAILS - valid page with bogus verification"
description2="case should fail"
method="get"
url="http://www.webinject.org/dev.html"
verifypositive="I am a bogus string"
/>

</testcases>

Et quand je lance mon plugins avec cette commande :
./webinject.pl -c config.xml testcases.xml
resultat :
could not find ParserDetails.ini in /usr/lib/perl5/vendor_perl/5.8.5/XML/SAX
WebInject CRITICAL - Unnable to connect |time=1.197;20;;0

D'ou viens ce could not find ParserDetails? et est ce que j'ai bien configuré webinject ?

surcouf
04-21-2006, 10:48 AM
j'ai testé avec le post du check_http mais j'y arrive pas ca marche pas :cry:
alors je me suis rabattu sur webinject et en fait j'avais pas vu la premiere fois mais il y a bien un plugin pour nagios, le souci c que c pas trop documenté donc j'y arrive pas :(

Tu te fous de nous ou quoi ?
C'est très bien documenté, au contraire:
http://www.webinject.org/manual.html

Donc j'espere que quelqu'un a deja reussi a faire marcher ce plugin et qu'il pourra me dire d'ou viens l'erreur. Donc voici mon config.xml :

[...]

Et quand je lance mon plugins avec cette commande :
./webinject.pl -c config.xml testcases.xml
resultat :
could not find ParserDetails.ini in /usr/lib/perl5/vendor_perl/5.8.5/XML/SAX
WebInject CRITICAL - Unnable to connect |time=1.197;20;;0

D'ou viens ce could not find ParserDetails? et est ce que j'ai bien configuré webinject ?

Comment as-tu surtout installé le module XML::SAX ?
http://perl-xml.sourceforge.net/faq/#parserdetails.ini

sergestage
04-21-2006, 11:45 AM
Je voulais dire c'est pas tres bien documenté pour l'utilisation avec nagios ...... Sinon je suis bien allé sur leur forum mais tout en anglais
:cry:
Sinon je vais tout de suite regarder ton lien il a l'air pas mal moi je l'install sur une distrib basé sur redHat et j'ai du mal a trouvé les rpm a chaque fois. Du coup je l'ai pas installé vraiment comme c'est ecris sur le lien donc je vais recommencer l'install du module XML::SAX

surcouf
04-21-2006, 11:57 AM
Je voulais dire c'est pas tres bien documenté pour l'utilisation avec nagios ...... Sinon je suis bien allé sur leur forum mais tout en anglais
:cry:
Sinon je vais tout de suite regarder ton lien il a l'air pas mal moi je l'install sur une distrib basé sur redHat et j'ai du mal a trouvé les rpm a chaque fois. Du coup je l'ai pas installé vraiment comme c'est ecris sur le lien donc je vais recommencer l'install du module XML::SAX

Pour les modules Perl en RPM pour RedHat, je vais souvent voir chez Dag (http://dag.wieers.com/home-made/apt/). Et on y trouve d'ailleurs plusieurs modules XML::SAX :
- perl-XML-SAX (http://dag.wieers.com/packages/perl-XML-SAX/)
- perl-XML-SAX-Base (http://dag.wieers.com/packages/perl-XML-SAX-Base/)
- perl-XML-SAX-PurePerl (http://dag.wieers.com/packages/perl-XML-SAX-PurePerl/)
- perl-XML-SAX-Writer (http://dag.wieers.com/packages/perl-XML-SAX-Writer/)

En fait, tu dois pouvoir trouver tous les modules nécessaires et non fournis en standard par RedHat dans le dépôt de Dag (http://dag.wieers.com/home-made/apt/).

sergestage
04-21-2006, 12:24 PM
merci pour l'info mais j'ai reussi a le reinstall avec cpan et ca marche j'ai plus l'erreur.
Et pour l'erreur Critical c moi qui me suis planté ds l'url :?
Bon maintenant j'ai tjrs le mm pb qu'avec check_http c a dire qu'il me repond tjrs OK mm avec un mauvais mot de passe ... surement parceque le site me renvoi pas de message d'erreur qd je fait une mauvaise authentification mais il me renvoi sur la mm page de login. Donc je vais regarder si il y a pas une option pour verifier si la page a changé a l'authentification :wink:

sergestage
04-21-2006, 05:15 PM
j'ai encore une question pour webinject ..... En fait j'arrive toujours pas a ce qu'il me detecte que la page a changé lors de l'authentification et je commence a peter un cable.. :evil:
C bizzare que j'arrive pas a faire ca c quand meme la base je pense s'authentifier avec un post ....
J'utilise l'option verifypositive et verifynegative pour voir si la page que l'on me renvois contient bien ce que je veux mais ca marche toujours pas :-(
Que je mette un bon mot de passe ou un mauvais ils s'en tape pour lui c pareil et les verify arrive pas a voir les mots contenu dans ma page qu'on me renvoi.
On dirais qu'il arrive pas a se connecter pourtant l'adresse et le login mot de passe sont exact j'en suis sure.
Donc je me demandai si il fallais peut etre utiliser une autre option que je n'ai peut etre pas remarqué ???

templuche
04-21-2006, 05:23 PM
Essaye de passer Webinject en mode debug (ou verbose je ne sais plus). Il y a une option qui indique le contenu des pages récupérées par webinject. Le contenu est ajouté dans un fichier.

sergestage
04-21-2006, 05:56 PM
En fait il n'y a pas de mode debug ou verbose il y a simplement un fichier de log. Et je voulais deja le regarder la derniere fois mais il existait pas en fait il faut enlever la balise pour le mode plugins de nagios pour qu'il créer bien le log... va savoir pkoi :?:
J'ai trouver ca a l'instant et c bien ce qu'il me semblais il arrive pas sur l'autre page ... l'authentification doit echouer il me renvoi la page de login mot de passe :cry:
Pourtant c bien la methode post qui est utilisé c bien le bon login et mot de passe dans postbody="login=XXX&password=XXX"
Le seul petit truc qui pourrais etre pas bon c'est le posttype ... en fait sur ma page d'authentification le type c : text/html mais quand je met ce type dans ma balise il me met qu'il connait pas, j'ai bien essayé d'autre type mais la il en veut pas donc j'ai laissé par defaut.
Ca m'etonnerai que ca vienne de ca mais bon ? la si vous avez des idée ca m'interesse :)

sergestage
04-27-2006, 06:07 PM
Bon en fait j'ai résolu mon problème, c'etait tout bete mais j'ai perdu 3 jours pour ca ....
Apres avoir rectifier qque erreur dans le fichier de test, j'ai decouvert que je n'avais pas assez de droit avec le login mot de passe que j'avais et quand je me connectais avec le net je voyais aucune erreur mais en fait il y avais une interdiction d'accès a la base je crois un truc comme ca et webinject lui detectais bien qu'il y avais une erreur meme si il pouvais afficher la page :-(
Enfin bon ca marche vive webinject !

wistof
04-27-2006, 09:11 PM
Fort de ton retour d'expérience, ça serait sympa que tu nous faisse un petit topic sur webinject :D