[curl] Test URL login-mot_de_passe
Résolu
sommam
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
Comment tester l'accès d'une application Web directement avec son login-mot de passe + simulation du clic souris pour valider.
Merci par avance
Comment tester l'accès d'une application Web directement avec son login-mot de passe + simulation du clic souris pour valider.
Merci par avance
23 réponses
J'ai mis passwd et bouton pour plus de compréhension.
Voici la commande réelle que j'ai passée et plus d'info sur le source.
curl -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20" [URL]
<form name="form_cnx" action="index.php" method="post">
<input type="hidden" name="module" value="connexion" />
<input type="hidden" name="action" value="getSession" />
<input type="hidden" name="desc" value="connexion" />
<input type="hidden" name="origine" value="login" />
<table class="centrer60 width60 interb">
<tr>
<th class="titrecnx width80"> Connexion à l'application </th>
<td class="gdhcnx width20">10:53:42</td>
</tr>
</table>
<table class="centrer60 width60 interb">
<tr>
<th class="width40 entetecnx">Nom d'utilisateur </th>
<td class="inputbold"><input name="txtuser" id="txtuser" class="inputbold" type="text" size="20" maxlength="16" /></td>
</tr>
<tr>
<th class="width40 entetecnx"> Mot de passe </th>
<td><input name="txtpwd" id="txtpwd" class="inputbold" type="password" size="20" maxlength="32" /></td>
</tr>
...........
...........
</tr>
</table>
<table class="centrer60 width60">
<tr>
<td class="width100 validation"><input name="bt1" class="bouton" type="submit" value=" Valider " /></td>
</tr>
Voici la commande réelle que j'ai passée et plus d'info sur le source.
curl -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20" [URL]
<form name="form_cnx" action="index.php" method="post">
<input type="hidden" name="module" value="connexion" />
<input type="hidden" name="action" value="getSession" />
<input type="hidden" name="desc" value="connexion" />
<input type="hidden" name="origine" value="login" />
<table class="centrer60 width60 interb">
<tr>
<th class="titrecnx width80"> Connexion à l'application </th>
<td class="gdhcnx width20">10:53:42</td>
</tr>
</table>
<table class="centrer60 width60 interb">
<tr>
<th class="width40 entetecnx">Nom d'utilisateur </th>
<td class="inputbold"><input name="txtuser" id="txtuser" class="inputbold" type="text" size="20" maxlength="16" /></td>
</tr>
<tr>
<th class="width40 entetecnx"> Mot de passe </th>
<td><input name="txtpwd" id="txtpwd" class="inputbold" type="password" size="20" maxlength="32" /></td>
</tr>
...........
...........
</tr>
</table>
<table class="centrer60 width60">
<tr>
<td class="width100 validation"><input name="bt1" class="bouton" type="submit" value=" Valider " /></td>
</tr>
En tapant cette commande :
curl -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "http://URL/index.php"
J'obtiens l'édition du source.
Ne faudrait-il pas prendre en compte le cookie ?
Mais comment ?
Voici ce que j'ai en tapant cette commande.
curl -I "http://URL/"
HTTP/1.1 200 OK
Date: Wed, 25 Aug 2010 11:40:34 GMT
Server: Apache
Accept-Ranges: bytes
X-Powered-By: PHP/4.3.9
Set-Cookie: PHPSESSID=79a4d0d402f38567981a035beaeb9b17; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Type: text/html
curl -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "http://URL/index.php"
J'obtiens l'édition du source.
Ne faudrait-il pas prendre en compte le cookie ?
Mais comment ?
Voici ce que j'ai en tapant cette commande.
curl -I "http://URL/"
HTTP/1.1 200 OK
Date: Wed, 25 Aug 2010 11:40:34 GMT
Server: Apache
Accept-Ranges: bytes
X-Powered-By: PHP/4.3.9
Set-Cookie: PHPSESSID=79a4d0d402f38567981a035beaeb9b17; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Type: text/html
Bon apparemment le login s'effectue bien.
Par contre ta demande concernait la façon de valider une connexion sur une page à l'aide de cURL en ligne de commande.
Avant de passer à autre chose il faut être sûr que l'identification s'effectue bien.
J'obtiens l'édition du source.
C'est normal. Il faut d'une part rajouter l'option "-s" (silence) et parser le tout via un navigateur en mode texte comme "w3m", du style :
Histoire de voir si tu es bien logué et que l'affichage correspond à la page demandé...
Après on verra comment récupérer le cookie de session et le remployer pour les connexions futures...
Par contre ta demande concernait la façon de valider une connexion sur une page à l'aide de cURL en ligne de commande.
Avant de passer à autre chose il faut être sûr que l'identification s'effectue bien.
J'obtiens l'édition du source.
C'est normal. Il faut d'une part rajouter l'option "-s" (silence) et parser le tout via un navigateur en mode texte comme "w3m", du style :
curl -s -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "http://URL/index.php" | w3m -dump -T text/html | less
Histoire de voir si tu es bien logué et que l'affichage correspond à la page demandé...
Après on verra comment récupérer le cookie de session et le remployer pour les connexions futures...
Salut,
Il suffit de passer le tout en ligne de commande via les options de cURL et les paramètres propres à l'application...
Voir : https://curl.se/docs/httpscripting.html
Il suffit de passer le tout en ligne de commande via les options de cURL et les paramètres propres à l'application...
Voir : https://curl.se/docs/httpscripting.html
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
J'ai lancé cette commande, ça ne marche pas.
curl -d "Nom_utilisateur=mon_login&passwd=mon_mot_de_passe&bouton_OK=%20Valider%20" http://URL/
Pour info :
J'ai récupéré les variables " Nom_utilisateur - mon_login - Valider " dans le source de la page d'accueil.
Valider est de type submit
Merci de m'aiguiller, je suis débutant.
J'ai lancé cette commande, ça ne marche pas.
curl -d "Nom_utilisateur=mon_login&passwd=mon_mot_de_passe&bouton_OK=%20Valider%20" http://URL/
Pour info :
J'ai récupéré les variables " Nom_utilisateur - mon_login - Valider " dans le source de la page d'accueil.
Valider est de type submit
Merci de m'aiguiller, je suis débutant.
Voici le contenu du FORM
J'ai mis URL pour cacher l'@ ip
Merci de ton aide
<form name="form_cnx" action="index.php" method="post"> <input type="hidden" name="module" value="connexion" /> <input type="hidden" name="action" value="getSession" /> <input type="hidden" name="desc" value="connexion" /> <input type="hidden" name="origine" value="login" />
J'ai mis URL pour cacher l'@ ip
Merci de ton aide
Je ne vois aucun champ "pasword", ni bouton "submit" c'est normal ?
Tu ne serais pas déjà logué par hasard ?
J'ai mis URL pour cacher l'@ ip
Oui ça je l'avais compris, ce que je voulais dire c'est juste que l'URL doit pointer sur la bonne page... ;-\
Dans ton cas et en voyant le contenu du "form", la page en question devrait être "index.php"...
Tu ne serais pas déjà logué par hasard ?
J'ai mis URL pour cacher l'@ ip
Oui ça je l'avais compris, ce que je voulais dire c'est juste que l'URL doit pointer sur la bonne page... ;-\
Dans ton cas et en voyant le contenu du "form", la page en question devrait être "index.php"...
curl -s -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "http://URL/index.php" | w3m -dump -T text/html | less
-bash: w3m: command not found
Visiblement w3m n'est pas installé.
N'y a t-il pas un navigateur en mode texte par défaut sur Redhat ?
-bash: w3m: command not found
Visiblement w3m n'est pas installé.
N'y a t-il pas un navigateur en mode texte par défaut sur Redhat ?
lynx n'est pas installé.
à la limite j'aurais besoin uniquement de vérifier un message d'erreur en retour via un script. Est-ce possible ?
à la limite j'aurais besoin uniquement de vérifier un message d'erreur en retour via un script. Est-ce possible ?
Finalement j'ai installé Ubuntu sur une machine virtuelle via Virtuabox.
J'ai installé CURL puis lancé cette commande
curl -s -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "@URL/index.php" | w3m -dump -T text/html | less
J'ai bien ma page d'accueil, mais j'aurais du avoir un message d'erreur du type Utilisateur ou mot de passe incorrect cer j'ai volontairement mis de faux login-mot de passe
As-tu une idée jipicy ?
Merci encore pour ton aide
J'ai installé CURL puis lancé cette commande
curl -s -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "@URL/index.php" | w3m -dump -T text/html | less
J'ai bien ma page d'accueil, mais j'aurais du avoir un message d'erreur du type Utilisateur ou mot de passe incorrect cer j'ai volontairement mis de faux login-mot de passe
As-tu une idée jipicy ?
Merci encore pour ton aide
cer j'ai volontairement mis de faux login-mot de passe
Mais est-ce qu'avec un login et mot de passe correct ça marche au moins ?
Après comme je te l'ai dit plus haut, il faut parser la page à l'aide de grep à la recherche dudit message d'erreur (ou de succès).
Voilà un extrait d'un script qui tourne chez moi et qui m'aide à m'authentifier et à récupérer le cookie sur un site avant d'y faire divers traitements...
Mais est-ce qu'avec un login et mot de passe correct ça marche au moins ?
Après comme je te l'ai dit plus haut, il faut parser la page à l'aide de grep à la recherche dudit message d'erreur (ou de succès).
Voilà un extrait d'un script qui tourne chez moi et qui m'aide à m'authentifier et à récupérer le cookie sur un site avant d'y faire divers traitements...
#------------------#
## Pseudo
#------------------#
PSEUDO="toto"
if [ -z "${PSEUDO}" ]
then
read -p "Veuillez saisir votre pseudo : " PSEUDO
fi
#------------------#
## Mot de passe
#------------------#
PASS=""
if [ -z "${PASS}" ]
then
echo
echo -e "Entrez le mot de passe pour ${PSEUDO} : \c"
stty -echo
read PASS
stty echo
echo -e "\n"
fi
#------------------#
## cookie
#------------------#
if [ ! -e cookies.txt -o "${DATE_COOKIE}" != "${DATE}" ]
then
curl -s \
--cookie-jar "cookies.txt" \
--data "login=${PSEUDO}&pass=${PASS}&connect=Connexion" \
-L "${URL}/index.php" |\
w3m -dump -T text/html |\
grep -qo "L'authentification a échoué \!"
if [ "$?" = "0" ]
then
echo "${Red}L'authentification a échoué.${Reset}"
echo
echo "Veuillez relancer le script et vérifier vos identifiants..."
else
echo "${LightGreen}Authentification OK.${Reset}"
echo
fi
fi
cookie="cookies.txt"
Merci jipicy,
Avant de tester ton script, sur la page d'accueil il y a un menu déroulant "Mois de gestion " janvier - février etc.."
Extrait du source
<tr>
<th class="width40 entetecnx"> Mois de gestion </th>
<td><select name="annee" class="select20 inputslc" >
<option value="Janv" selected="selected" > janv </option>
<option value="Fév" > Févv </option>
<option value="Mars" > Mars </option>
....
.....
</select>
</td>
</tr>
Que faut-il rajouter à ta commande pour prendre en compte cette option ?
curl -s -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "@URL/index.php" | w3m -dump -T text/html | less
Thanks
Avant de tester ton script, sur la page d'accueil il y a un menu déroulant "Mois de gestion " janvier - février etc.."
Extrait du source
<tr>
<th class="width40 entetecnx"> Mois de gestion </th>
<td><select name="annee" class="select20 inputslc" >
<option value="Janv" selected="selected" > janv </option>
<option value="Fév" > Févv </option>
<option value="Mars" > Mars </option>
....
.....
</select>
</td>
</tr>
Que faut-il rajouter à ta commande pour prendre en compte cette option ?
curl -s -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "@URL/index.php" | w3m -dump -T text/html | less
Thanks
Concernant le menu déroulant je verrais ça plus tard car il y a comme un problème quand je rajoute les options --trace-ascii et -b
curl --trace-ascii -s -d -b "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "[URL]" | w3m -dump -T text/html | less
curl: (6) Couldn't resolve host 'txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login'
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3330 0 3328 0 2 50597 30 --:--:-- --:--:-- --:--:-- 53645
Avez-vous une idée ?
curl --trace-ascii -s -d -b "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "[URL]" | w3m -dump -T text/html | less
curl: (6) Couldn't resolve host 'txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login'
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 3330 0 3328 0 2 50597 30 --:--:-- --:--:-- --:--:-- 53645
Avez-vous une idée ?
Euh... l'option "-b" attend le nom (avec le chemin le cas échéant) du fichier sensé contenir les cookies ;-(
Donc pas étonnant que tu es une erreur.
Mon exemple ci-dessus récupère dans un premier temps le cookie (--cookie-jar "cookies.txt") dans un fichier nommé "cookies.txt".
Une fois l'identification faite et le cookie récupéré, le reste de mon script appelle "curl" comme suit :
Donc pas étonnant que tu es une erreur.
Mon exemple ci-dessus récupère dans un premier temps le cookie (--cookie-jar "cookies.txt") dans un fichier nommé "cookies.txt".
Une fois l'identification faite et le cookie récupéré, le reste de mon script appelle "curl" comme suit :
curl -s -b cookies.txt -d "blabla&blabla&blabla&" - L "URL".
Je n'ai plus l'erreur en passant cette commande, merci
curl --trace-ascii --cookie-jar "cookies.txt" -s -b cookies.txt -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "[URL]/index.php" | w3m -dump -T text/html | less
Quand j'enlève cette partie module=connexion&action=getSession&desc=connexion&origine=login, j'ai ma page d'accueil.
Voici la commande en question
curl --trace-ascii --cookie-jar "cookies.txt" -s -b cookies.txt -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20" -L "[URL]/index.php" | w3m -dump -T text/html | less
Il semblerait que la partie prise en compte du login-mot de passe fonctionne pas.
Qu'en penses-tu ?
curl --trace-ascii --cookie-jar "cookies.txt" -s -b cookies.txt -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20&module=connexion&action=getSession&desc=connexion&origine=login" -L "[URL]/index.php" | w3m -dump -T text/html | less
Quand j'enlève cette partie module=connexion&action=getSession&desc=connexion&origine=login, j'ai ma page d'accueil.
Voici la commande en question
curl --trace-ascii --cookie-jar "cookies.txt" -s -b cookies.txt -d "txtuser=toto&txtpwd=titi&bt1=%20Valider%20" -L "[URL]/index.php" | w3m -dump -T text/html | less
Il semblerait que la partie prise en compte du login-mot de passe fonctionne pas.
Qu'en penses-tu ?
T'es en train de tout mélanger ;-((
--cookie-jar "cookies.txt"
Permet uniquement de récupérer le cookie dans un fichier (cookies.txt) pour d'éventuelles futures connexions en combinaison avec l'option "-d" qui elle sert à transmettre des données comme l'identification via login et mot de passe. Il ne faut pas la combiner avec "-b cookies.txt".
Dans un 1er temps il faut te focaliser juste sur l'authentification, en essayant de trouver les bonnes options à passées au paramètre "-d".
C'est pour ça que je t'ai donné au post #18, un lien vers une extension de Firefox qui t'aidera à trouver la bonne syntaxe.
Une fois que tu auras réussi à trouver la bonne syntaxe, tu pourras stocker le cookie dans un fichier.
Ensuite, on avisera de passer en plus le bon item de la liste déroulante...
--cookie-jar "cookies.txt"
Permet uniquement de récupérer le cookie dans un fichier (cookies.txt) pour d'éventuelles futures connexions en combinaison avec l'option "-d" qui elle sert à transmettre des données comme l'identification via login et mot de passe. Il ne faut pas la combiner avec "-b cookies.txt".
Dans un 1er temps il faut te focaliser juste sur l'authentification, en essayant de trouver les bonnes options à passées au paramètre "-d".
C'est pour ça que je t'ai donné au post #18, un lien vers une extension de Firefox qui t'aidera à trouver la bonne syntaxe.
Une fois que tu auras réussi à trouver la bonne syntaxe, tu pourras stocker le cookie dans un fichier.
Ensuite, on avisera de passer en plus le bon item de la liste déroulante...
Tamper Data me donne cela
POSTDATA=module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=+Valider+
Que j'ai inclus dans cette commande épurée
curl -s -d module=connexion&action=getSession&desc=connexion&origine=login&txtuser=y&txtpwd=y&annee=2010&bt1=+Valider+" -L "[URL]/index.php" | w3m -dump -T text/html | less
J'ai toujours la page d'accueil, visiblement le login-mot de passe n'est toujours pas pris en compte.
Je continue à chercher pourquoi ?
POSTDATA=module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=+Valider+
Que j'ai inclus dans cette commande épurée
curl -s -d module=connexion&action=getSession&desc=connexion&origine=login&txtuser=y&txtpwd=y&annee=2010&bt1=+Valider+" -L "[URL]/index.php" | w3m -dump -T text/html | less
J'ai toujours la page d'accueil, visiblement le login-mot de passe n'est toujours pas pris en compte.
Je continue à chercher pourquoi ?
"Essaye la même commande avec "&bt1=%20Valider%20"."
curl -s -d "module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=%20Valider%20" -L "[URL]/index.php" | w3m -dump -T text/html | less
idem : page d'accueil uniquement
"Y'a une case à cocher dans Tamper Data pour avoir le html interprété..."
Où se trouve cette case ?
curl -s -d "module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=%20Valider%20" -L "[URL]/index.php" | w3m -dump -T text/html | less
idem : page d'accueil uniquement
"Y'a une case à cocher dans Tamper Data pour avoir le html interprété..."
Où se trouve cette case ?
Où se trouve cette case ?
Quand tu cliques droit sur une ligne (Post ou autre) dans la fenêtre de Tamper Data et que tu choisis détails, dans la fenêtre qui s'ouvre tu as une case "Décodé".
Bon on récapitule...
Depuis Firefox tu affiches ta page d'accueil, tu lances Tamper Data; tu entres ton identifiant et mot de passe et tu valides. A partir de là, tu cherches dans Tamper Data la ligne Post, clic gauche pour la surligner et clic droit sur la ligne POSTDATA dans laquelle tu récupères les valeurs telle quelles doivent être passées via le paramètre "-d" et sur la ligne "Referer" l'url à passer au paramètre "-L".
C'est exact ?
Qu'as-tu à ce moment là comme page affichée ? Quel message te dis que l'authentification à réussi ?
Ensuite depuis une console tu lances la commande curl comme mentionné auparavant, et donc via "w3m" et "less" tu n'obtiens pas le même affichage ?
Quand tu cliques droit sur une ligne (Post ou autre) dans la fenêtre de Tamper Data et que tu choisis détails, dans la fenêtre qui s'ouvre tu as une case "Décodé".
Bon on récapitule...
Depuis Firefox tu affiches ta page d'accueil, tu lances Tamper Data; tu entres ton identifiant et mot de passe et tu valides. A partir de là, tu cherches dans Tamper Data la ligne Post, clic gauche pour la surligner et clic droit sur la ligne POSTDATA dans laquelle tu récupères les valeurs telle quelles doivent être passées via le paramètre "-d" et sur la ligne "Referer" l'url à passer au paramètre "-L".
C'est exact ?
Qu'as-tu à ce moment là comme page affichée ? Quel message te dis que l'authentification à réussi ?
Ensuite depuis une console tu lances la commande curl comme mentionné auparavant, et donc via "w3m" et "less" tu n'obtiens pas le même affichage ?
Bonjour jipicy,
J'ai suivi tes conseils pour Tamperdata.
Referer=[URL]/index.php
POSTDATA=module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=+Valider+
codé bt1=+Valider+
décodé bt1= Valider
J'ai lancé cette commande :
curl -s -d "module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=%20Valider%20" -L "[URL]/index.php" | w3m -dump -T text/html | less
Valider avec ou sans %20 --> même résultat que lorsque j'appelle l'URL via firefox. A savoir la page d'accueil avec
Nom de l'application
LOGIN
Mot de passe
Année
Une seule différence, via firefox, il y a le message :
Erreur sur le login et/ou mot de passe
Je cherche de mon coté.
J'ai suivi tes conseils pour Tamperdata.
Referer=[URL]/index.php
POSTDATA=module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=+Valider+
codé bt1=+Valider+
décodé bt1= Valider
J'ai lancé cette commande :
curl -s -d "module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=%20Valider%20" -L "[URL]/index.php" | w3m -dump -T text/html | less
Valider avec ou sans %20 --> même résultat que lorsque j'appelle l'URL via firefox. A savoir la page d'accueil avec
Nom de l'application
LOGIN
Mot de passe
Année
Une seule différence, via firefox, il y a le message :
Erreur sur le login et/ou mot de passe
Je cherche de mon coté.
Et avec :
Tu as quelque chose ?
Et si tu t'authentifies correctement via Firefox, tu as quoi en retour ?
curl -s -d "module=connexion&action=getSession&desc=connexion&origine=login&txtuser=toto&txtpwd=titi&annee=2010&bt1=%20Valider%20" -L "[URL]/index.php" | w3m -dump -T text/html | grep 'Erreur sur le login'
Tu as quelque chose ?
Et si tu t'authentifies correctement via Firefox, tu as quoi en retour ?
Le grep 'Erreur sur le login' ne renvoie rien.
Sur Firefox le source de la page donne cela partiellement
<div id="contenu">
<div id="error">
<ul>
<li>Erreur sur le login et/ou mot de passe .</li>
</ul>
</div>
Je ne comprends pas pourquoi qu'en ligne de commande je n'ai pas ce message.
Je continue à chercher...
Sur Firefox le source de la page donne cela partiellement
<div id="contenu">
<div id="error">
<ul>
<li>Erreur sur le login et/ou mot de passe .</li>
</ul>
</div>
Je ne comprends pas pourquoi qu'en ligne de commande je n'ai pas ce message.
Je continue à chercher...
Cette commande ne renvoie pas le message d'erreur.
Est-ce dû peut-être au cookie non pris en compte dans la commande ?
Est-ce dû peut-être au cookie non pris en compte dans la commande ?
Bonjour,
Je confirme l'URL correspondante à la méthode POST est bien :
Referer=http://[URL]/index.php
Je confirme l'URL correspondante à la méthode POST est bien :
Referer=http://[URL]/index.php
Peut-être une piste malgré tes remarques précédentes concernant les cookies.
La plupart des serveurs utilisent des cookies pour suivre le statut de la connexion du client (voir paragraphe plus bas en gras).
Source : https://curl.se/docs/httpscripting.html
13. Web Login
While not strictly just HTTP related, it still cause a lot of people problems
so here's the executive run-down of how the vast majority of all login forms
work and how to login to them using curl.
It can also be noted that to do this properly in an automated fashion, you
will most certainly need to script things and do multiple curl invokes etc.
First, servers mostly use cookies to track the logged-in status of the
client, so you will need to capture the cookies you receive in the
responses. Then, many sites also set a special cookie on the login page (to
make sure you got there through their login page) so you should make a habit
of first getting the login-form page to capture the cookies set there.
Some web-based login systems features various amounts of javascript, and
sometimes they use such code to set or modify cookie contents. Possibly they
do that to prevent programmed logins, like this manual describes how to...
Anyway, if reading the code isn't enough to let you repeat the behavior
manually, capturing the HTTP requests done by your browers and analyzing the
sent cookies is usually a working method to work out how to shortcut the
javascript need.
In the actual <form> tag for the login, lots of sites fill-in random/session
or otherwise secretly generated hidden tags and you may need to first capture
the HTML code for the login form and extract all the hidden fields to be able
to do a proper login POST. Remember that the contents need to be URL encoded
when sent in a normal POST.
La plupart des serveurs utilisent des cookies pour suivre le statut de la connexion du client (voir paragraphe plus bas en gras).
Source : https://curl.se/docs/httpscripting.html
13. Web Login
While not strictly just HTTP related, it still cause a lot of people problems
so here's the executive run-down of how the vast majority of all login forms
work and how to login to them using curl.
It can also be noted that to do this properly in an automated fashion, you
will most certainly need to script things and do multiple curl invokes etc.
First, servers mostly use cookies to track the logged-in status of the
client, so you will need to capture the cookies you receive in the
responses. Then, many sites also set a special cookie on the login page (to
make sure you got there through their login page) so you should make a habit
of first getting the login-form page to capture the cookies set there.
Some web-based login systems features various amounts of javascript, and
sometimes they use such code to set or modify cookie contents. Possibly they
do that to prevent programmed logins, like this manual describes how to...
Anyway, if reading the code isn't enough to let you repeat the behavior
manually, capturing the HTTP requests done by your browers and analyzing the
sent cookies is usually a working method to work out how to shortcut the
javascript need.
In the actual <form> tag for the login, lots of sites fill-in random/session
or otherwise secretly generated hidden tags and you may need to first capture
the HTML code for the login form and extract all the hidden fields to be able
to do a proper login POST. Remember that the contents need to be URL encoded
when sent in a normal POST.
Ben c'est ce que je te disais dans mon post #20, dans mon exemple je récupère le cookie via une page "connexion.php"... ;-\
En cas d'échec, enlèves un par un les nouveaux ajouts et/ou essaies-les un à un, etc.