Soluzione di hosting resistente agli Hack per il no profit?

47

(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?

    
posta user249493 09.03.2016 - 03:49
fonte

9 risposte

61

Se l'unica cosa che esponi a Internet sono pagine web non interattive e non è necessario eseguire componenti lato server, puoi ridurre notevolmente i rischi utilizzando un sito web statico .

Si rimane quindi con il motore Web stesso e in parte si estende il sistema operativo sottostante. Apache o nginx non sono semplici da indurire per poter dare un'occhiata a Cherokee o publicfile .

Puoi fare un ulteriore passo avanti o ospitando i tuoi file statici su un ambiente esistente che li accetta ( Github Pages per esempio) o passa a un sito che crei con blocchi come Google Sites (che sono free per organizzazioni non profit ).

    
risposta data 09.03.2016 - 08:33
fonte
21

Il problema con l'hosting condiviso è il seguente:

  1. Sei dipendente da tutti i siti web che mantengono aggiornato il loro codice. Potrebbe essere possibile che venga compromesso un altro account che consente a un utente malintenzionato di accedere alla propria parte del server web. Ci sono diversi modi per farlo, specialmente se è installato un pannello di controllo come Direct Admin.

  2. Quando io - come hacker - acquisto spazio web sullo stesso server su cui ti trovo, potrei semplicemente (nel tuo caso) caricare una shell Web PHP e (possibilmente) accedere a tutti i siti web che si trovano su quel server. Questo è anche possibile se i permessi dei file sono impostati correttamente.

La soluzione non è usare il web hosting condiviso.

Suggerirei di acquistare un VPS. Un buon VPS (6 GB di RAM - dischi SSD) può essere acquistato per $ 7 al mese. Potrei darti il link se vuoi, ma non voglio pubblicizzarlo qui. In questo modo sei più in controllo di ciò che sta accadendo.

    
risposta data 09.03.2016 - 06:04
fonte
9

Passa a un sistema di pagine statiche. Anch'io avevo WordPress - ma dopo essere stato violato 2 volte dal "Free Syrian Army" (nel tentativo di promuovere la loro situazione ...) mi sono stufato di Wordpress e ho usato Nikola .

Semplice e facile: pagine Web statiche ... senza account / porte / vulnerabilità SQL ecc.

Ce ne sono altri (Forks dello stesso) - cerca anche Pelican.

    
risposta data 09.03.2016 - 16:38
fonte
8

Digital Ocean offre macchine virtuali dedicate a partire da $ 5 / mese. Ciò sarebbe paragonabile a un server dedicato in termini di confronto della soluzione con VPS.

Tuttavia, il problema è più comunemente la soluzione software utilizzata nella pubblicazione effettiva dei contenuti. Indurire i file di configurazione della suite scelta non è banale a meno che non si abbia esperienza con quel genere di cose.

Il rafforzamento del server come argomento generale è enorme, ma se hai individuato un determinato gruppo di programmi che desideri utilizzare, Google e ServerFault.SE avranno molti suggerimenti su come bloccarli.

O come suggerisce WoJ, puoi utilizzare una soluzione di hosting più precoce.

    
risposta data 09.03.2016 - 11:29
fonte
5

Di regola, non è l'host che viene violato, ma è il tuo sito. Se hai un sito sicuro, un semplice VPS può tenerti al sicuro.

Supponendo che i tuoi contenuti non abbiano bisogno di rispondere in modo diverso a visitatori diversi, allora un generatore di siti statico funzionerà per te. In genere sono un po 'come wordpress in quanto scrivi il tuo contenuto personalizzato e viene trasformato in un sito a tema, ma è diverso in quanto il generatore vive sul tuo computer (non sul server web) e l'unica cosa sul server è HTML statico.

Quindi non c'è niente da hackerare. Non è vivo Il server non può fare nulla. È solo contenuto.

Se vuoi metterlo sul tuo VPS, puoi ottenerne uno a Linode o Digital Ocean, o se ti senti coraggioso, AWS o Google Compute. Il server di livello più basso in tutti questi luoghi è di circa $ 5 / mese, che è sufficiente per le tue esigenze.

Puoi persino ospitare un sito come Github Pages senza alcun costo.

    
risposta data 11.03.2016 - 03:14
fonte
4

Se hai già esperienza con Wordpress, allora perché non usare solo il cloud wordpress.com. Si spera che si prenderanno cura dell'amministrazione del sistema inclusa la sicurezza. Hai solo bisogno di mantenere la password sicura ed esportare / eseguire il backup dei tuoi messaggi regolarmente. Sei ovviamente in balia della compagnia, - il mio blog una volta è stato bloccato, ma sono riuscito a convincerli ad aprirlo di nuovo. Inoltre, probabilmente non tutti i plugin di cui hai bisogno potrebbero essere lì. Potrebbero esserci anche problemi di privacy, il problema del nome di dominio della tua organizzazione non profit e gli annunci che wordpress.com potrebbe pubblicare sulla tua home page.

    
risposta data 10.03.2016 - 11:35
fonte
2

C'è un buon consiglio nelle risposte. Tuttavia, probabilmente il consiglio più importante è utilizzare solo una società di hosting con una buona reputazione. Non basare la tua decisione sui costi e andare per un sito di bilancio basato esclusivamente su tali criteri.

In realtà, gestire un'azienda di hosting comporta notevoli costi di manutenzione. Per ottenere un profitto sufficiente, i tagli devono essere fatti da qualche parte. Sfortunatamente, questi tagli sono spesso applicati ai processi di gestione del rischio perché non esiste una chiara relazione 1 a 1 tra spesa ed entrate. Il risultato è che la sicurezza spesso soffre.

Le organizzazioni più grandi in cui la reutaiton è vista come un aspetto importante della loro redditività probabilmente spenderanno di più in queste aree. Hanno anche il vantaggio di poter sfruttare le economie di scala. Se non sei nella posizione di gestire i rischi per la sicurezza, devi fare affidamento sulla tua società di hosting.

Diverse risposte suggerivano di usare un sito statico piuttosto che wordpress. Un sito statico può aiutare, ma ovviamente, se il server è compromesso, fa poca differenza. Tuttavia, i framework dinamici mal gestiti che non sono aggiornati saranno sempre più a rischio di un sito statico, data la stessa sicurezza di hosting.

Wordpress è una soluzione ad alto rischio. È attivamente mirato e ci sono una serie di punti deboli nel sistema di plugin. Anche se mantieni aggiornati i plug-in, non c'è alcuna garanzia. Solo questa settimana c'è stato un report di un popolare plug-in che ha notevoli lacune di sicurezza che sono state deliberatamente aggiunte dal nuovo manutentore del plugin (questo è un problema comune con le architetture di plugin - i plugin di Chrome soffrono dello stesso problema. Funzionalità: siete a conoscenza della sicurezza, quindi controllate i riferimenti, la reputazione e i report utente per un plugin.Esso sembra buono e lo sviluppatore ha una buona reputazione, quindi lo installate. Più tardi, lo sviluppatore si muoverà - vendendo il plugin o consegnando non può essere più etico, non esiste un meccanismo che ti avvisa di questo cambiamento: il nuovo proprietario emette ed aggiorna il codice malevolo, applica l'aggiornamento (o forse l'aggiornamento viene applicato automaticamente). ).

