Lo scambio di stack dovrebbe essere più oscuro nella struttura dei suoi sistemi?

20

Ho notato che Stack Exchange rivela sempre la struttura dettagliata dei suoi server e sistemi ( vedi questi blog messaggi ). E anche i risultati esatti dei loro test e punti di debolezza (vedi vecchi e ultimi risultati dei test Conosco i concetti di software open source per quanto riguarda la sicurezza, che molti occhi lo rendono più sicuro da un occhio, ma ho sempre pensato che fosse il caso di cose generiche, non di divulgare la propria architettura di rete dei sistemi esatti e dettagliati.

Anche se ammetto che è così utile ed educativo, e mi diverto a leggerlo e studiarlo, ed è considerato un riferimento per molte cose, ma ho ragione nell'assumere che rivelare che molti dettagli possano essere considerati così utile per un utente malintenzionato ed è una violazione evidente della sicurezza?

EDIT: Anche come ha notato Henning Klevjer, l' data explorer è anche una buona fonte di come la struttura dati interna e il database assomigliano , che può essere una guida per modificare o danneggiare facilmente un dato specifico di dati se un'intrusione è riuscita.

Penso che tutto ciò sia fantastico, e un po 'più di apertura dovrebbe essere incoraggiata in altri siti e sistemi, ma lo Stack Exchange non è troppo lontano? Chiunque è in grado di sapere dove sono i data center, quanti di essi, l'hardware dei server utilizzati, lo schema completo dello stack, i sistemi operativi utilizzati, la topologia della rete e le esatte versioni del software (in molti casi). Sei in grado di conoscere la manutenzione programmata; cosa succede esattamente, cosa è successo e cosa è successo e perché e cosa stanno facendo per renderlo giusto. Penso che sia fantastico, ma è sicuro ??

    
posta amyassin 04.11.2012 - 13:05
fonte

3 risposte

30

No. Dovresti sempre dare per scontato che l'attaccante sappia tutto. La sicurezza dell'oscurità è considerata una cattiva pratica dalla maggior parte degli sviluppatori e architetti non governativi. L'ostacolo che fornisce è minimo e, se qualcosa viene tenuto segreto, potrebbe essere tale da nascondere un difetto. Il principio di Kerckhoffs è importante da guardare.

Modifica : questa risposta tratta la sicurezza per oscurità in generale; non particolarmente per StackExchange.

    
risposta data 04.11.2012 - 13:11
fonte
10

Ci sono due lati della divulgazione:

  • Presumibilmente , la divulgazione completa aumenta la probabilità che una persona ben intenzionata possa individuare bug e segnalarli, in modo che possano essere risolti rapidamente. Questo è ciò che Eric S. Raymond chiama "legge di Linus" (espresso come "Dato un numero sufficiente di occhi, tutti i bug sono superficiali." ). Sebbene ESR e Linus Torvalds credano in questo, ci sono altre opinioni disponibili. Che un blog sponsorizzato da Microsoft cerchi di contraddire un noto sostenitore di Linux non dovrebbe essere una sorpresa; tuttavia, entrambi gli articoli sono una lettura interessante (non credere a ciò che leggi, ma pensa su di esso).

  • Presumibilmente , l'oscurità impedisce agli aggressori di trovare bug; o, almeno, li rallenta. Esistono molti esempi storici di sistemi di sicurezza che vengono interrotti anche se sono stati oscurati. Nel campo dei computer, qualsiasi exploit zero-day contro software closed-source è una prova sufficiente. Non è così difficile decodificare il codice compilato (come programmatore, a volte trovo più semplice lavorare su file binari smontati piuttosto che ispezionare il codice sorgente, quando il codice sorgente è stato scritto in modo non corretto). Inoltre, l'architettura del sistema è presumibilmente documentata da qualche parte, solitamente come cumuli di carta su scaffali anonimi o (frequentemente) gettati nella spazzatura - cose che raramente rimangono segrete a lungo. Questo può essere riassunto come: l'oscurità non è completa, ed è difficile da mantenere .

In pratica, l'errore da evitare è crederci nell'efficienza di una completa divulgazione o oscurità. La divulgazione completa non è affidabile come metodo per rilevare problemi di sicurezza (ne trova alcuni, non tutti). L'oscurità non è affidabile nel nascondere i problemi di sicurezza (rallenta alcuni aggressori, non tutti). Idealmente , la divulgazione non dovrebbe avere importanza (ma è lo stesso "idealmente" che in "idealmente, il software non ha bug"). In pratica , considera solo il peggiore di tutti gli scenari: considera che tutti i potenziali aggressori e solo loro, ispezionano i tuoi sistemi e sanno tutto su di loro.

    
risposta data 04.11.2012 - 20:01
fonte
3

Direi che forse nasconde i numeri di versione esatti dalle stringhe di risposta, ma:

  1. Solo quando si è sicuri che l'implementazione del protocollo sia stabile e corretta (non si desidera che alcuni software utilizzino la versione per sapere di utilizzare una soluzione alternativa per l'implementazione del protocollo errata).
  2. È un frutto appesantito molto basso, abbastanza per fermare alcuni script kiddies che cercano di trovare i server che sanno essere versioni compromesse. Anche uno script kiddie che cerca solo la sua lista di exploit non verrà fermato.

In definitiva qualsiasi vero aggressore ha una miriade di modi per ottenere tali informazioni. Da esso si comporta in un modo particolare il software x versione y, a qualcuno al suo interno che può inoltrare i dettagli.

    
risposta data 04.11.2012 - 13:25
fonte

Leggi altre domande sui tag