Domanda:
Le falle di sicurezza sono accettabili se non possono derivarne molti danni?
danieleds
2016-07-25 02:27:35 UTC
view on stackexchange narkive permalink

Recentemente ho scoperto una falla di sicurezza in un sito web aziendale. Questo sito ha una "Area Partner" protetta da password, e come molti siti web fornisce un modulo per reimpostare la password dell'utente.

Quando un utente chiede di reimpostare la password per il suo nickname, viene inviata una nuova password al loro indirizzo e-mail e la password diventa immediatamente effettiva. Il problema è (se questo non fosse già un problema) che la nuova password è fissa, per tutti gli utenti. Pertanto, un utente malintenzionato può accedere facilmente a qualsiasi account.

Ora, le uniche operazioni che un utente può eseguire all'interno della propria Area partner sono:

  • Visualizza / modifica indirizzo email
  • Cambia password
  • Scarica alcuni manuali e utilità (sicuramente non è roba classificata)
  • Compila un modulo di riparazione (quindi il processo continuerà via e-mail)
  • Scarica loghi e immagini per scopi di marketing

Le uniche cose che vedo che un malintenzionato possa sfruttare sono:

  • Impedisci l'accesso futuro a un utente legittimo (che probabilmente sarà in grado di riottenerlo subito dopo una telefonata)
  • Scopri informazioni su chi sono i clienti dell'azienda (indovinando nickname casuali e guardando il loro indirizzo email). Ad ogni modo, non è qualcosa che qualcuno terrebbe segreto.

Anche se sono sempre molto disturbato da cose come questa, in questo caso devo ammettere che potrebbe non essere un grosso problema. Difetti come questo sono compromessi accettabili, in un contesto in cui non si possono causare molti danni?


Dal momento che penso che qualcuno abbia frainteso un dettaglio: quel sito web appartiene a un'azienda esterna. Non ho alcun ruolo nello sviluppo di quel sito web e non ho alcun controllo su qualsiasi decisione in merito.

