Aller au contenu

Scans authentifiés

Ostorlab offre la possibilité d'effectuer des analyses authentifiées (Authenticated scans) sur les applications mobiles, les applications web et les serveurs backend. Les identifiants peuvent être configurés lors de la création de l'analyse (Scan) à l'aide du menu "Add Test Credentials".

De quoi ai-je besoin avant de commencer ?

Vous avez besoin d'un compte de test sur la cible, de ses identifiants, des informations 2FA si la connexion demande un code, et d'un accès réseau entre le scanner et la cible.

  • Un compte de test sur la cible. Nous recommandons un compte de test dédié qui ne se verrouille pas après des échecs de connexion.
  • Les identifiants de ce compte. Par exemple un login et un mot de passe, ou un script Puppeteer pour un flux de connexion en plusieurs étapes. Voir Quels types d'identifiants puis-je ajouter ?.
  • La méthode 2FA, si la connexion en nécessite une. Certaines méthodes demandent une préparation, comme un numéro de téléphone de test dédié pour les SMS. Voir Comment gérer l'OTP et le MFA ?.
  • Un accès réseau à la cible. Voir De quel accès réseau le scanner a-t-il besoin ?.
  • Pour un scan mobile, l'application. Uploadez un fichier APK ou AAB pour Android ou un fichier IPA non chiffré pour iOS, ou scannez l'application depuis le store.

Quels types d'identifiants puis-je ajouter ?

Vous pouvez ajouter des identifiants Login & Password, Basic Authentication, Email, Credit card, Phone Number, Address, Certificates, Script, Custom et HTTP Header, ainsi que quatre types 2FA (SMS, Email, TOTP et Manual). Le tableau ci-dessous décrit chacun d'eux.

Lors de la création d'une analyse, à l'étape set scan Credentials, cliquez sur Add Test Credentials

Add Test Credentials Button Location

Un menu apparaîtra, vous permettant d'ajouter plusieurs identifiants de test et paramètres tels que nom d'utilisateur/mot de passe, données de carte de crédit, adresse et numéro de téléphone pour effectuer divers tests et scénarios comme les paiements et les processus de paiement (Checkouts).

Test Credentials Configuration Menu

Vous pouvez aussi gérer les identifiants depuis le menu Test Credentials, puis les sélectionner lors de la création d'un scan. Les types d'identifiants suivants sont disponibles :

Type Utilisation
Login & Password Un flux d'authentification simple qui nécessite un nom d'utilisateur et un mot de passe.
Basic Authentication Les cibles qui utilisent le schéma HTTP Basic Authentication.
Email Une adresse e-mail à utiliser pendant les tests.
Credit card Des données de carte pour des scénarios tels que le paiement et le checkout.
Phone Number Un numéro de téléphone à utiliser pendant les tests.
Address Une adresse à utiliser pendant les tests.
Certificates Un certificat client TLS/SSL pour le TLS mutuel. Pour les applications mobiles, le certificat doit être au format PEM.
Script Un script Puppeteer pour des flux d'authentification complexes ou des interactions comme le checkout.
Custom Des paires clé-valeur pour des champs de formulaire personnalisés, comme le nom d'utilisateur, le mot de passe et le nom de domaine.
HTTP Header Des en-têtes comme Authorization ou User-Agent, couramment utilisés par les API.
2FA SMS, 2FA Email, 2FA TOTP, 2FA Manual Une connexion qui demande un code à usage unique. Voir Comment gérer l'OTP et le MFA ?.

Login and Password Input Fields

Pour un guide web complet, voir Analyse Web authentifiée. Les guides Web Deep Agentic Scan, Mobile Deep Agentic Scan et Lancer un scan Multi Asset incluent la même étape d'identifiants.

Authentification de l'application web avec un script Puppeteer / Chrome Recorder

Si vous avez des applications web qui nécessitent un flux d'authentification plus complexe, vous pouvez uploader des scripts Puppeteer qui seront exécutés pendant l'analyse. Ces scripts peuvent être générés en utilisant the Chrome Devtool Recorder.

Puppeteer Script Upload Interface

Pour les applications mobiles qui nécessitent une authentification par certificat, vous pouvez uploader votre certificat. Le certificat doit être au format PEM.

Certificate Authentication Option

Uploadez votre certificat

Certificate Upload Dialog

Comment gérer l'OTP et le MFA ?

Ajoutez un identifiant 2FA à côté de l'identifiant de connexion : SMS, Email, TOTP ou Manual.

Vous créez chacun d'eux depuis Scan > Test Credentials > New. Choisissez la méthode qui correspond à la façon dont votre application envoie le code :

