2010-10-13 22 views
12

¿Alguien ha utilizado la línea de comandos para ejecutar fortify? Intento incorporar fortify run en mi build de CI y no sé cómo hacerlo.Fortifica el uso de la línea de comandos

+1

Creo i obtuvo el punto de partida para usar sourcecodeanalyzer -h para obtener ayuda con la línea de comando. – alice7

Respuesta

2

Háganos saber si no ve el comando de compilación apropiado en el texto de ayuda. El 99% de las invocaciones del mundo real están ahí.

Dependiendo del tipo de código fuente que intente compilar, existen docenas de diferentes opciones de cambio de línea de comando y técnicas.

Le recomiendo que empiece por obtener la Guía del usuario de SCA. Es un documento PDF que puede obtener de quien le proporcionó el instalador de Fortify.

3

Fortify tiene una herramienta de análisis de código estático, generador de código fuente. Esta herramienta está basada en línea de comandos y, como tal, debe ser algo que pueda integrarse en un sistema de CI.

Como se mencionó anteriormente, puede utilizar la opción de ayuda o revisar la documentación/guía del usuario (denominada: Guía del usuario del analizador de código estático HP Fortify) que cubre muchos idiomas y opciones.

Un punto que puede necesitar considerar es la velocidad y la utilización de recursos de realizar un escaneo de este tipo en un escenario de CI. Es posible que deba considerar ejecutar esto durante la noche o durante las horas pico. La documentación indica que la herramienta usa una cantidad decente de memoria.

Quizás también deba averiguar cómo procesar el archivo de salida fpr que produce la herramienta de analizador de origen. Por ejemplo, puede hacer que esto sea un artefacto en Team City y cargarlo manualmente en un servidor Fortify o usarlo con el producto de banco de trabajo Fortify. Me imagino que también podría ser elegante y automatizar la carga en el servidor de Fortify.

3

Los comandos para un escaneo típico se verían más o menos así.

  1. construye el código usando

sourceanalyzer -b <build ID> <sourcecode>

  1. escanea la acumulación con

sourceanalyzer -b <build ID> -scan -f <test>.fpr

  1. (Si está usando el servidor 360) carga el resultado de fortificar servidor con

fortifyclient uploadFPR -f <test>.fpr -project <projectname> -version <versionname> -urlhttps://fortify.com/f360 -user <username> -password <password> /// <authtoken>

Sin embargo, solicito ayuda con las etiquetas de construcción. Cuando invocamos a SCA, podemos asignarle una etiqueta de compilación. Sin embargo, no estoy seguro de qué opciones proporcionar a los comandos.

sourceanalyzer -b testid codebase -build-label <option>

Si alguien sabe el formato del favor hágamelo saber.

+0

Cuando use -build-label debe proporcionar un nombre de etiqueta, en su ejemplo: 'Sourceanalyzer -b testid codebase -build-label MyLabel' Luego, inicie sesión en el servidor de Fortify Software Security Center (SSC) , haga doble clic en la versión de su proyecto, haga clic en Artefactos, haga clic en cualquiera de los resultados del análisis y verá detalles sobre el resultado. Dentro de esos detalles, verá "Etiqueta de compilación". – AspiringTFSGuru

12

Como no puedo agregar un comentario, tendré que ofrecerlo como respuesta. Nuestra compañía ha integrado el proceso de escaneo en nuestro entorno de construcción TFS y funciona bastante bien.

Usamos una serie de actividades de compilación del "Proceso de invocación" para que esto suceda. Toda la secuencia de exploración de seguridad está envuelta en un condicional que se expone como un argumento para la definición de compilación. Esto nos permite habilitar o deshabilitar escaneos según sea necesario. También exponemos algunas otras cosas como Fortify Project, Fortify Project Version y otro condicional para cargar el archivo FPR.

El quid de la cuestión es la siguiente:

Limpio

sourceanalyzer -b "Build ID" -clean

Build

sourceanalyzer -b "Build ID" devenv BuildID.sln /Rebuild Debug /out "C:\SSCLogs\SSCBuild.log"

Scan

sourceanalyzer -b "Build ID" -scan -format fpr -f BuildID.fpr

Subir al SSC

fortifyclient.bat -url SSCServerUrl -authtoken XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX uploadFPR -file BuildID.fpr -project "MyProject" -version "MyProject v1.0.0"

Si desea un resumen completo y/o algunas capturas de pantalla, estaría feliz de ofrecer algo para ti.

2

Muy buenas respuestas aquí, me gustaría agregar que puede agregar el registro al escanear esto muy útil.

SCAN con el registro

sourceanalyzer -b "Construir ID" -scan -format FPR -f BuildID.fpr -debug -verbose -logfile "C: \ logfile.txt"

Cuestiones relacionadas