Hosting condiviso per un'applicazione PHP

2

Leggevo Essential PHP Security e il capitolo 8 parla dei problemi con l'hosting della tua app PHP in un hosting condiviso ambiente.

Alcuni dei problemi che cita sono:

: codice sorgente esposto e esplorazione del file system.

a web server must be able to read the source code in order to execute it. Since the web server is shared a PHP script written by another developer on the server can read arbitrary files. An attacker can also create a script that browses the file system.

: dati di sessione esposti e iniezione di sessione.

By default, PHP stores session data in /tmp which is writable by all users, so Apache has permission to write session data there. A simple script can allow other users to read, add, modify, or delete sessions.

È come se tutto fosse esposto e vulnerabile se usassi l'hosting condiviso in questo modo.

Le mie domande:

  1. Considerando che il libro è stato pubblicato 8 anni fa, ci sono ancora problemi o si sono attenuati in qualche modo negli ultimi anni?
  2. Perché scegliere l'hosting condiviso se causerà questi enormi problemi di sicurezza?
  3. Comprendo che l'hosting condiviso è economico, ma deve esserci un'alternativa più sicura e meno costosa rispetto all'hosting dedicato?
  4. Nel caso in cui un cliente mi chieda di sviluppare un'applicazione che sarà ospitata su un hosting condiviso, c'è un modo completo per sviluppare un'applicazione sicura o è solo una ricetta per il disastro?
posta Songo 21.08.2013 - 20:11
fonte

3 risposte

1

1) Considerando che il libro è stato pubblicato 8 anni fa, ci sono ancora problemi o si sono attenuati in qualche modo negli ultimi anni?

La navigazione nel file system può essere disabilitata da servizi di hosting adeguatamente competenti. So che la coppia di account di hosting condiviso che ho ancora non ti consente di sfogliare i file al di fuori della tua stessa directory. Inoltre, i dati di una sessione trapelata non sono un problema: mettili in un database a cui appartiene.

2) Perché scegliere l'hosting condiviso se causerà questi enormi problemi di sicurezza?

Contesto storico - 8 anni fa l'hosting VPS stava per iniziare. Le due opzioni principali erano l'hosting condiviso e le macchine specializzate. E ovviamente le macchine dedicate erano molto più costose dell'hosting condiviso. Quindi ... molte persone sono andate con l'hosting condiviso.

3) Comprendo che l'hosting condiviso è economico, ma deve esserci un'alternativa più sicura e meno costosa dell'hosting dedicato?

No, 8 anni fa non c'era davvero. Non a quel particolare prezzo. Hosting VPS ora è molto più economico, e questo è fondamentalmente preso il sopravvento.

4) Nel caso in cui un cliente mi chieda di sviluppare un'applicazione che sarà ospitata su un hosting condiviso, c'è un modo completo per sviluppare un'applicazione sicura o è solo una ricetta per il disastro?

No. Non esiste un modo "infallibile" per farlo su hosting condiviso, ... o hosting dedicato. Tuttavia, raccomanderei VPS hosting su hosting condiviso. Ciò pone la responsabilità dello sviluppatore di proteggere la macchina, ma consente anche allo sviluppatore di installare qualsiasi software ed estensione necessari.

L'hosting condiviso può andare bene. Anche se ci sono problemi teorici, considera anche che le persone che installano le macchine sono probabilmente molto più competenti nel proteggerli rispetto a un hacking medio di PHP. E in tutta onestà, se c'è un problema di sicurezza, è molto più probabile che sia dovuto a un difetto nel codice PHP rispetto all'impostazione del server.

    
risposta data 21.08.2013 - 20:43
fonte
0

Risposta parziale:

2) Perché è l'opzione più economica disponibile; e per le persone che non sono a conoscenza dei rischi o non se ne preoccupano perché non sentono nulla di quello che hanno, vale il costo aggiuntivo per proteggerli, non c'è motivo di non farlo.

3) I Virtual Private Server (VPS) si trovano tra l'hosting condiviso e dedicato nel prezzo. Quello che ottieni è una VM per installare i tuoi server web / db / etc su. Alla fine più basso li ho visti per un minimo di $ 10 al mese che non è molto più di un account condiviso a basso costo. Per quel prezzo si ottiene una quantità minima di risorse su un server con un gran numero di altri VPS in esecuzione su di esso; ma lo stesso vale per qualsiasi hosting condiviso a basso costo. A prezzi più elevati è possibile ottenere più risorse condivise delle risorse del server e più supporto finché non si confonde la linea tra un VPS di grandi dimensioni e un server dedicato di fascia bassa (ex atom, celeron, ecc.).

4) Anche un server dedicato non è a prova piena in quanto potrebbe essere violato; ma non posso darti alcun consiglio specifico per rafforzare un account condiviso.

    
risposta data 21.08.2013 - 20:20
fonte
0

Risposta parziale:

By default, PHP stores session data in /tmp which is writable by all users, so Apache has permission to write session data there. A simple script can allow other users to read, add, modify, or delete sessions.

Questo è vero, ma ci sono soluzioni alternative: puoi cambiare session.save_path a qualcosa nella tua home directory, o memorizza i dati di sessione in un database invece.

    
risposta data 23.08.2013 - 23:49
fonte

Leggi altre domande sui tag