Méthode Ce que vous fournissez Condition clé
2FA SMS Le Sender Phone Number depuis lequel votre application envoie les messages OTP. Contactez le Support Ostorlab pour obtenir un numéro de téléphone de test dédié, et configurez-le sur le compte de test.
2FA Email L'adresse Email Sender, ainsi que l'adresse e-mail et le mot de passe de la boîte de réception de test. L'accès IMAP/SMTP doit être activé sur la boîte de réception. Si le fournisseur de messagerie impose le 2FA, utilisez un mot de passe d'application (App Password), et non le mot de passe habituel.
2FA TOTP Le TOTP Secret (seed) encodé en Base32. Activez le TOTP sur le compte de test et conservez le seed obtenu lors de la configuration de l'application d'authentification.
2FA Manual Un libellé de référence Sender. Le scan se met en pause à l'étape 2FA. Vous saisissez le code depuis les détails du scan, et le scan reste en pause jusqu'à ce que vous le fassiez.

Pour des instructions étape par étape, voir Authentification à deux facteurs (2FA) pour les analyses automatisées.

Schémas d'authentification complexes pour les applications mobiles

Les schémas d'authentification complexes comme les OTP ou les claviers numériques aléatoires sont soit automatisés à l'aide de scripts Appium, soit réalisés manuellement de façon ponctuelle par un membre de l'équipe de support d'Ostorlab. Si votre application nécessite un schéma d'authentification personnalisé, veuillez nous contacter par e-mail : support@ostorlab.dev pour obtenir des conseils.

Puis-je tester avec plusieurs rôles utilisateur ?

Vous pouvez ajouter plusieurs identifiants de test à un même scan. Les identifiants login et mot de passe acceptent aussi une valeur role facultative, que vous définissez via l'API ou les intégrations CI, et non dans l'interface.

  • Dans l'interface, vous pouvez ajouter plusieurs identifiants de test à un même scan.
  • Dans l'API, un scan accepte une liste d'ID d'identifiants (credentialIds), et vous définissez le rôle dans le champ role du type LoginPasswordTestCredentials. Voir API.
  • Dans les intégrations CI, vous pouvez transmettre un rôle avec le login et le mot de passe :
    • GitLab : OSTORLAB_CREDENTIALS accepte une liste séparée par des points-virgules au format login,password,role,url. Le rôle et l'URL sont facultatifs pour les scans mobiles.
    • Bitrise : --test-credentials-role est un champ de rôle facultatif, utilisé avec --test-credentials-login et --test-credentials-password.

De quel accès réseau le scanner a-t-il besoin ?

Ajoutez les adresses IP du scanner à votre liste d'autorisation afin que les WAF et les pare-feu n'interfèrent pas avec le scan. Si la cible n'est pas exposée sur Internet, utilisez un reverse proxy ou un scanner on-prem ; voir Analyser des applications web internes.

Comment vérifier que la connexion a fonctionné ?

Ouvrez la Call Coverage du scan et examinez les requêtes et les écrans pour confirmer que le scanner s'est connecté et a atteint les zones protégées.

Si le scanner ne parvient pas à franchir un flux en plusieurs étapes, vous pouvez le guider avec des UI Prompts. Les UI Prompts sont des instructions en langage naturel pour des actions en plusieurs étapes, comme la création d'un compte. La Call Coverage du scan affiche les UI Prompts qu'il a utilisés.

Que faire si la connexion échoue ?

La plupart des échecs de connexion ont l'une de ces quatre causes : le scanner ne peut pas atteindre la cible, un code SMS ou e-mail n'est pas capturé, le scan est en pause sur une étape 2FA Manual, ou le flux est trop complexe pour un login et un mot de passe. Trouvez le cas correspondant ci-dessous.

Le scanner ne peut pas atteindre la cible

Le code SMS n'est pas capturé

  • Assurez-vous que le 2FA par SMS est activé sur le compte de test.
  • Confirmez que les stratégies anti-spam ou de limitation de débit de votre application autorisent les messages entrants provenant de la passerelle.
  • Vérifiez que le Sender Phone Number correspond exactement au numéro affiché sur l'appareil lors de la réception d'un OTP.

Le code e-mail n'est pas capturé

  • Assurez-vous que le corps de l'e-mail affiche le code dans un format clair et lisible.
  • Vérifiez que l'accès IMAP/SMTP est activé sur la boîte de réception et que les identifiants, en particulier le mot de passe d'application (App Password), sont corrects.
  • Assurez-vous que la boîte de réception n'est pas protégée par une couche 2FA supplémentaire qui empêche le scanner de s'y connecter.

Le scan est en pause

  • Un identifiant 2FA Manual met le scan en pause jusqu'à ce que vous saisissiez le code. Ouvrez les détails du scan et soumettez le jeton, comme décrit dans Saisie du jeton.

Le flux de connexion est trop complexe pour un login et un mot de passe

  • Pour les applications web, enregistrez le flux sous forme de script Puppeteer.
  • Pour les flux en plusieurs étapes, ajoutez des UI Prompts.

Si votre application utilise un schéma d'authentification personnalisé, ou si la connexion échoue toujours, contactez-nous à support@ostorlab.dev.