Se non puoi semplicemente usare un sito statico, allora forse potresti considerare di usare qualcosa di diverso da wordpress che non è così mirato. questo non sarà conveniente poiché probabilmente imparerà un nuovo framework, ma potrebbe fornire una protezione aggiuntiva.

L'altra cosa da considerare seriamente, specialmente se semplicemente non c'è abbastanza budget, è vendere la tua reputazione web senza scopo di lucro. C'è un costo associato ad avere una presenza sul web. Se la non-profit non può permettersi il costo di un sito sufficientemente sicuro, o deve accettare il rischio di essere hackerato o deve ridimensionare la propria presenza sul web a qualcosa che è disposto a finanziare. In generale, ci sono poche soluzioni di sicurezza "economiche": ottieni quello per cui paghi (puoi pagare più del dovuto - specialmente con alcuni dei commercianti di olio di serpente attirati dal lucroso spazio di sicurezza, ma se fai la tua ricerca, cerca buone referenze / arbitri, ricorda che non esiste un pranzo gratis e se sembra bello essere vero, probabilmente non lo è, bla bla bla, generalmente starai bene).

    
risposta data 11.03.2016 - 02:26
fonte
2

Sicurezza del personal computer

Come per il modulo di commento AL , la vulnerabilità potrebbe non avere nulla a che fare con il tuo sito web o l'hosting ma più a che fare con le password rubate da un computer degli amministratori di siti Web compromessi o simili o forse l'autore dell'attacco ha il controllo su un account amministrativo che non è stato ripristinato dalla pulizia iniziale.

