(Mentre le risposte e i commenti su Come faccio a trattare con un server compromesso? sono utili, la mia domanda è più sulla prevenzione dell'hacking quando non ho un controllo totale (o molto) sul server.Ho accesso SSH ma non i privilegi di root. Non riesco a vedere o modificare nulla oltre il mio account utente.)
Mi offro volontario per un non-profit, mantenendo il loro sito web per loro. Siamo stati su una piattaforma di hosting condiviso a basso budget (Bluehost) per diversi anni. Il sito è stato creato su Wordpress e ho fatto del mio meglio per mantenere il core WP e tutti i plugin aggiornati.
Ma ci siamo fatti hackerare più volte. A volte era malevolo (cancellando la home page) mentre altre volte era nascosto (ho scoperto file nascosti che sembravano consentire solo a qualcuno di entrare e curiosare)
Mi sono completamente sbarazzato di WP, ricostruendo il sito su Bootstrap. Ho rimosso tutti i file tutti dal server, eseguito più scansioni antivirus sulla versione locale del nuovo sito, grep'd per tutto ciò che sarebbe stato sospetto e poi ho caricato i file sul server. Ero quasi sicuro al 100% che questo nuovo codebase fosse "pulito".
Ma in pochi giorni ho scoperto (confrontando il server con la mia versione locale) un index.php hacked (un codice 'preg-replace' è stato inserito prima della prima riga) e ho trovato un "logo-small.png "file in una sottodirectory che in realtà non era un file immagine. Era un grosso pezzo di PHP offuscato che sembrava destinato a cose sgradevoli (ho de-offuscato e visto il codice).
Sapevo che gli host condivisi, spesso con centinaia di siti, potevano essere vulnerabili. A questo punto, sono assolutamente diffidente del server in cui ci troviamo. Ma quando ho chiesto a Bluehost se saremmo più al sicuro su un VPS o su un server dedicato (pensando che la nostra "sandbox" sarebbe stata più difficile da ottenere), hanno detto che non avrebbe davvero fatto la differenza.
Quindi sono in un dilemma. Il no profit che aiuto ha un budget limitato. Ma non voglio continuare a spendere da decine a centinaia di ore per monitorare e riparare il sito. Non so se gli hacker entrano attraverso il file system o una porta aperta che non dovrebbe essere aperta.
Esiste una soluzione economica che fornisce un "indurimento" molto migliore?