Come faccio a consentire ai clienti di eseguire codice arbitrario nel modo più sicuro possibile?

3

Vorrei offrire un servizio in cui i clienti possano scrivere codice java arbitrario, inviarlo a me e lo eseguirò per loro su Amazon EC2. La mia domanda è: come posso farlo senza esporre i dati di un cliente a un altro cliente?

In questo momento sto pensando che ogni cliente possa essere sottoposto a sandbox come proprio utente di livello OS con autorizzazioni limitate. È abbastanza buono?

Capisco che questo sia un problema spinoso, ma sembra essere uno di quelli che molte persone, come i progettisti di sistemi operativi multiutente e Amazon stessi stanno risolvendo, quindi sono ottimista sul fatto che potrebbe esserci un buon approccio.

    
posta Tyler 29.06.2011 - 09:02
fonte

4 risposte

3

Sei a conoscenza del responsabile della sicurezza? Ti consente di limitare molte funzionalità, ma devi passare un po 'di tempo per renderlo ermetico.

Perché non accendere semplicemente una nuova istanza di ec2 per eseguirla completamente separata?

    
risposta data 29.06.2011 - 14:09
fonte
2

In primo luogo - virtualizza.

In secondo luogo - controlla i termini del servizio per assicurarti che Amazon EC2 ti permetta davvero di farlo, sembra vendere di nuovo il loro servizio.

    
risposta data 29.06.2011 - 10:49
fonte
0

Il tuo unico modo sicuro per farlo (e non sicuro al 100%) è controllare il loro codice prima di eseguirlo. L'uso di strumenti di revisione del codice catturerà molti potenziali problemi di sicurezza e la revisione manuale del codice dovrebbe catturare la maggior parte del resto.

Sarei estremamente preoccupato di provare a farlo - hai una buona assicurazione di responsabilità civile, giusto? E puoi gestire battaglie legali in tutti i paesi in cui sono basati i tuoi clienti?

    
risposta data 29.06.2011 - 14:06
fonte
0

Leggi sulla sezione su codepad.org per una descrizione generale delle misure di sicurezza per interprete / compilatore online. Il ragazzo utilizza virtualizzazione e chroot e ripristina periodicamente le macchine virtuali dai backup. Forse avrebbe concesso in licenza il suo software supervisore, è probabilmente uno dei motivi per cui gestisce l'intero progetto.

    
risposta data 29.06.2011 - 14:39
fonte

Leggi altre domande sui tag