Distribuzione di applicazioni Web vulnerabili online

1

Sto implementando un'applicazione Web vulnerabile per studenti (circa 100) in un'università, che possono testare online e sto raccogliendo tutto il traffico a fini di ricerca.

Sto distribuendo questa macchina su un ESX che ospita altre macchine e sono preoccupato per i problemi di sicurezza coinvolti.

Qualsiasi suggerimento / link / suggerimenti disponibili sarà fantastico.

    
posta Evilwill 19.03.2012 - 14:54
fonte

3 risposte

2

Regole del firewall draconiane. Se si conosce il modo in cui l'applicazione è vulnerabile, è possibile scrivere regole per prevedere tali risposte dall'applicazione e nient'altro e limitare il limite delle vulnerabilità note, pur continuando a raccogliere i dati sul traffico. Potresti anche scrivere regole in modo che le risposte "cattive" previste dal server vengano reindirizzate a un buco nero o un altro server, in modo da poterlo anche catturare.

Mi piacerebbe anche che le macchine virtuali e il server non avessero accesso ad altri VM / server o reti.

Come dice Legolas, stai configurando un honeypot ad alta interazione, quindi inizializza così, ma devi limitare le risposte dannose effettive create dal tuo server.

    
risposta data 19.03.2012 - 18:38
fonte
2

Ti suggerisco di metterli su una LAN e i tuoi studenti possono navigare su di loro attraverso una configurazione VPN. È molto più sicuro che metterli solo su internet. Se li metti su internet, attiri l'attenzione anche da non-studenti.

Hai risposto tu stesso alla tua domanda, un'applicazione vulnerabile su Internet.

Ok, quindi devi tenere a mente:

  • applicazioni jail, non lasciare che siano in grado di vedere anche altre cartelle.
  • Partiziona il tuo disco rigido in modo che possano riempire solo una cartella dove avrebbero accesso con un exploit, altrimenti potrebbero mandare in crash il sistema
  • usa il principio dei privilegi minimi
  • Fai attenzione alle applicazioni che sono in grado di scrivere cose (so per esempio che con sql injection in mysql puoi creare un file che genera una shell php)
  • Monitora e registra tutto
  • Limita il caricamento e scarica
  • Firewall la macchina in modo che non possano configurare uno spambot di email
  • Limita memoria e tempo di cpu
  • Separa completamente questa rete dalla tua rete

  • Firewall: lista bianca invece di lista nera

risposta data 19.03.2012 - 15:06
fonte
1

Potrebbe essere ovvio, ma mi piacerebbe aggiungere altri due suggerimenti:

  1. Metti un meccanismo di autenticazione sicuro di fronte alla tua applicazione Web vulnerabile. Se esegui Apache, ti consiglio di bloccare l'intera directory dell'applicazione con un nome utente e una password tramite Apache. Se distribuisci quelle credenziali solo tra i tuoi studenti, questo porrà un'altra barriera nel percorso di attaccanti esterni / indesiderati.
  2. Ospita la tua applicazione Web vulnerabile da una macchina virtuale , se possibile. In questo modo, hai un altro livello di separazione tra questa applicazione e la tua infrastruttura reale (anche se non assolutamente quella a prova di proiettile), e puoi anche ripristinare facilmente il tuo server web sulla sua immagine originale su base notturna o discrezionale.
risposta data 24.03.2012 - 15:55
fonte

Leggi altre domande sui tag