TeamCity
Intégrez facilement l'analyse de sécurité automatisée d'Ostorlab pour les applications mobiles Android et iOS dans votre processus de build avec TeamCity.
Utilisation :
Générer une clé API Ostorlab
- Accédez au menu API keys
- Cliquez sur le bouton "new" pour générer une nouvelle clé
- Copiez la clé API (Vous pouvez ajouter un nom et une date d'expiration à votre clé)
- Cliquez sur le bouton de sauvegarde pour enregistrer votre clé

Ajouter Ostorlab comme étape de ligne de commande (Command Line Step) sur TeamCity
-
Rendez-vous dans les paramètres de votre projet
TeamCityet ajoutez une nouvelle étape de build (build step).
-
Choisissez le Runner
Command Line.
-
Remplissez la configuration de l'étape
- Nom de l'étape (Step name) : Choisissez un nom pour distinguer l'étape de build des autres étapes ;
- Choisissez
Custom scriptcomme type d'exécution (Runtype) ; - Ajoutez la commande suivante en tant que
Custom script;Consultezostorlab --api-key=%env.OSTORLAB_API_KEY% ci-scan run --title=%Scan_Title% --scan-profile=%env.SCAN_PROFILE% android-apk /tmp/OstorlabInsecureApp.apkOptions supplémentairesci-dessous pour la liste complète des options. - L'étape doit s'exécuter à l'intérieur du conteneur ostorlab :
- Ajoutez
ostorlab/oxo:latestdans le champRun step within container; - Choisissez
Linuxcomme plateforme d'image (Image platform) ; - Cliquez sur
Edit argumentsdans l'étapeAdditional run arguments; - Montez l'application dans le conteneur ostorlab,
-v source_path:destination_pathAssurez-vous que-v /opt/buildagent/work/OstorlabInsecureApp.apk:/tmp/OstorlabInsecureApp.apkdestination_pathest identique à celui défini précédemment dans la commandeostorlab ci-scan run.
- Ajoutez

-
Ajoutez les paramètres de l'étape : Par exemple : la commande précédente utilise le paramètre :
--title=%Scan_Title%, que vous pouvez définir en :- Cliquant sur
Parameters; - Cliquant sur
Add new parameter; - Remplissant le
Name, leKind(en tant queConfiguration parameter), la valeur et son type ; - Cliquant sur
Save.

- Cliquant sur
-
Ajoutez des variables d'environnement Vous pouvez également ajouter des variables d'environnement à utiliser par la commande
ostorlab, en suivant la même procédure qu'à l'étape 4, mais en choisissantEnvironment variable (env.)pour leKind.
Tous les paramètres :

Options supplémentaires
Voici la liste complète des options pour la commande ostorlab ci-scan run :
ostorlab --api-key ci-scan run --option <asset-type> <target>
-
--api-key : Clé API générée par Ostorlab.
-
--title : Titre de l'analyse
-
--scan-profile : Type de l'analyse. Les options possibles sont :
fast_scan: Exécute uniquement l'analyse statique ;full_scan: Exécute les analyses statiques, dynamiques et backend.
-
Identifiants de test (Test credentials) : Authentification automatique lors de l'analyse dynamique complète :
- --test-credentials-login : Nom d'utilisateur à utiliser dans les champs de connexion ;
- --test-credentials-password : Mot de passe à utiliser dans les champs de mot de passe ;
- --test-credentials-role : Champ de rôle optionnel ;
- Identifiants de test personnalisés/génériques :
- --test-credentials-name : Nom personnalisé du champ ;
- --test-credentials-value : Valeur personnalisée du champ
-
Identifiants 2FA :
- SMS 2FA :
- --sms-2fa-sender : En savoir plus sur le SMS 2FA
- Email 2FA :
- --email-2fa-sender-email-address, --email-2fa-email-address, --email-2fa-password : En savoir plus sur l'Email 2FA
- TOTP 2FA :
- --totp-2fa-seed : En savoir plus sur le TOTP 2FA
- SMS 2FA :
-
--sbom : Chemin d'accès au fichier sbom. Le fichier sbom doit également être monté comme spécifié à l'étape 3.
-
Invites d'interface utilisateur (UI Prompts) (Optionnel) : Ostorlab prend en charge les invites d'interface utilisateur pour guider le scanner à travers l'interface utilisateur de votre application. Vous pouvez utiliser :
- --ui-prompt-name et --ui-prompt-action : Définissez une étape d'interface utilisateur en spécifiant le nom et l'action. Vous pouvez ajouter plusieurs paires pour une séquence d'étapes. Par exemple :
--ui-prompt-name accept-terms --ui-prompt-action "Scroll down and tap the 'Accept Terms' checkbox." --ui-prompt-name submit --ui-prompt-action "Tap the 'Submit' button to complete the login process." - --ui-prompt-id : Référencez des flux d'invites d'interface utilisateur existants par leur ID. Vous pouvez ajouter plusieurs ID. Par exemple :
--ui-prompt-id 123 --ui-prompt-id 456
- --ui-prompt-name et --ui-prompt-action : Définissez une étape d'interface utilisateur en spécifiant le nom et l'action. Vous pouvez ajouter plusieurs paires pour une séquence d'étapes. Par exemple :
-
asset-type : Type d'actif à analyser. Valeurs possibles :
android-aab: Analyser un fichier de package Android.AAB;android-apk: Analyser un fichier de package Android.APK;ios-ipa: Analyser un fichier de package iOS.IPA;
-
target : Chemin vers l'application cible. L'application doit être montée comme spécifié à l'étape 3.