cosa fare dopo sospetta intrusione sul server web di un hobby

16

Gestisco un server per ospitare i miei file e un certo numero di siti Web per hobby e amici. Ho appena notato che il riepilogo del sito restituito in google per uno dei miei domini era tutto relativo al porno (cerca "fringe.org", 1 ° risultato).

Controllando la fonte, ho trovato codice php offuscato ( vedi qui ) Non ho riconosciuto incluso in /index.php di quel dominio dopo il < \ / html & gt ;. L'ho cancellato e poi ho anche trovato e cancellato dall'index.php di altri 5 domini nella mia web root (sebbene ce ne fossero 3 o 4 senza).

Dettagli del server:

  • LAMP con Ubuntu 10.10 completamente aggiornato molto regolarmente
  • PHPinfo: link
  • La mia password è molto sicura, ma ho dato account con accesso web-write a 3 o 4 amici. Non sono sicuro di quanto siano sicure le loro password.
  • Credo che l'accesso sia solo da ssh o sftp

La mia domanda è quali passi devo prendere ora. Dati e contenuti vengono regolarmente copiati dal server. Mi fa sentire sporco, quindi sarei incline a cancellare e ricostruire il tutto, ma sono a 10 giorni dal grande evento annuale del mio sito più grande.

Grazie mille in anticipo per eventuali suggerimenti.

Bene ... merda . Grazie per il feedback e informazioni. È difficile come sia facile mettersi nei guai in questi giorni. Avrei contrassegnato tutte le tue risposte come accettate se potessi, erano tutte utili. Farò un full wipe e ricostruirò attentamente le cose al più presto.

    
posta Sam Swift 06.04.2011 - 19:37
fonte

4 risposte

10

PHP:

  1. allow_url_fopen deve essere disattivato. Penso che questo sia il modo in cui sei diventato di proprietà. Un grosso errore!
  2. display_errors deve essere disattivato. Li uso tutto il tempo per trovare informazioni sul percorso.
  3. file_uploads deve essere disattivato. Questo potrebbe essere stato un altro modo di cui sei stato proprietario.
  4. expose_php deve essere disattivato
  5. safe_mode deve essere attivo
  6. magic_quotes_gpc dovrebbe probabilmente essere impostato su On

Questi sono problemi gravi. Probabilmente sei stato colpito da una botnet LFI / RFI. Dovrai installare un nuovo server, ma NON COPIARE alcun codice, dati dal database o file flat (e non riutilizzare alcuna password - sono tutti sospetti a questo punto! Hai la responsabilità di cambiare tutte le tue password e chiedi agli utenti di fare lo stesso).

Lascia che ti ricordi la gravità di questo attacco. Qualunque codice PHP o altro contenuto sul tuo server può (e probabilmente lo fa) contenere altre backdoor. Se non si dispone del monitoraggio dell'integrità dei file prima di questo incidente, sarà necessario creare un nuovo server senza questo codice e contenuto PHP. Non puoi semplicemente copiarlo, dovrai ricreare tutto manualmente.

In secondo luogo, non puoi fidarti dei dati nel database se ne usi uno, come MySQL. Non è possibile copiare i file di dati MySQL o persino utilizzare gli stessi record di dati, colonne o tabelle in una nuova macchina. Dovresti considerare tutti questi dati come se avessero la capacità di prendere il controllo su qualsiasi nuova macchina messa in servizio - e per inviare malware a chiunque visiti qualsiasi sito web collegato a questo database o che utilizzi uno qualsiasi dei dati di questo database.

Infine, non ci si può fidare di tutti i file flat, compresi quelli importanti come / etc / passwd e / etc / shadow. Non è possibile riutilizzare nessuno di questi dati e tutte le password sono sospette. Anche le password nei tuoi database sono sospette.

