Cosa fare quando trovo una possibile vulnerabilità di sicurezza di interesse pubblico? [duplicare]

26

Diciamo che ho trovato una possibile vulnerabilità in un sistema di sicurezza. Il sistema è stato universalmente considerato suono per anni e oggigiorno è usato in tutto il mondo.

Non sono un esperto in sicurezza, ma ci sono cose che mi preoccupano:

  • L'uso di un sistema di sicurezza che crede che sia sicuro è peggio che non usarne uno, dato che sono completamente dipendente dalla sua sicurezza per qualsiasi motivo;
  • Il sistema è implementato in diversi paesi, quindi rivelare dettagli sul perché non è sicuro può compromettere coloro che non aggiornano i loro sistemi immediatamente;
  • Mi piacerebbe prendermi il merito del mio lavoro / scoperta, ma allo stesso tempo la scoperta potrebbe essere troppo grande per me;
  • Al momento non esiste un'alternativa reale a questo sistema di sicurezza poiché è stato considerato il migliore per anni e nessuno ha impiegato tempo e risorse per trovarne uno migliore;
  • Rivelare problemi senza portare una soluzione sembra dire alla comunità scientifica "Ehi, tutto ciò che consideri sicuro non è, affrettati e trovare una soluzione migliore".

Per tutte le ragioni di cui sopra, mi chiedo che cosa dovrebbe fare qualcuno in una situazione così goffa.

Perdona la mia vaghezza, ma penso che tu capisca il motivo.

    
posta Jacob 30.06.2016 - 00:24
fonte

4 risposte

43

Sarebbe una questione di opinione su come dovresti procedere. Abbiamo già una domanda che spiega diversi modi etici per segnalare una vulnerabilità.

Prima di tutto, per qualcosa di così grande, personalmente ti consiglierei di rimanere anonimo in un primo momento, lasciando comunque un modo per dimostrare più tardi che sei stato tu a scoprire la vulnerabilità. Crea una nuova chiave PGP (non legata alla tua identità), firma i tuoi messaggi e pubblicali in modo anonimo (su Tor per esempio). Se in seguito ti senti sicuro che tutto va bene e non ci sono centinaia di avvocati assetati di sangue che ti inseguono, puoi usare quella chiave per firmare un messaggio che dice che sei stato tu (con il tuo nome completo).

Raccomando l'approccio di divulgazione responsabile: ti metti in contatto con gli sviluppatori di detto sistema di sicurezza e lascerai loro del tempo per implementare una patch.

Se non ricevi risposta, una risposta stupida o persino orde di avvocati arrabbiati che abbaiano su di te, usa semplicemente il tuo anonimato per rendere pubblico e fai sapere a tutti come questa azienda si occupa dei difetti di sicurezza.

Non sono d'accordo sul fatto che rivelare un difetto pur non fornendo un'alternativa sia una cattiva idea. Questo difetto potrebbe essere già noto ai cattivi ed è meglio che tutti lo sappiano (e che almeno sappiano che non è sicuro) piuttosto che lasciare che i cattivi amano davvero usare queste informazioni. Inoltre, anche se ora non ci sono alternative, questa scoperta potrebbe motivare qualcuno a realizzare un'alternativa sicura.

Infine, mentre non conosco il tipo di "sistema di sicurezza" di cui stiamo parlando, la sicurezza dovrebbe essere fatta a strati e qualsiasi azienda che si affidi a quel sistema in quanto la sua unica difesa merita di cadere, proprio come quelli che non preoccuparti di aggiornare una volta che una correzione diventa disponibile.

    
risposta data 30.06.2016 - 01:10
fonte
8

Dovrai verificare che questa sia una vulnerabilità effettiva , in genere creando una Prova di concetto. Da lì, potresti:

  • Contatta il fornitore del software in privato, spiega le tue scoperte e i problemi ad esso associati, allegando il PoC per l'analisi.
  • Rilasciare la vulnerabilità al pubblico, sperando che l'attenzione supplementare possa convincere il venditore a rilasciare una correzione.
  • Sii completamente silenzioso, sperando che i blackhats non lo trovino.

La prima opzione è probabilmente la migliore. Non è necessario rivelare la propria identità personale per divulgare informazioni. Ho utilizzato diversi handle e account throw-away per tali comunicazioni in circostanze simili.

La seconda opzione è rischiosa. Si rischia una reazione negativa pubblica ("Perché dovrebbero dare una vulnerabilità aperta alle persone che lo abuserebbero?") E tu metti te stesso e il venditore in una brutta posizione. Mentre alcune persone possono applaudire i tuoi sforzi, altri vedranno questo come un problema.

La terza opzione è ancora più rischiosa. Se hai la possibilità di creare un PoC, lo fanno anche le persone malintenzionate. L'unica differenza qui è il tuo provato e vero Sicurezza attraverso l'oscurità alias davvero pessimo tempo .

La soluzione migliore è iniziare con la prima opzione, ricadendo al secondo se si viene completamente ignorati. Ho visto storie di persone che contattano i venditori da mesi, finalmente rilasciano la vulnerabilità al pubblico e poi vedono una patch che risolve il problema. In un mondo ideale, il venditore prenderà questo seriamente e affronterà il problema una volta che li contatti. A meno che non siano negligenti per il problema o scoprano che è un non-problema, saranno i migliori a risolverlo. Se non riescono a risolverlo, corrono il rischio reale di diventare il prossimo Java o Flash alias completamente non attendibili al pubblico.

In genere ciò non va bene per il business.

    
risposta data 30.06.2016 - 00:59
fonte
5

Vuoi prendere il merito ma non vuoi essere conosciuto? Questo non funzionerà.
Decidere cosa è più importante: credito o rendere nota la vulnerabilità in modo anonimo.

Se renderlo noto è più importante, vedo che hai un nuovo account ecc., va bene. (se è davvero così grande, spero che tu abbia un nuovo SO su un nuovo dispositivo, nessun profilo del browser e anche Tor. In caso contrario, partire ora è troppo tardi.)
Come passo successivo, se non sei nemmeno sicuro se si tratta di un vuln, dicendoci solo che la situazione qui è un inizio.

Informazioni sulla parte "non raccontando perché utilizzabile": beh, se sei preoccupato per questo, e la tua identità, non vedo modo di dirlo a nessuno. In questo caso ... dimenticalo?

    
risposta data 30.06.2016 - 00:48
fonte
2

Thebluefish omette di menzionare "Responsible Disclosure" in cui una terza parte fidata fornisce un servizio di deposito a garanzia per un periodo di tempo limitato, consentendo al venditore di correggere l'errore assicurandosi che lo scopritore sia accreditato. CERT sponsorizza tale approccio.

Ma per la risposta precedente hai bisogno di una dimostrazione del concetto. Purtroppo, i prodotti "di sicurezza" introducono più spesso vulnerabilità di quanto si aspettano molti professionisti.

    
risposta data 30.06.2016 - 01:11
fonte

Leggi altre domande sui tag