Questa è un'aggiunta alla risposta di @ TopherBrink, con la quale sono molto d'accordo. Prima di tutto sì, usa HTTPS e HSTS e hai cose dietro una schermata di accesso. Secondo, dobbiamo vedere un po 'di etica:
Discussione etica
Questo è Internet, tutto il contenuto è lì, se qualcuno lo vuole lo otterrà. Potrebbe essere bloccato dai firewall e qualcuno troverà un perforatore o utilizzerà un proxy / VPN, potrebbe essere filtrato dal DNS e qualcuno creerà un sito Web di IP da utilizzare.
Se il contenuto è pericoloso lì sono rischi giganteschi in diversi paesi: prigione, tortura, pena di morte. Ma contro questi rischi hai praticamente due opzioni:
-
Non farlo e consenti a qualcun altro di servire il contenuto a queste persone. Ci sarà qualcun altro, questo è Internet.
-
Fai del tuo meglio per negare la responsabilità . Non considero la negabilità come scarsa sicurezza, ma in realtà non hai opzioni.
E ho visto gli adolescenti essere in grado di utilizzare una VPN basata su tutorial trovati su Internet. Il problema è che, sebbene la loro configurazione funzionasse, perdeva una buona quantità di informazioni. In generale, se non offri il contenuto a qualcun altro, anche se il contenuto necessita di proxy / VPN per accedervi.
La causa etica è più complessa del non servirlo e del non essere indirettamente responsabile della morte di qualcuno. Se rinunci a servire il contenuto, sei comunque responsabile della morte di qualcuno se è stato sorpreso ad accedere a contenuti da un luogo che era peggio protetto di quello che potresti fare.
Sfuggire alla responsabilità non è un punto etico. Pertanto difenderò l'opzione meno popolare e sosterrò di farlo . Ma fai del tuo meglio per negare la responsabilità.
Nota etica finale
Ricorda sempre che alcuni utenti sono semplicemente stupidi e quindi non c'è modo di proteggerli. Se non puoi affrontare il fatto che prima o poi dovrai sacrificarne uno per il bene di molti, allora non farlo . Ma non farlo per questo motivo. Non solo perché è pericoloso.
Proposta di negazione (cioè un modo per farlo)
Il problema più grande è che devi trovare un modo per fornire accessi a utenti affidabili utenti e non darli a quelli non fidati. Un modo per aggirare il problema è avere due siti web, diciamo: safewebsite.com
e secretwebsite.com
.
(Entrambi i domini in esecuzione solo su HTTPS e implementazione di HSTS)
safewbsite.com
conterrà contenuto sicuro, sarà accessibile senza un accesso per impostazione predefinita ma gli utenti potranno registrarsi.
secretwebsite.com
restituirà sempre la stessa pagina "sicura" per chiunque. L'unico modo per ottenere il resto del contenuto è essere autorizzato, ovvero essere un utente registrato di secretwebsite.com
. Ora, non c'è modo di registrarsi su secretwebsite.com
(restituisce solo una singola pagina). L'unico modo per secretwebsite.com
di darti il token corretto (diciamo un cookie per semplicità) è inviare un GET all'URL corretto. Pronuncia https://secretwebsite.com/logon/6733abf78..77bab99
(o codificato base64, qualunque cosa). Quell'URL è il tuo token di sessione.
(l'utilizzo di GET per l'autenticazione è cattivo , ma poiché siamo su HTTPS e l'URL è un token corretto, difficile da indovinare, è accettabile ).
Il token deve essere difficile da usare con la forza bruta. E l'unico modo per ottenere un token corretto (un collegamento corretto a secretwebsite.com
) è da safewebsite.com
.
Ora puoi scegliere (letteralmente cherrypick) utenti di safewebsite.com
che possono accedere a secretwebsite.com
.
Il merito di questo approccio è che crei un'area triage (il sito web sicuro) da cui puoi scegliere gli utenti che saranno sufficientemente responsabili per accedere al sito web segreto. Se costruisci correttamente il meccanismo di sessione, puoi dare e prendere la possibilità di accedere al sito web segreto dai tuoi utenti.
Il problema è che questo funzionerà solo per un piccolo numero di utenti ed è suscettibile di ingegneria sociale contro di te. Fare e algoritmo per valutare la veridicità di un utente non è cosa da poco (se possibile), quindi non c'è modo di automatizzare la selezione dell'utente. Un altro problema è che devi impedire a safewebsite.com
di diventare un terreno di discussione su come accedere a sectretwebsite.com
, da allora perdi completamente il controllo su chi è affidabile e chi non lo è.
Riepilogo sulla sicurezza
Aspetti positivi:
-
secretwebsite.com
non esiste, ok? No, non è così, è sempre "in costruzione". Il fatto che qualcuno abbia visto qualcosa è una creazione della sua mente. - Puoi eliminare gli accessi di utenti problematici. O meglio, devi eliminarli. Se un utente parla apertamente di
secretwebsite.com
su safewebsite.com
sta facendo più male che bene a entrambi i siti web. - Doni responsabilità a te stesso e i tuoi utenti. Per renderlo un po 'più plausibile puoi randomizzare la dimensione della pagina (falsa) inviata da
secretwebsite.com
(quindi sostenere che qualcuno ottiene una pagina di dimensioni diverse non è fattibile). - C'è anche un punto di confusione. Poiché nessuno sa come accedere effettivamente a
secretwebsite.com
(l'URL appare a determinati utenti e non ad altri in base al tuo capriccio, che non può essere quantizzato), puoi chiudere secretwebsite. com
temporaneamente in tempi pericolosi.
Aspetti negativi:
- La negabilità non funziona contro un aggressore che vuole farti qualcosa solo perché ha bisogno di fare qualcosa a qualcuno (vale a dire, ha bisogno di un capro espiatorio ). La negabilità non impedirà mai a nessuno di essere un capro espiatorio, ma nemmeno qualsiasi altra misura di sicurezza se l'aggressore ha potere fisico e giudiziario su di te.
- Dovrai affrontare le leggende metropolitane su
secretwebsite.com
. È importante che tu non permetta loro di vagare liberamente su safewebsite.com
, altrimenti avrai una correlazione visibile. - La negabilità funziona perché nella società moderna sospetto non è mai uguale a proof (cioè
suspicion! = proof
). Nel momento in cui un aggressore può fare affidamento sul suo sospetto per condannare qualcuno, può farlo a suo piacimento. Il lato positivo è che un tale aggressore può essere sospettoso nei confronti di chiunque, e passare attraverso i loop del sito Web è molto faticoso rispetto a catturare qualcuno a caso per strada. - È molto lavoro. Se la comunità dei tuoi utenti cresce, avrai bisogno di una moderazione molto etica, difficile da trovare.
Note extra:
- È pericoloso? Sì, le persone potrebbero essere scoperte. Ma sarebbero comunque capri espiatori. Un regime autoritario ha bisogno di capri espiatori, devi assicurarti che i tuoi utenti siano più difficili da trasformare in capri espiatori di altri.
- Hai detto molto, ma un sito web del genere funzionerebbe nel mondo reale? Sì , funziona. C'era una volta che ho contribuito a creare uno di questi siti web. Sono passati 5 anni e il sito web è ancora vivo. Sia il lato sicuro che quello segreto.
- Puoi dirci qual è il sito web? No , leggi sopra per i motivi.