Sfruttamento sistematico di componenti software [chiuso]

3

La mia domanda è piuttosto generica. È probabile che la gente elimini la domanda e gli amministratori saranno tentati di chiuderla a off-topic ecc. Ma non potevo evitare di porre la domanda per cercare risposte fruttuose.

Numerosi bug / vulnerabilità / exploit del software vengono rilevati ogni giorno. I forum sulla sicurezza e le mailing list vengono sopraffatti ricevendo la quantità di post che ricercatori / utenti / ingegneri pubblicano ogni giorno. I database CVE / NVD si riempiono alla velocità della luce. Ciò che mi ha sorpreso per un po 'di tempo è come le persone trovino così tanti bug in un breve lasso di tempo, a meno che un gran numero di software siano esplorati / cacciati sistematicamente per scappatoie. Ad esempio, questo tizio ha segnalato finora sei bug in questo anno.

Per quanto riguarda le tecniche di caccia agli insetti, quello che posso pensare sono i seguenti:

  1. Black-box fuzzing (per COTS)
  2. Fuzzing della casella bianca (solo per prodotti open source)
  3. Ricerca guidata per esecuzione simbolica (non così scalabile, per quanto ne so)
  4. Reverse engineering (frenetica, un bel po 'di ore lavorative coinvolte)
  5. Colpire un bug per caso (probabilmente applicabile ai casi segnalati dalla maggior parte degli utenti finali)
  6. Procedura dettagliata del codice (richiede l'accesso al codice sorgente, adatto al controllo interno o ai prodotti open source)
  7. Strumenti di analisi statica che aiutano a trovare bug di pattern conosciuti
  8. Strumenti di analisi dinamica (non ho molta familiarità con questo)

Ancora mi chiedo se una combinazione di tutto quanto sopra possa portare alla scoperta di così tanti bug a un ritmo così rapido. / Ci sono tecniche importanti che mi mancano?

    
posta Holmes.Sherlock 06.10.2015 - 10:29
fonte

1 risposta

0

Penso che questo sia probabilmente un gioco puramente numerico - ci sono un lotto di persone la cui unica occupazione è alla ricerca di falle nella sicurezza. Molte di queste persone lavorano per consulenze di sicurezza e società di servizi di sicurezza, e le congratulazioni per la ricerca e la segnalazione valgono molto per il loro marchio.

Ci sono anche alcune strategie fruttuose - ad esempio, i parametri di input fuzzing possono spesso causare arresti anomali e messaggi di errore imprevisti e questi potrebbero non essere problemi di sicurezza, ma suggeriscono certamente che ulteriori indagini sarebbero utili. È interessante anche l'analisi dei cicli di aggiornamento del prodotto: gli aggiornamenti del software sono sorprendentemente ricchi di problemi di sicurezza molto spesso perché potrebbero essere rilasciati in circostanze eccezionali quali limiti di tempo o test di QA più bassi, ecc.

Alla fine però è solo il numero di persone e il numero di ore applicate che sospetto.

    
risposta data 06.10.2015 - 11:55
fonte

Leggi altre domande sui tag