Ci sono molti altri metodi (ovviamente) per attaccare i server web, ma ci limitiamo al metodo che ti interessa: ottenere un file sul server e farlo eseguire dal server. Il controllo di accesso principale che impedisce la distruzione totale dei server Web è autorizzazioni file e un importante controllo secondario è tipo di file multimediali istruzioni sul server web. Sto spiegando come funzionano su Linux / Unix, che rappresenta oggi la maggioranza dei server web in uso .
In generale, la tua directory web in cui i file che costituiscono il tuo sito web sono (di solito qualcosa come / var / www per installazioni semplici) avranno permessi che controllano quali utenti sono in grado di leggere, scrivere ed eseguire file.
Un sistema configurato correttamente avrà permessi che permettono solo le operazioni richieste e nulla più. Ciò significa che un utente malintenzionato non sarebbe in grado di caricare il suo payload dannoso, perché non avrebbe accesso in scrittura.
Forse l'amministratore del server web ha commesso un errore con i permessi dei file? Il secondo livello di sicurezza è tipo di media istruzioni . Quindi, anche dopo aver caricato una pseudo-shell PHP come " phpshell ", potrebbe essersi detto al server web non per eseguire alcun file PHP . (ad esempio qualcosa come "AddType text / plain php").
Per l'hosting condiviso, la misura di sicurezza più comune è infatti disabilitando PHP (con qualsiasi metodo). Inoltre, molti provider di hosting forniscono una singola macchina virtuale per ogni cliente, quindi anche se riesci a eseguire il root della VM in qualche modo, non puoi entrare in nessun altro VM o host della macchina virtuale.