Vantaggi della revisione del codice protetto in-IDE rispetto a app grassa e app web

7

Per quelli di voi che hanno lavorato con strumenti di revisione del codice di sicurezza commerciale come:

  • Klocwork
  • Coverity
  • Armorize
  • Fortify
  • Checkmarx
  • Appscan Source Edition (precedentemente Ounce)

O forse un equivalente gratuito o open source come:

  • CAT.NET
  • FindBugs
  • Klocwork Solo
  • Armorizza demo
  • Fotify Demo di Teamserver (o Audit Workbench fornito con il libro)
  • OWASP O2 (Ounce aperte)

generalmente preferisci i plug-in / add-on (per esempio Fortify Secure Coding Plugin per Eclipse), l'app standalone fat (es. Audit Workbench), un'applicazione web (es. Armorize, Fortify Teamserver), una soluzione completa per server di compilazione , et al? Perché?

    
posta atdre 25.11.2010 - 02:01
fonte

4 risposte

3

Non è una gran che una risposta, ma direi che dipende più dal set di caratteristiche di ciascun prodotto, sia dalla usabilità di ciascuna interfaccia.
Per esempio. Il plugin IDE di Fortify, fatapp e webapp non sono equivalenti nelle funzionalità supportate. Ancora di più, il plugin Eclipse di Fortify non è equivalente al proprio plugin VisualStudio!

In linea di principio, supponendo che tutto il resto sia uguale, la mia preferenza sarebbe:

  • Come auditor / consulente di sicurezza, preferirei la versione standalone. Non è necessario iniziare a fare scherzi con il loro ambiente, mi aiuta a concentrarmi di più, ecc.
  • Come sviluppatore (e per i miei clienti / sviluppatori), preferirei il plug-in IDE, in modo da mettere tutto in ordine, non è necessario aprire un altro strumento, non lo dimenticheranno, lo rendono parte di il loro dev / compile, ecc.
  • Un'app Web per le statistiche (ala ciò che Fortify ha provato a che fare con il loro server 360, ma non eccezionale IMO) è ottimo per la gestione e così via.

Una nota, la precedente dipende principalmente dal fare affidamento su scanner di codici automatici, al contrario della revisione manuale del codice. A volte questo è ciò che è necessario, ma in generale di solito non è abbastanza buono.

    
risposta data 25.11.2010 - 07:49
fonte
3

Entrambi sono necessari per scegliere l'uno sull'altro dipende dall'approccio del ciclo di vita dello sviluppo: Ad esempio, in genere in un progetto Scrum, quelli basati su IDE hanno più senso in quanto è possibile aggiungere un elemento di backlog che richiede il codice di scansione una volta per sprint o anche una volta al giorno e che sarebbe molto utile.

D'altra parte, se stai sviluppando in Waterfall o Spiral, la scelta di versioni standalone degli strumenti sarebbe una scelta più intelligente per integrare molti pacchetti.

Come AviD ha menzionato per gli sviluppatori diversi dagli sviluppatori, la versione standalone sarebbe stata migliore

    
risposta data 25.11.2010 - 13:06
fonte
3

Avendo lavorato con Fortify come standalone, con il suo plug-in Maven e un breve tocco sul suo plug-in Team Foundation, ho un set di preferenze simile a AviD:

  • La soluzione standalone è adorabile quando ti viene fornita la base di codice completa, viene eseguita rapidamente e finché hai tutte le doppenze funziona!

  • Per implementare uno scenario di test ricorrente i plug-in sono la strada da percorrere: incorporarli in una compilazione e compilare automagicamente le revisioni per problemi di sicurezza.

  • La gestione richiede reporting e trend, quindi è richiesto un server di gestione.

tl; dr - quello che ha detto AviD, più o meno: -)

    
risposta data 23.05.2011 - 16:16
fonte
1

In base alla mia esperienza, l'app standalone probabilmente sarà la più bella per i revisori di codice e i revisori di codice.

Il vantaggio dell'interfaccia basata sul web viene fornito per la collaborazione: se si dispone di un gruppo di persone che stanno controllando un'applicazione, triaging e analizzando gli avvisi di analisi statica, inserendo nell'analisi se l'avviso è un bug o meno e la sua gravità, ecc. Le interfacce basate sul web possono essere grandiose per questo.

Non so personalmente cosa preferiranno gli sviluppatori. Sospetto che un plug-in IDE possa avere vantaggi, grazie alla sua capacità di fornire un feedback rapido e la sua integrazione con il flusso di lavoro già utilizzato dallo sviluppatore, ma qui indovinerei.

    
risposta data 27.05.2011 - 18:11
fonte

Leggi altre domande sui tag