Abbandona WordPress vs Upgrade a un host migliore

Spostarsi da WordPress può aiutare, ma trovare un host con migliori pratiche di sicurezza può essere una soluzione più efficace.

Mi occupo di circa 50 siti Web costruiti con un CMS simile a WordPress e sono molto scrupoloso nell'applicare regolarmente gli aggiornamenti. I siti su host di buona qualità (ad esempio SiteGround) vengono raramente compromessi. SiteGround aggiorna regolarmente il firewall delle applicazioni Web per bloccare le più comuni vulnerabilità di WordPress, Joomla e altre, anche se dovresti comunque aggiornare prontamente il tuo CMS e tutti i componenti aggiuntivi di terze parti man mano che gli aggiornamenti vengono rilasciati.

Hosting condiviso vs VPS

Il passaggio a un VPS può ridurre il rischio di contaminazione da altri account sullo stesso server ma la sicurezza di un VPS dipende dalle competenze della persona o delle persone che la gestiscono, proprio come l'hosting condiviso.

Un account di hosting condiviso su un server ben gestito ha meno probabilità di essere compromesso rispetto a un VPS gestito male.

Precauzioni per la sicurezza Common Sense

Qualunque cosa tu faccia, niente sul web è sicuro al 100%. È possibile ridurre al minimo il rischio di perdita di dati eseguendo backup regolari, copiando i backup fuori sede e testando regolarmente i backup.

Ulteriori informazioni su altre precauzioni di sicurezza di buon senso come:

  • applica regolarmente gli aggiornamenti
  • mantenendo aggiornata la versione di PHP
  • scegliere il software solo da sviluppatori affermati e affidabili
  • riduzione al minimo del numero di componenti aggiuntivi, ove possibile
  • riduzione al minimo del numero di account amministrativi
  • implementazione di un firewall di applicazioni Web per proteggere il sito Web e / o abilitare una rete di distribuzione di contenuti (CDN) che include un firewall di applicazioni Web

In conclusione

Direi che la soluzione più conveniente nel tuo caso in cui un cliente attento al budget è una soluzione di hosting condiviso con un provider di hosting di buona qualità.

    
risposta data 11.03.2016 - 12:30
fonte
2

Prima di tutto, devo notare che non sono d'accordo con la premessa su essere vulnerabili solo per essere su un host condiviso. Se il tuo account di hosting condiviso è compromesso da un altro utente, è perché:

  • La società di hosting non ha correttamente isolato gli utenti
  • L'utente ha fatto qualcosa di sciocco (come avere 777 file)

Con un VPS, l'isolamento è fornito da un livello diverso, che è più difficile da superare. E ancora di più con un server dedicato. Quindi, non sono d'accordo con la risposta che Bluehost ti ha dato.

Tuttavia , se il compromesso è originato dal tuo account (ad esempio un plugin wordpress vulnerabile), allora non avrà certamente importanza l'opzione di hosting che usi.

Certamente, il tuo file logo-small.png sembra come se fosse stato caricato tramite il tuo applicazione.

Per quanto riguarda il rilevamento dei compromessi, ti consiglio di mantenere il file nel controllo della versione. È facile creare uno script che rsync il tuo sito web e si impegni ad es. un repository git.

Questo serve da backup e evidenzia anche molto chiaramente le differenze quando i file vengono modificati.

Diverse risposte promuovono l'uso di file statici. Se i file non cambiano in remoto e si presume che tu sia l'unico a modificare le pagine Web (o che siano cambiate nello stesso computer "master") un semplice rsync -avz --delete website/ the-server: tornerebbe alla versione "pulita", qualora dovesse sorgere un tale compromesso. È anche possibile sincronizzare automaticamente in questo modo "nel caso in cui", anche se il sito Web è in qualche modo vulnerabile, il ripristino automatico dal backup, anche se efficace nel tempo, non è una soluzione reale.

    
risposta data 03.07.2016 - 01:21
fonte

Leggi altre domande sui tag