Vulnerabilità e minacce a applicazioni Windows non basate sul Web

2

Credo che molte persone qui abbiano familiarità con OWASP e il loro progetto Top 10 . Oggi, quando si parla di sistemi informativi, sembra che ci sia un grande interesse per la sicurezza delle applicazioni Web e, a ragione, così. Recentemente mi è stato affidato il compito di eseguire un'analisi dei rischi su un sistema informativo (SQL Server 2005) con interfacce utente che sono sia Web che Non Web. Finora ho trovato molti ottimi articoli e strumenti che mostrano minacce e vulnerabilità web, ma non tanto su applicazioni non basate sul web.

Qualcuno sa di buone risorse che spiegano e testano le vulnerabilità / i rischi delle interfacce non Web dei sistemi di informazione? Queste applicazioni sono eseguite su macchine Windows.

    
posta RedZeppelin1977 13.02.2012 - 16:04
fonte

2 risposte

3

Come ha sottolineato Sachin Kumar, probabilmente dovresti iniziare a fare una modellazione delle minacce. La risorsa principale in questo senso è il libro / risorsa del ciclo di vita di Microsoft Security Development. Ciò non significa che ciò si applica solo agli ambienti o al software Microsoft. In realtà, è una metodologia molto generica che funziona piuttosto bene per qualsiasi tipo di applicazione. Lo Strumento per la modellazione delle minacce non è realmente necessario. Aiuta semplicemente a mettere insieme i dati. Trovo più facile usare solo carta e penna, a meno che non sia una configurazione estremamente complessa.

L'idea (estremamente breve) alla base di questa metodologia, è prima di tutto mappare il Data Flows , usando un DFD ( Data Flow Diagram ), e quindi applicare il STRIDE classificazione delle minacce per ogni componente del DFD. Una volta che l'hai fatto, e hai pensato attentamente a ogni potenziale minaccia, dovrebbe già darti un'idea dei problemi principali e potrebbe aiutarti a concentrarti su cosa cercare. Puoi anche utilizzare DREAD per valutare tali problemi in termini di priorità / rischio. Anche se hai una certa esperienza, conoscerai la valutazione quasi istintivamente. DREAD è un po 'troppo dettagliato per la maggior parte dei casi comunque.

In realtà il test per le vulnerabilità o i problemi reali può essere il prossimo passo, ma dipende dall'ambiente e dal set di competenze coinvolto nel realizzarlo. Un altro approccio che può darti un sacco di valore aggiunto sta facendo qualche revisione del codice di sicurezza (se hai accesso al codice). Oppure, se disponi di alcuni strumenti di analisi del codice statico di sicurezza , anche quelli possono aiutarti molto.

    
risposta data 14.02.2012 - 00:29
fonte
2

In termini di SQL in particolare, avrai sempre iniezioni come vettore di minacce. All'host o sulla rete (se non c'è la crittografia) possono manipolare i dati per un'iniezione SQL o qualsiasi tipo di attacco di escalation, buffer overflow ecc. Il problema principale è che si ricevono dati e bisogna assicurarsi che il codice faccia qualche sanificazione o elenco bianco.

Puoi anche consultare le guide di approfondimento, come quelle del Center for Internet Security: link

Le linee guida per l'iniezione di SQL di OWASP si applicano ancora anche se non sono un livello web.

The Win App connects to the database via a connection string that passes the appropriate credentials to access that particular database.

Direi che vorresti determinare se questa connessione è crittografata o meno o in che modo le credenziali sono altrimenti protette. Si potrebbe anche voler profilare lo stesso server SQL in termini di aggiornamento delle patch, i dati nel database sono archiviati con sufficiente sicurezza - le PII vengono archiviate crittografate, offuscate, troncate o tokenizzate, ecc.

Sembra che potresti voler concentrarti sulle minacce a un server MS SQL piuttosto che sull'applicazione specifica da avviare. Dal punto di vista dell'applicazione, un utente può elevare i suoi privilegi o impostare query che potrebbero divulgare informazioni oltre ai loro privilegi?

    
risposta data 14.02.2012 - 03:21
fonte

Leggi altre domande sui tag