In generale, * possono * essere.
Fori di sicurezza isolati potrebbero non sembrare importanti, il problema diventa quando la tua applicazione è formaggio frizzante con questi buchi.
La privacy è irrilevante per la tua domanda?Qualcuno che conosce / indovina il nickname di qualcuno può quindi vedere il suo indirizzo email, che dovrebbe essere un'informazione privata.
@unor è importante, ma non _that_ importante.Indovinare i soprannomi per ottenere indirizzi e-mail casuali non associati a informazioni sensibili?Ci sono modi più semplici.
Se funziona anche per un account amministratore, potrebbe trattarsi di una vulnerabilità molto più grave.
Se il modulo di riparazione che passa alla posta elettronica può contenere file arbitrari allegati, un utente malintenzionato può utilizzarli per ulteriori scopi di attacco.
Di solito se quell'area era sotto una password, qualcuno voleva che quell'area fosse nascosta.Il fatto che chiunque possa accedervi è una vulnerabilità, indipendentemente dal fatto che venga mostrato contenuto sensibile (inoltre, qualcosa che ti sembra benigno potrebbe essere considerato sensibile da qualcun altro).E se in seguito decidessero di implementare cose più importanti lì dentro senza sapere che la loro "sicurezza" è rotta?
Se "non è un grosso problema", perché non rendere pubblica l'area dei partner?Perché questa è effettivamente la situazione che hai adesso.
@Ajedi32 Anche se sono d'accordo con te, il sito web in questione appartiene a un'altra società, quindi non conosco le loro politiche.
Dovresti avvisarli, quindi potranno valutare se si tratta di un problema e, si spera, spiegare una decisione negativa.
Attenti.Le persone responsabili dell'allocazione delle risorse di sviluppo avranno spesso interesse a sottovalutare l'impatto di un problema di sicurezza.Spesso è più facile risolvere un problema che valutare con precisione l'impatto sulla sicurezza.
@OrangeDog li ho avvisati il prima possibile (ma non ho ancora ricevuto risposta).Comunque, la mia domanda era generale e ho usato questo evento solo come esempio.
@danieleds - se hai la prova che li hai notificati (ad esempio, hai registrato un ticket o hai inviato un'e-mail) e la prova che hai chiesto come procedere, allora questo _dovrebbe_ proteggerti se il rischio per la sicurezza diventa mai unproblema.Assicurati che sia "ufficiale" e rintracciabile, quindi se ti è mai tornato in mente, potresti indicare e dire "Ho chiesto una parte ma non ha mai risposto".Sarebbe utile se registrassi query ripetute, ad esempio inviando una o due e-mail di follow-up, inserendo commenti su un sistema di monitoraggio dei problemi.
Tieni presente che se puoi modificare l'email in questo modo, potresti creare moduli di riparazione e quindi approvarli, generando costi significativi.Inoltre, se le informazioni in questa Area partner vengono utilizzate per convalidare l'identità di un chiamante, un utente malintenzionato può ora compromettere tutto ciò che può essere fatto anche tramite telefono.
Accettabile per chi?
@KevinKrumwiede sia per l'azienda che per gli utenti.In realtà, in un mondo perfetto gli interessi di entrambe le parti sulla sicurezza dovrebbero coincidere.
Se "non è un grosso problema", cosa lo rende un difetto di ** sicurezza **?Tranne forse nel senso "al contrario" che il sistema ha ** troppa sicurezza **, come suggerisce Ajedi32.
@danieleds Gli interessi delle aziende e degli utenti "coincidono" allo stesso modo degli interessi di acquirenti e venditori.Entrambe le parti vogliono tutto per niente e il risultato è un riluttante compromesso.
@LuisCasillas concordato;se non possono derivarne molti danni, allora non è * davvero * un difetto di sicurezza per l'azienda, vero?Devi bilanciare il costo con il ritorno.
Dieci risposte:
O'Niel
2016-07-25 03:55:29 UTC
view on stackexchange narkive permalink

Sì. Questo è un problema, un grosso problema. Ultimamente ho trovato un difetto di progettazione nel webshop di un'azienda che mi ha permesso di inserire note innocenti nei grafici di altri visitatori.

Sembra innocente, e solo fastidioso, finché non ho guardato ulteriormente e ho scoperto che ero anche in grado di inserire codice Javascript (XSS) in quelle note. Quindi, in altre parole, ho potuto sfruttare XSS sul grafico di ogni visitatore.Ho fatto un rapido PoC mostrando loro come avrei potuto facilmente hackerare il computer di qualsiasi visitatore (in questo caso io stesso, era un PoC) usando quel difetto di progettazione, XSS, BeEF e Metasploit.

Quindi, dopo tutto, anche il più piccolo difetto può comportare un grosso rischio.

Oltre a ciò, chi dice che l'errore che hai trovato è l'unico che lo ha sviluppato sito web? Forse ha anche commesso tantissimi altri errori.

La segnalazione sarebbe il meglio che potresti fare, anche se sembra inutile.

Inoltre, non sai mai con precisione gli agenti di minaccia se mappati sulla risorsa aziendale in cui stai rischiando.Se un'organizzazione ha già un modello di minaccia, non vedo un motivo per neutralizzare una minaccia, prendere misure proattive per loro o se esiste un rischio, l'accettazione deve essere espressa in modo tale che sia verificabile.
Questa risposta è viziata.XSS è certamente un exploit dannoso, ma OP chiede di exploit non dannosi (o "leggermente" dannosi).
@KennethK.Non sto parlando solo di XSS.Sto anche parlando di difetti di progettazione `` apparentemente innocenti '' (come quello che ho descritto) e di come quei piccoli difetti possono risultare in un grosso errore con piccoli difetti aggiuntivi, ...
XSS non consente di "hackerare il computer" delle persone che navigano in quel sito.XSS influisce solo sui dati su quel sito web.
@D.W.Lo permette.XSS> BeEF> Metasploit> Reverse_TCP_meterpreter.Non solo con XSS puro, ma utilizzando framework e diversi exploit è possibile.
@O'Niel, se presumi di avere un exploit che funziona contro i browser delle persone, allora quei visitatori hanno problemi molto peggiori: puoi hackerare i loro browser anche se il sito web non aveva difetti e nessun XSS.È falso dare la colpa al difetto di progettazione o all'XSS.Il ragionamento in questa risposta è errato;si tenta di sostenere che questo difetto di progettazione è un grosso problema, fornendo un esempio di un difetto di progettazione che, in base a tutte le prove, non era in realtà un grosso problema.
@D.W.Cosa stai cercando di dire?Non ho un exploit contro il browser specifico delle persone (dove l'ho detto?).BeEF ha bisogno di XSS / (o almeno di una pagina dannosa) per funzionare ed essere in grado di combinare Metasploit con esso, quindi come si fa a inventare cose come: "no flow and no xss", non l'ho mai detto.Ma è possibile hackerare il computer delle persone utilizzando una combinazione di BeEF e Metasploit.Ti sei preso la briga di cercarlo?Forse alcuni tutorial per principianti?
Sto cercando di dire che la tua risposta non ha senso e utilizza una logica difettosa.Se si dispone di un exploit funzionante contro i browser dei visitatori, non ha senso incolpare il "piccolo difetto di progettazione nel sito Web dell'azienda" come causa della propria capacità di hackerare i computer delle persone che visitano quel sito Web;la vera causa è che conosci un exploit del browser.Se non disponi di un exploit funzionante contro i browser dei visitatori, non puoi "hackerare i loro computer" e la logica della tua risposta non ha senso.
Fondamentalmente, i tuoi primi 3 paragrafi non sono un esempio valido di dove un piccolo difetto si traduca in un grande rischio.È un esempio di un grande difetto che si traduce in un grande rischio (dove qui il grande difetto è il vuln del browser che sai come sfruttare), o un esempio di un piccolo difetto che si traduce in un piccolo rischio (se non hai unexploit del browser funzionante).
@D.W Fondamentalmente è un piccolo difetto (poter postare commenti sul grafico altrui - che non è necessariamente un problema di sicurezza, piuttosto fastidioso);che si traduce in un grosso difetto a causa del problema XSS.Il problema è che se non avessi trovato l'XSS, sarebbe solo un piccolo problema fastidioso;ma a causa dell'XSS, sta diventando un grosso problema.E perché XSS è un grosso problema?Perché consente agli aggressori di hackerare il PC di altre persone utilizzando diversi framework.
https://xkcd.com/386/
@O'Niel Quindi la tua risposta alla domanda nell'intestazione è davvero "No" e non "Sì", corretto?
@D.W.Piccolo difetto: [può pubblicare XSS sul grafico di un altro visitatore del sito].Grande rischio: [l'attaccante esperto scopre il piccolo difetto].
@Dubu infatti."No", non è accettabile.
@DanHenderson, il "grande rischio" [i computer dei visitatori vengono hackerati] non è stato causato da XSS;era causato dalla vulnerabilità del browser che O'Niel stava sfruttando.Data la conoscenza di una vulnerabilità del browser, i visitatori avrebbero potuto essere compromessi altrettanto prontamente anche se non ci fosse stato alcun difetto XSS.Il "piccolo difetto" non ha causato il "grande rischio";piuttosto, un "grosso difetto" (una vulnerabilità del browser sfruttabile senza patch) ha causato il "grande rischio" (i computer dei visitatori vengono violati).P.S.Il rischio che qualcuno scopra un piccolo difetto è, quasi per definizione, un piccolo rischio.
@D.W.'Il "piccolo difetto" non ha causato il "grande rischio" "no, ma lo ha ** abilitato **.Senza XSS, O'Niel non avrebbe alcun vettore per avviare la vulnerabilità del browser mirando specificamente agli utenti del sito.Potrebbe certamente compromettere i visitatori di un sito che controlla, ma è solo grazie al difetto XSS su questo sito che ha un percorso per gli utenti di questo sito.
@D.W.questi utenti potrebbero teoricamente mitigare il rischio navigando solo su siti di cui si fidano.Ora, a causa della vulnerabilità XSS di questo sito, un sito di cui si fidano ora esegue codice dannoso che sfrutta la vulnerabilità del browser.Mi sembra abbastanza chiaro. Inoltre, incolpare gli utenti per un attacco contro il loro browser vulnerabile reso possibile da un "piccolo difetto" sul sito non andrà in alcun tribunale (di diritto o immagine pubblica).Se il sito è stato informato del difetto e ha scelto di non fare nulla, è su LORO e nessun altro, anche se i loro utenti eseguono tutti IE8.
WoJ
2016-07-25 20:15:51 UTC
view on stackexchange narkive permalink

La tua domanda è: Le falle di sicurezza sono accettabili se non possono derivarne molti danni?

La risposta è , se decisa dall'azienda comprendendone le conseguenze.

Ciò che stai facendo si chiama valutazione del rischio. Per ogni rischio è necessario evidenziare le conseguenze per la propria azienda al momento dell'istanza. Sulla base di tale valutazione tu (tu = qualcuno che ha il potere di prendere la decisione aziendale ) hai tre scelte:

  • puoi accettare supponendo che i costi per ripararlo non valgano le conseguenze
  • puoi mitigarlo : risolverlo fino al punto in cui puoi accettarne le conseguenze
  • puoi assicurarti contro di essa, scaricando efficacemente il rischio su qualcun altro.

Come puoi immaginare, ci sono diverse aree calde in una valutazione del rischio.

Il primo è la valutazione delle conseguenze e della probabilità. Ci sono numerosi libri e articoli su come farlo, alla fine della giornata questo si basa su vigorosi gesti ed esperienze. L'output non è mai come quello nei libri

abbiamo una probabilità del 76% che ciò accada, il che ci costerà 126.653 €

ma piuttosto

beh, credo che questo sia un rischio di cui dovremmo prenderci cura

Nota che la parte "conseguenze" a volte può essere quantificabile (perdita di profitto per commercio online per esempio) ma di solito non lo sono (perdita di immagine per la tua azienda, ad esempio).

Oltre agli aspetti teorici dubbi delle valutazioni del rischio, c'è un enorme vantaggio di cui dovresti sempre approfittare: rischio sul tavolo e deve essere affrontato in qualche modo.

Questo non è solo un luogo-dove-il-retro-perde-il-nobile-nome - copertina, è lo strumento giusto per evidenziare dove dovrebbero andare gli sforzi per la sicurezza delle informazioni. Aumenta anche la tua visibilità (non ci sono così tanti casi proattivi in ​​cui puoi aumentare la tua visibilità) e ti costringe a dare uno sguardo duro, profondo e pragmatico su ciò che è importante e cosa non lo è.

Buona risposta: risponde alla domanda senza soffermarsi sull'esempio particolare.E sì, è così che dovrebbero essere gestiti i rischi per la sicurezza: chiarisci qual è l'impatto e qualcuno (manager, proprietario del prodotto, ecc.) Decide come gestirlo._Accettare_ il rischio è un approccio valido.Anche lo scarico può essere.Riguarda ciò che ti puoi permettere.Tuttavia, inizia sempre con _consapevole_ qual è il rischio.
Accetto questa risposta, anche se la risposta accettata dovrebbe essere un mix della maggior parte delle risposte fornite.Credo che il "falso senso di sicurezza" (@Falco) sia un aspetto importante da tenere a mente.
Le barre nel terzo dall'ultimo paragrafo creano un po 'di confusione.Non sono sicuro se dovrebbero enfatizzare parte del tuo testo o se intendono indicare una relazione e / o tipo tra determinate parole.Se il tuo intento è l'enfasi, puoi invece usare \ * corsivo \ * e \ * \ * grassetto \ * \ *;se rappresentano parti a scelta multipla della tua frase, devono essere spaziate in modo diverso.Così com'è adesso, non riesco nemmeno a dare un senso a quella frase.
@DanHenderson: L'ho aggiornato per rimuovere parentesi extra.Si spera che ora sia più leggibile.
Sì, è molto più chiaro.
Che cosa significa "posto-dove-il-retro-perde-il-nobile-nome - copertina"?
@WayneConrad: questo è un eufemismo per copriletto (quando scendi in fondo, il nome cambia improvvisamente in uno meno nobile).Fonte: un'espressione che ho sentito molti anni fa.
Sebbene tu possa accettare un certo livello di rischio, è importante che siamo consapevoli dei rischi combinati, in cui un problema potrebbe sembrare banale, ma due problemi banali usati insieme potrebbero essere notevolmente più gravi.
Un problema vitale qui è la frase "decisione aziendale".Possiamo ottenere l'accettazione dal proprietario del budget che rischia la perdita finanziaria reale (ufficio contabilità, ufficio marketing, ecc.) - Intendo il budget che pagherebbe effettivamente la perdita?Molto spesso vedo tecnici che usano la frase "decisione aziendale" come parola in codice per * chiunque * non tecnico è disposto a dire "sì, sì, fallo e basta" (come un proprietario di un prodotto, che raramente pagherà una perditadal loro budget).Questo perché se chiediamo a persone adeguate, sentiremmo sempre un NO fermo e avremmo bisogno di inoltrare al CEO quasi ogni accettazione del rischio.
Il problema, ovviamente, è che coloro che valutano il rischio non hanno sempre una visione chiara di quali siano i rischi (perché molte falle di sicurezza sono sconosciute fino a quando non vengono sfruttate): una vulnerabilità minore può essere trasformata in qualcosa di molto più grande.La mia azienda è passata attraverso questo quando abbiamo assunto un pentester, il pentester è entrato attraverso il buco minore che tutti sapevamo fosse lì, ma non si è preoccupato perché era innocuo, ma da lì è stato in grado di utilizzare un difetto del sistema operativo per ottenerepiù privilegi, quindi per acquisire le credenziali di un utente ed eventualmente passare alle credenziali di un amministratore e passare ad altri server.
phyrfox
2016-07-25 03:45:55 UTC
view on stackexchange narkive permalink

Il problema che vedo con uno schema di reimpostazione della password così semplice è che suggerisce ulteriori vulnerabilità nella piattaforma. Un concetto difettoso di sicurezza è raramente così isolato da accadere solo una volta, poiché tali difetti sono solitamente correlati alle pratiche di uno sviluppatore in materia di sicurezza. Come minimo, sospetto che anche le loro procedure di accesso interne potrebbero essere soggette allo stesso difetto, consentendo potenzialmente agli aggressori di accedere a database, codice e processi a cui normalmente non dovrebbero avere accesso.

Da lì , potrebbe essere possibile modificare il codice del server per segnalare password in chiaro o raccogliere ulteriori informazioni private e possibilmente consentire attacchi ad altri sistemi. Dopotutto, anche se questo è il 2016, ci sono ancora molte persone là fuori che usano ancora la stessa password per i loro conti bancari di Facebook, nonostante gli ovvi rischi associati a ciò. Anche in caso contrario, poter associare un nickname a un indirizzo email potrebbe mettere a rischio anche altri account dell'utente; più informazioni un utente malintenzionato conosce su un account utente, più può sfruttare cercando di sovvertire altri account di proprietà della stessa persona.

Come minimo, suggerirei di contattare il proprietario del sito e vedere se Risolverò il problema e, in caso contrario, considera di non utilizzare la loro applicazione a meno che non sia assolutamente vitale. Ti consiglio anche di cambiare la tua email sull'account utente in un account usa e getta che non è collegato a un indirizzo email a cui tieni. Non siamo più in un'epoca in cui possiamo presumere che difetti apparentemente minori non torneranno a perseguitarci in seguito.

Falco
2016-07-25 14:39:23 UTC
view on stackexchange narkive permalink

Se vedo questo scenario corretto, possono cambiare l'indirizzo e-mail e la password di qualsiasi account, quindi avviare un modulo di riparazione e continuare il processo di riparazione tramite posta.

Il team di supporto probabilmente lo farà presumere che l'indirizzo e-mail sia legittimo e che le informazioni sensibili possano essere scambiate con il destinatario e, se si tratta di un cliente noto, potresti persino iniziare a lavorare su un ordine ricevuto tramite il sito web / posta.

Un altro problema potrebbe essere se puoi accedere alla cronologia dei contatti o alla cronologia dei tuoi ordini di riparazione? Forse un cliente ha scritto informazioni riservate nei suoi ordini di riparazione, o anche il numero e il tipo di ordine è qualcosa che potrebbe rivelare problemi nella sua attività?

Un altro problema potrebbe essere un massiccio spamming degli indirizzi di posta dei clienti. Se invoco la tua password reimpostata un milione di volte, invierà un milione di messaggi ai tuoi utenti, non solo riempiendo la loro casella di posta, ma anche facendoti finire in diversi elenchi di filtri antispam ... dove può essere una seccatura per ottenere il tuo server rimosso da questi elenchi in seguito.

DoS è ovviamente molto semplice, se devo solo enumerare i nickname e posso reimpostare tutte le password degli account.

Ma il problema più grande è un falso senso di sicurezza

Potrebbe essere che stiamo trascurando qualche angolo o problema che esiste in questo momento. Ma anche se ora non ci sono problemi, cosa succede se qualcuno decide di implementare una nuova funzionalità in questa pagina l'anno prossimo? Forse per i clienti che ordinano / pagano online. - Fornisci un contesto accessibile solo con nome utente e password e le persone e gli sviluppatori faranno affidamento su questo. Tutti penseranno "questa è una parte sicura dell'applicazione a cui possono accedere solo i clienti, quindi posso fare X e fare affidamento su Y"

Se un'applicazione è praticamente accessibile al pubblico, dovrebbe sembrare che lo sia . Se l'applicazione sembra sicura, dovrebbe essere sicura!

Il falso senso di sicurezza è esattamente giusto: meglio non avere un sistema di password che avere un sistema di password che è gravemente difettoso.
@mehaase: fino a un certo punto.Un ostacolo basso è meglio di nessun ostacolo * se * puoi evitare il problema di dare un falso senso di sicurezza.Sembra essere un'idea comune che non valga la pena implementare una misura di sicurezza se non può essere perfetta.Aumentare il livello di sforzo richiesto per un attacco può scoraggiare alcuni aggressori e forse fermare alcuni attacchi robotici automatizzati.
@PeterCordes Non sono d'accordo.C'è una differenza tra l'impostazione di un ostacolo (ad esempio un collegamento con un ID / password incorporato) che renderà più difficile per gli aggressori accedere alla pagina, ma non fornirà la sensazione di un'area sicura all'utente: l'utente è solovisitando un segnalibro / facendo clic su un collegamento.Sembra una pagina pubblica, semplicemente non elencata su Google.Quando fornisci un modulo di accesso e visualizzi il lucchetto SSL verde, l'utente si sentirà come se fosse in uno spazio sicuro, questo farà più male che bene!
Non è proprio un disaccordo;Sono d'accordo che l'esempio non abbia una sicurezza reale sufficiente per superare il falso senso di sicurezza.Bisogna soppesare l'inconveniente per gli utenti e il potenziale falso senso di sicurezza contro i reali vantaggi.Ovviamente alcune misure di sicurezza cattive / deboli (specialmente quelle che sono visibili dall'utente e richiedono un lavoro extra da parte degli utenti) non valgono la pena.Ad ogni modo, volevo solo argomentare contro l'errore che non vale la pena fare nulla se la sicurezza perfetta è impossibile.
@PeterCordes posso essere d'accordo :-)
Dato che la sicurezza perfetta è * sempre * impossibile, è difficile non essere d'accordo!
Ian Howson
2016-07-25 05:01:34 UTC
view on stackexchange narkive permalink

Ci sono due prospettive qui:

  • Come utente, sì, sarei preoccupato, lo informerei il proprietario e mi asterrei dal condividere qualsiasi informazione sensibile al riguardo sito.
  • In qualità di proprietario / sviluppatore del sito, è tua responsabilità valutare se un potenziale rischio per la sicurezza è abbastanza serio da giustificare uno sforzo. Non tutti i rischi saranno abbastanza gravi da giustificare un'azione, giudicati in base alla probabilità che si verifichi, all'impatto di una violazione e allo sforzo richiesto per controllare il rischio.

In questo caso, hai ottenuto (a colpo d'occhio):

  • gravità: bassa
  • probabilità: moderata
  • sforzo: bassa

e quindi probabilmente dovrebbero fare qualcosa al riguardo; c'è una buona possibilità che siano semplicemente inconsapevoli del problema.

Nel caso generale , in risposta alla tua domanda "I difetti di sicurezza sono accettabili se non possono derivarne molti danni da loro?" - sì, possono essere. È necessario determinare se il compromesso tra gravità / probabilità / impegno rende utile risolvere un problema. "Accetta il rischio" è una risposta perfettamente ragionevole in molti casi.


Come esempio estremo, "alieni che possono rompere una forte criptovaluta visitano la Terra" è un rischio che la mia azienda deve affrontare. Scelgo di non controllare tale rischio poiché la probabilità che si verifichi è così bassa che non ne vale la pena.

coteyr
2016-07-26 00:23:18 UTC
view on stackexchange narkive permalink

Questa è una buona domanda e non è facile rispondere.

Ogni rischio per la sicurezza è proprio questo, un rischio . E affrontare tale rischio deve valutare i costi, la confusione e i pericoli del rischio rispetto alla soluzione proposta.

Guardando la tua domanda specifica, hai una parte "privata" del sito, che contiene alcune informazioni, ma nessun vero danno può provenire da qualcuno che accede a quella parte del sito. La tua falla di sicurezza richiede anche che l'hacker sappia che ogni password è stata reimpostata alla stessa cosa e che cos'è quella cosa.

Quindi, adesso, oggi, il tuo rischio più grande è niente o almeno basso.

Domani il tuo rischio maggiore è che la sezione privata possa contenere informazioni riservate.

Il costo per la "correzione" sembra piuttosto basso. Specialmente se stai già spedendo la nuova password "fissa". In sostanza, basta cambiare l'assegnazione della password a una casuale e il problema è "risolto" per ora. Potrebbe non essere il massimo, ma è meglio.

Quindi, hai un basso costo da risolvere, ma un rischio per la sicurezza basso. Devi valutarlo rispetto alle esigenze aziendali e determinare se ne vale la pena.

Tieni presente che l'azienda può contare su quella password fissa. Ad esempio, il personale di supporto potrebbe essere stato addestrato a reimpostare la password, quindi comunicare all'utente al telefono la nuova password e rimanere con loro finché non possono entrare, quindi aiutarli a cambiarla. È necessario tenerne conto quando si calcolano i costi.

Cosa faccio:

Quando trovo un bug o un problema di sicurezza, lo documento e stimo un costo di sviluppo da risolvere. Quindi lo aggiungo a un elenco e lo faccio sapere alle persone giuste. Potrebbe non essere mai rimosso da quell'elenco, ma una volta all'anno (o ogni 6 mesi) rivedo quell'elenco con i proprietari del sito e risolvo i problemi che posso.

Con questo rischio, probabilmente non verrebbe risolto molto rapidamente. Ho potuto vedere molte esigenze aziendali in primo piano, e va bene. Ma almeno è documentato, e quando qualcuno mi dice di voler inserire informazioni "segrete" in quella parte del sito, posso informarlo del rischio.

È anche importante notare che questo tipo di è probabile che il rischio porti ad altri tipi di rischi. Quando questo è stato codificato, è stata presa una cattiva decisione di sicurezza. Il sito dovrebbe essere controllato per altre decisioni sbagliate.

John Smith
2016-07-26 01:55:18 UTC
view on stackexchange narkive permalink

Ricorda che in qualità di sviluppatore potresti avere un'idea migliore dei rischi per la sicurezza effettivi rispetto a un utente. Se un utente scopre che il proprio account è stato dirottato, potrebbe presumere che l'utente non autorizzato possa aver avuto accesso a più informazioni di quelle effettivamente in grado di accedere. Anche se nessuna informazione sensibile viene effettivamente esposta, la tua azienda potrebbe comunque subire un danno alla reputazione.

Considera anche il fatto che potresti non sapere quali informazioni sono innocue per essere trapelate. Ad esempio, cosa succede se l'utente dispone di un nuovo processo di produzione rivoluzionario che un'azienda concorrente sta cercando di capire? Se un'apparecchiatura speciale utilizzata nel nuovo processo deve essere riparata e il suo indirizzo email viene cambiato, l'ordine di riparazione potrebbe dare all'altra azienda un'idea di quale sia il nuovo processo.

Sembra un semplice e alla fine dovrai fare quella valutazione per vedere se il rischio vale il costo di risolverlo.

Chris H
2016-07-27 20:01:26 UTC
view on stackexchange narkive permalink

Impersonare un utente legittimo da parte di un cliente (che in una certa misura viene considerato affidabile) è un buon modo per avviare un attacco basato sull'ingegneria sociale.

Un modulo di riparazione -> processo di posta elettronica è l'ideale per questo dato che si controlla l'indirizzo di posta elettronica. Forse potresti acquistare un dominio simile e cambiare l'indirizzo email "qualcuno@dominio.com" -> "qualcuno@dominio.ca", che si adatta perfettamente a "Mi sono appena trasferito alla nostra filiale canadese, quindi non ho il mio record, potresti ricordarmelo ...? "

Se puoi ottenere qualche informazione sulla storia del cliente / fornitore, puoi impersonare ulteriormente il fornitore per il cliente. Spesso è semplice come chiedere "Qual era il nome del tecnico dell'assistenza che ha visitato alcuni mesi fa? Apparentemente erano molto disponibili su un problema specifico, ma ero fuori e il mio collega si è occupato di loro"

CoffeDeveloper
2016-07-27 22:31:10 UTC
view on stackexchange narkive permalink

No, se l'utente accede a quel sito, potrà accedere all'email di qualcuno utilizzando il suo nickname che è dati riservati , in alcuni paesi questo è sufficiente per costringerti a

strong> NOTIFICA A TUTTI GLI UTENTI che qualcuno è riuscito a penetrare nel DB e che si è verificata una fuga di informazioni. Questo danneggia sia la credibilità che la possibilità di azioni legali.

Quindi, in generale, i difetti di sicurezza sono accettabili, ma questo potrebbe non essere un difetto di sicurezza accettabile. Anche questo è aperto a tutti i tipi di spam che i tuoi utenti potrebbero improvvisamente iniziare a ricevere malware e spam via e-mail .

Gli hacker sono sempre creativi per mettere a frutto (per loro) l'uso del difetti che hanno trovato. Presumi che l'identità degli utenti non sia un'informazione cruciale, ma potrebbe esserlo se si tratta, ad esempio, di un sito Web che tradisce. Inoltre, cosa succede se un utente promuove attivamente contro una setta / setta e improvvisamente un membro di sette può scoprire la sua identità? E se qualcuno vittima di stalking viene scoperto e grazie a ciò lo stalker è in grado di ritrovarlo?

La fuga di identità senza preavviso agli utenti è una violazione della privacy, quindi fai attenzione. I difetti dovrebbero essere corretti e analizzati i rischi non appena vengono trovati.

Ad esempio, preferirei che tutti i miei post sul forum venissero eliminati piuttosto che consentire a qualcuno di accedere al mio indirizzo email.

poiché ho detto che questo non è il mio sito web, l'unica cosa che posso fare (e l'ho già fatto) è segnalare il problema.
Buon per te questo non è il tuo sito web: D
Sei sicuro che la password non sia corretta?(ad esempio potrebbe essere un hash del tuo nome utente, utilizzando un salt unico per te) quindi l'hai testato con un secondo account?
La password di ripristino è la stessa per tutti gli utenti.Comunque, era solo un esempio: come ho spiegato, nessuna informazione sensata è stata esposta.Questo era il punto centrale della mia domanda :)
Va considerato caso per caso purtroppo.Anche permettere di cambiare l'avatar di un utente casuale potrebbe essere dannoso (a seconda che tu possa sostituirlo con immagini offensive e farlo bannare, ad esempio).
Lucian Davidescu
2016-07-26 02:04:01 UTC
view on stackexchange narkive permalink

Dipende, indicherò gli scenari estremi.

Scenario A - non preoccuparti! Da quello che dici, non c'è molta vera preoccupazione per i dati disponibili. Se potrebbe essere stato altrettanto bene pubblico e l'intera configurazione della sicurezza è solo uno schema di marketing / fedeltà, allora non c'è molto di cui preoccuparsi. Potrebbe spiegare anche la procedura sciatta, se è stata eseguita da qualcuno che non aveva l'esperienza, solo per il gusto di farlo. Finché quella persona svolge bene il suo solito lavoro, dovrebbe andare bene.

Scenario B - preoccupati! Se questo è solo un suggerimento su come vanno le cose in alcune parti dell'organizzazione, allora è possibile che tu possa trovare una falla di sicurezza ancora peggiore. Se il server è vitale per l'azienda, valuta innanzitutto la possibilità di verificare che siano presenti backup corretti e quindi avvia un controllo approfondito.

Poi ovviamente c'è il resto dell'alfabeto.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 3.0 con cui è distribuito.
Loading...