Cet article discutera de diverses méthodes de spécification des noms d'utilisateur et des mots de passe dans une demande Curl.
Curl spécifie le nom d'utilisateur et le mot de passe
Curl est un outil polyvalent et fournit donc plusieurs façons de passer un nom d'utilisateur et un mot de passe, chacun avec ses propres inconvénients.
La forme la plus élémentaire d'authentification fournie par Curl est le paramètre -U ou -User.
Le paramètre vous permet de spécifier un nom d'utilisateur et un mot de passe séparés par un côlon. La syntaxe de commande est comme indiqué:
$ curl -u nom d'utilisateur: mot de passe [url]
Par exemple:
$ curl -u "bob: passwd" https: // exemple.com
La commande ci-dessus utilise le -U pour passer le nom d'utilisateur «bob» et le mot de passe «passwd» à l'adresse https: // exemple.com
Les informations d'identification seront codées au format Base64 et passées dans l'autorisation: en-tête de base par curl.
L'image ci-dessous montre la demande ci-dessus interceptée avec Burpsuite.
Nom d'utilisateur et mot de passe dans l'URL.
Curl vous permet de passer un nom d'utilisateur et un mot de passe dans l'URL. La syntaxe est comme indiqué:
$ curl https: // nom d'utilisateur: mot de passe @ [url]
Par exemple:
curl https: // bob: passwd @ https: // exemple.com
La méthode ci-dessus vous permet de supprimer le paramètre -u.
Désavantages
Il y a plusieurs inconvénients à utiliser les deux méthodes discutées ci-dessus. Ceux-ci inclus:
Vous pouvez surmonter le deuxième inconvénient en vous abstenant de protocoles non cryptés, mais vous devez rechercher des alternatives pour les deux autres.
Pour empêcher les informations d'identification d'apparaître dans votre historique de bash, vous pouvez faire en sorte que Curl vous demande le mot de passe dans la session du terminal.
Force Curl à provoquer un mot de passe
Pour faire en sorte que Curl vous invite à un mot de passe, utilisez l'indicateur -u et passez le nom d'utilisateur comme indiqué dans la syntaxe ci-dessous:
Spécifiez le -u suivi du nom d'utilisateur. Considérez la syntaxe ci-dessous:
$ curl -u 'nom d'utilisateur "[url]
Par exemple:
$ curl -u 'bob' https: // exemple.com
La commande obligera Curl à vous demander le mot de passe.
boucler les références avec .fichier netrc
Si vous souhaitez empêcher les informations d'identification d'apparaître dans l'historique de votre commande ou les outils de liste de processus, utilisez le .NETRC ou un fichier de configuration.
Qu'est-ce qu'un .fichier netrc?
Le .Le fichier NetRC est un fichier texte qui contient des informations de connexion utilisées par les processus de blocage automatique. Curl prend en charge cette méthode pour passer les informations d'authentification.
Le .Le fichier NETRC est situé dans le répertoire personnel de l'utilisateur. Dans Windows, le fichier est sous le nom _netrc.
.Format de fichier NETRC.
Le .Le fichier NETRC suit un format simple. Tout d'abord, vous spécifiez la machine, nom suivi des informations d'identification associées à cette machine.
Le fichier utilise les jetons suivants pour spécifier diverses parties des informations d'autorisation.
Ce qui précède est les seuls jetons que vous devez savoir lorsque vous travaillez avec Curl.
Vous pouvez en apprendre davantage ici:
https: // www.gnou.org / logiciel / inetutils / manual / html_node / the-_002enetrc-file.html
Exemple
Créer un .Entrée NetRC pour le nom d'utilisateur «Bob» et le mot de passe «Passwd». Nous pouvons ajouter:
$ nano .netrc
Ajoutez l'entrée en tant que:
exemple de machine.com connexion bob mot de passe passd
Dans l'entrée ci-dessus, nous disons à curl que la machine cible est un exemple.com. Ensuite, utilisez le nom d'utilisateur «Bob» et le mot de passe «passwd» pour authentifier.
Nous pouvons ensuite exécuter la commande:
$ curl --netrc-file ~ /.netrc https: // exemple.com
Ici, Curl localisera le spécifié .Fichier NetRC et correspondez au jeton qui correspond à l'URL https: // Exemple.com. Il utilisera ensuite les informations d'identification spécifiées pour se connecter.
Conclusion
Cet article a exploré les principes fondamentaux de l'exécution de l'authentification du nom d'utilisateur et du mot de passe avec Curl. Nous avons également couvert en utilisant un .Fichier NetRC pour effectuer une authentification sécurisée avec Curl.