Quale modello di sviluppo del ciclo di vita sicuro scegliere? [chiuso]

4

Assicureremo il ciclo di vita dello sviluppo del nostro software e stiamo ricercando un buon modello con cui iniziare. Ho trovato 3 modelli principali (metodologie?) Che sono:

  1. Cigital SDLC (7 punti di tocco)
  2. Microsoft SDLC
  3. SDL OpenSAMM
  4. BsSIM

Non potevo scegliere nessuno dei due in quanto non ho idea di quale sia la migliore scelta rispetto ad altri, ho bisogno di alcuni professionisti per guidarmi su questo in base alla loro esperienza sui progetti e aiutarci a decidere meglio. > Quali sono i pro e i contro di questi modelli?
Sarebbe bello se qualcuno potesse guidarci in un modo che la differenza tra questi modelli possa essere più chiara. o se una suite un qualche tipo di progetti migliori degli altri.
Assicureremo lo sviluppo di un progetto software per un istituto finanziario, quindi se questo impone alcune restrizioni sul modello che dobbiamo scegliere, guidaci di conseguenza Grazie in anticipo

    
posta Breeze 09.03.2014 - 17:37
fonte

3 risposte

6

Personalmente, ho trovato OpenSAMM come una buona risorsa, ma solo dopo aver impostato qualcosa. È un modello di maturità, che è fondamentalmente uno strumento utilizzato per determinare quanto bene fai qualcosa. In altre parole, si concentra su metriche e rapporti. Non fraintendermi, penso che ci siano molte buone informazioni in quel documento, ma più di una fase 2.

Non ho letto Cigital, quindi non posso commentare questo.

L'MS SDLC è piuttosto semplice da seguire. Abbiamo trovato la maggior parte del documento irrilevante, specialmente quando sono entrati in elementi specifici per verificare la presenza di c / c ++ e di compilatori, ma i concetti chiave erano buoni.

Quello che devi fare è prendere l'SDLC e mappare le fasi su ciò che fai ora. Una volta ottenuta questa mappatura, puoi quindi capire cosa fa MS in ogni fase e quindi scegliere un sottoinsieme di quello (o di tutto ciò) da includere nei tuoi processi.

Pensa a SDLC come lo strumento che userai per creare i documenti / processi che il team di sviluppo seguirà. Quindi, ad esempio, dovresti pubblicare probabilmente una "guida allo sviluppo delle migliori pratiche" per i team di sviluppo (come parte dell'addestramento allo sviluppo, ad esempio). Dato che voi siete nel settore finanziario, vorrete includere materiale PCI / SOX in quel documento. Per espandersi, MS SDLC parla di avere una formazione per sviluppatori. Dovrai adeguarlo alla tua squadra e ai tuoi obiettivi. Ad esempio, potresti fare un sacco di addestramento c #, quindi dovrai includere l'allenamento c # come parte degli obiettivi di allenamento.

La maggior parte di questi modelli arriverà a un paio di componenti principali.

1) Costruisci sicurezza in (nella fase dei requisiti) Assicurati di osservare i documenti / le strategie corretti e che i requisiti funzionali / non funzionali si concentrano sulla sicurezza fin dall'inizio. Assicurati che i tuoi obiettivi siano allineati a quelli del cliente. Crea bug, ecc. Assicurati che l'architettura supporti fail-safe, crypto strong, risposta agli incidenti, ecc. Ecc.

2) Treno, treno, treno Gli sviluppatori hanno bisogno di formazione. Preformano meglio quando sanno cosa fare, ed è nella parte anteriore della loro mente. Sviluppare un programma di formazione incentrato sullo sviluppo professionale a lungo termine e sulla formazione a breve termine (se necessario)

3) Fornire un prodotto sicuro seguendo le migliori pratiche e quindi convalidare Sviluppa secondo le migliori pratiche (scegli un framework come ASVS, OWASP Top 10 o una combinazione), quindi assicurati di convalidare di averlo fatto correttamente. Fai un test con la penna.

4) Supporto Assicurati di costruire nei processi giusti per supportare la tua applicazione / cliente in futuro.

Come nota a margine, se stai cercando un aiuto professionale, dovresti prendere in considerazione la possibilità di pagare per far entrare qualcuno e aiutarti.

    
risposta data 10.03.2014 - 16:58
fonte
1

OpenSAMM con obiettivi impostati per ottenere determinati livelli ASVS per progetto. Quindi, restituisci alla comunità OWASP.

    
risposta data 09.03.2014 - 18:29
fonte
1

L'idea alla base delle metodologie di sviluppo sicuro è che tu pensi e affronti i problemi di sicurezza prima nel ciclo di vita del progetto

Raccomando di utilizzare CLASP (processo di sicurezza delle applicazioni completo e leggero) per iniziare a utilizzare la tua attuale metodologia di sviluppo.

    
risposta data 10.03.2014 - 13:33
fonte

Leggi altre domande sui tag