Se qualcuno ha mai eseguito SSH da questa macchina, considera anche questi account remoti compromessi. Se c'è una connettività locale su una LAN verso qualsiasi macchina, considera anche quelle macchine come compromesse. Qualsiasi password in qualsiasi file PHP che si connette ad altri servizi (come i database esterni) dovrebbe essere considerata compromessa. Tutto dovrà essere ricostituito. Non è possibile ripristinare dai backup!

Sei in guai molto seri e probabilmente dovrai assumere un aiuto esterno!

    
risposta data 06.04.2011 - 20:36
fonte
4

Dopo aver sperimentato un compromesso simile (ma più serio), posso dirti che atdre ha esattamente ragione. Esistono quattro passaggi fondamentali per gestire qualsiasi problema di sicurezza:

  1. Arresta : arresta tutti i sistemi compromessi. Non cancellarli a questo punto.
  2. Analizza : utilizza i dati dei sistemi compromessi in un ambiente sterile per cercare di determinare la causa e l'estensione prossimali. Consiglio vivamente di assumere un consulente di sicurezza a questo punto.
  3. Divulgazione : indica agli utenti interessati la natura e le conseguenze dell'exploit e cosa dovrebbero fare al riguardo. Questo farà male ma tu devi farlo.
  4. Ripristina : elimina i sistemi compromessi dallo spazio. Ciò significa una completa installazione del sistema operativo o, quando possibile, il lancio di un sistema completamente nuovo. Se è necessario ripristinare i dati dal sistema, utilizzare i backup che precedono il tempo di attacco. Non utilizzare dati che potrebbero essere compromessi. Se pensi di poterlo ripulire, non puoi assolutamente. Prima di ricollegare i nuovi sistemi, correggere le vulnerabilità di sicurezza rilevate nel passaggio (2) e eseguire un'attenta verifica per altre possibili vulnerabilità.

Una risposta molto più approfondita è nella seguente domanda. Mi ha aiutato molto nel mio momento di bisogno.

link

    
risposta data 08.04.2011 - 19:27
fonte
2

1) Assicurarsi che tutte le librerie, i moduli e le applicazioni siano completamente aggiornati.

2) Interrompi utilizzando FTP . Ci sono worm che si diffondono sniffando per gli accessi FTP.

3) Esegui PHPSecInfo

4) Considerare l'utilizzo di un Web Application Firewall (WAF) come mod_security.

5) Se per caso puoi ottenere un indirizzo IP dell'aggressore o qualcuno che accede alla backdoor. RAPPRESENTA L 'FBI . (Un WAF aiuta con questo)

(Punti bonus: sostituisci la backdoor con un semplice script .php che registra l'indirizzo ip. Se qualcuno lo colpisce avrai un ip per l'fbi)

    
risposta data 06.04.2011 - 20:36
fonte
2

Dovresti pulire l'intera macchina. L'autore dell'attacco ha avuto abbastanza accesso al tuo server per modificare alcuni file; probabilmente potrebbe eseguire codice arbitrario. Sfortunatamente, gli exploit di escalation dei privilegi locali tendono ad esistere in grandi quantità; una macchina correttamente dovrebbe non avere exploit remoto , ma credere nella sicurezza contro gli utenti locali è un po 'ingenuo. È probabile che uno dei tuoi utenti sia stato violato (password indovinata, o che la sua macchina locale sia stata compromessa e l'attaccante abbia appena seguito la sessione SSH).

Di conseguenza, è plausibile che l'autore dell'attacco abbia installato un rootkit che sarebbe stato molto difficile rilevare dalla macchina stessa (un rootkit è progettato per rendersi invisibile). Quindi il wipe consigliato.

Cosa sarebbe peggio? Che non è possibile riconfigurare in modo ottimale il tuo sito principale per il suo evento annuale? O che il sito si trasforma improvvisamente in un festival porno nel bel mezzo di detto evento?

    
risposta data 06.04.2011 - 21:49
fonte

Leggi altre domande sui tag