Saltar a contenido

GoCD

Integre fácilmente el escaneo de seguridad automatizado de Ostorlab para aplicaciones móviles Android e iOS en su proceso de compilación de GoCd.

Uso:

Generar una clave API de Ostorlab

  1. Vaya al menú de claves API
  2. Haga clic en el botón "Nuevo" (new) para generar una nueva clave
  3. Copie la clave API (puede agregar un nombre y una fecha de vencimiento a su clave)
  4. Haga clic en el botón de guardar (save) para almacenar su clave

Ostorlab API Key Generation

Agregar Ostorlab como una etapa de línea de comandos en GoCd

  1. Diríjase a su Panel de GoCd y seleccione su pipeline.

    GoCd Dashboard

  2. Haga clic en Edit en su pipeline.

    GoCd Edit Pipeline

  3. Seleccione Stages.

    GoCd Stages

  4. Agregue una nueva etapa (stage) y complete el formulario.

    • Para el tipo de Job inicial, seleccione Custom Command.
    • Y proporciónele los siguientes argumentos:
    • Command: bash
    • Arguments: |
      -c
      pip install ostorlab
      
    • Haga clic en guardar.

    GoCd New Stage

  5. Navegue a la pestaña JOBS y seleccione su trabajo recién agregado.

    GoCd Jobs

  6. Agregue una tarea más para ejecutar el trabajo.

    • Haga clic en agregar Task de tipo Custom Command.
    • Y proporciónele los siguientes argumentos:
    • Command: bash
    • Arguments: |
      -c
      ostorlab --api-key=$OSTORLAB_API_KEY ci-scan run --title=$Scan_Title --scan-profile=$SCAN_PROFILE android-apk /path/to/app.apk
      
      Consulte las Additional options a continuación para obtener la lista completa de opciones.

    GoCd Add Command

  7. Agregar variables de entorno

    • Navegue a la pestaña ENVIRONMENT VARIABLES.
    • Agregue OSTORLAB_API_KEY como una Secure Variable.
    • Agregue las demás variables (Scan_Title, SCAN_PROFILE, ...) como Plain Text Variables.

    GoCd Environment Variables

Opciones adicionales

La siguiente es la lista completa de opciones para el comando ostorlab ci-scan run:

    ostorlab --api-key ci-scan run --option <asset-type> <target>
  • --api-key: Clave API generada por Ostorlab.

  • --title: Título del escaneo (Scan title).

  • --scan-profile: Tipo del escaneo. Las opciones posibles son:

    1. fast_scan: Solo ejecuta el análisis estático;
    2. full_scan: Ejecuta análisis estático, dinámico y de backend.
  • Credenciales de prueba (Test credentials): Autenticación automática en el escaneo completo de análisis dinámico:

    • --test-credentials-login: Nombre de usuario que se utilizará en los campos de inicio de sesión;
    • --test-credentials-password: Contraseña que se utilizará en los campos de contraseña;
    • --test-credentials-role: Campo de rol opcional;
    • Credenciales de prueba personalizadas/genéricas:
      • --test-credentials-name: Nombre personalizado del campo;
      • --test-credentials-value: Valor personalizado del campo
  • Credenciales 2FA (2FA Credentials):

  • --sbom: Ruta al archivo sbom.

  • Prompts de UI (Opcional): Ostorlab admite prompts de UI para guiar el escáner a través de la interfaz de usuario de su aplicación. Puede utilizar:

    • --ui-prompt-name y --ui-prompt-action: Defina un paso de UI especificando el nombre y la acción. Puede agregar múltiples pares para una secuencia de pasos. Por ejemplo:
      --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: Haga referencia a los flujos de prompts de UI existentes por sus IDs. Puede agregar múltiples IDs. Por ejemplo:
      --ui-prompt-id 123 --ui-prompt-id 456
      
  • asset-type: Tipo de activo a escanear. Valores posibles:

    • android-aab: Escanear un archivo de paquete .AAB de Android;
    • android-apk: Escanear un archivo de paquete .APK de Android;
    • ios-ipa: Escanear un archivo de paquete .IPA de iOS;
  • target: Ruta a la aplicación de destino.