Beneficios de la revisión segura del código in-IDE vs. fatapp vs. webapp

7

Para aquellos de ustedes que han trabajado con herramientas comerciales de revisión de códigos seguros como:

  • Klocwork
  • Coverity
  • Armorize
  • Fortificar
  • Checkmarx
  • Appscan Source Edition (anteriormente Onza)

O tal vez un equivalente libre o de código abierto como:

  • CAT.NET
  • FindBugs
  • Klocwork Solo
  • Demostración de armadura
  • demostración de Fotify Teamserver (o la auditoría Banco de trabajo que viene con el libro)
  • OWASP O2 (Ounce Open)

Por lo general, prefiere los complementos / complementos en la DE (por ejemplo, Fortify Secure Coding Plugin para Eclipse), la aplicación Fat independiente (por ejemplo, Audit Workbench), una aplicación web (por ejemplo, Armorize, Fortify Teamserver), una solución de servidor de compilación completa. , et al? ¿Por qué?

    
pregunta atdre 25.11.2010 - 02:01
fuente

4 respuestas

3

No hay mucha respuesta, pero diría que depende más del conjunto de características de cada producto y de la interfaz de uso de cada interfaz.
P.ej. El complemento IDE, fatapp y webapp de Fortify no son equivalentes en las funciones compatibles. Más aún, el complemento Eclipse de Fortify no es equivalente a su propio complemento VisualStudio.

Sin embargo, en principio, suponiendo que todo lo demás sea igual, mi preferencia sería:

  • Como auditor / consultor de seguridad, preferiría el independiente. No es necesario que empieces a jugar con su entorno, me ayuda a concentrarme más, etc.
  • Como desarrollador (y para mis clientes / desarrolladores), preferiría el complemento IDE, para poner todo delante de ellos, no necesitas abrir otra herramienta, no la olvidarán, la hace parte de su dev / compile, etc.
  • Una aplicación web para estadísticas (y lo que Fortify intentó hacer con su servidor 360, pero no la gran OMI) es excelente para la administración y demás.

Una nota, lo anterior depende principalmente de confiar en los escáneres de códigos automatizados, a diferencia de la revisión manual de códigos. A veces eso es lo que se necesita, pero en general no es lo suficientemente bueno.

    
respondido por el AviD 25.11.2010 - 07:49
fuente
3

Ambos son necesarios para elegir uno sobre el otro dependiendo del enfoque del ciclo de vida del desarrollo: Por ejemplo, por lo general en un proyecto Scrum, los basados en IDE tienen más sentido, ya que puede agregar un elemento de reserva solicitando un código de escaneo una vez por carrera o incluso una vez por día y eso sería muy útil.

Por otro lado, si está desarrollando en Waterfall o Spiral, entonces elegir versiones independientes de las herramientas sería una opción más inteligente para integrar muchos paquetes.

Como mencionó AviD para otros desarrolladores, la versión independiente sería mejor

    
respondido por el Phoenician-Eagle 25.11.2010 - 13:06
fuente
3

Al haber trabajado con Fortify como independiente, con su complemento Maven y un breve toque en su complemento Team Foundation tengo un conjunto de preferencias similar a AviD:

  • El standalone es encantador cuando se le puede proporcionar el código base completo, se ejecuta rápidamente y siempre que tenga todas las dependencias, simplemente funciona.

  • Para implementar un escenario de prueba recurrente, los complementos son el camino a seguir. Hágalos incorporados, de modo que una compilación y compilación se revisen automáticamente por problemas de seguridad.

  • La administración necesita informes y tendencias, por lo que se requiere un servidor de administración.

tl; dr: lo que dijo AviD, bastante :-)

    
respondido por el Rory Alsop 23.05.2011 - 16:16
fuente
1

Según mi experiencia, la aplicación independiente probablemente será la mejor para los auditores de código y los revisores de código.

La ventaja de la interfaz basada en la web viene con la colaboración: si tiene un equipo de personas que auditan una aplicación, evalúan y analizan las advertencias de análisis estático e ingresan en su análisis de si la advertencia es un error o no. y su gravedad, etc. Las interfaces basadas en web pueden ser excelentes para eso.

No sé personalmente qué preferirán los desarrolladores. Sospecho que un complemento IDE puede tener ventajas, debido a su capacidad para proporcionar comentarios rápidos y su integración con el flujo de trabajo que el desarrollador ya utiliza, pero supongo que aquí.

    
respondido por el D.W. 27.05.2011 - 18:11
fuente

Lea otras preguntas en las etiquetas