Monitoraggio dell'integrità per un server LAMP

1

Quindi sto configurando una piccola app di e-commerce e sto pensando a cosa succederebbe se il server fosse compromesso. Stiamo vendendo software così potenzialmente un intruso potrebbe generarsi dei numeri seriali gratuiti (non una grande preoccupazione), afferrare il database dei clienti (più di una preoccupazione) o fare qualcosa di subdolo come reindirizzare i pagamenti legittimi su un altro account paypal (che cade a metà tra i due in termini di preoccupazione).

Ho pensato che mi piacerebbe sapere se il PHP è stato modificato. Raccoglierebbe molti tentativi di intrusione e (mentre ci sono) come avrei raccolto le modifiche più avanti nello stack del server? Esiste un modo standard di controllare le modifiche ai contenuti?

L'opzione più sicura sarebbe presumibilmente un'attività pianificata su un server diverso che si collega periodicamente e confronta il contenuto con il proprio record. C'è uno scaffale, strumento gratuito che fa questo?

    
posta Sideshow Bob 30.04.2012 - 21:58
fonte

4 risposte

1

Suppongo che tu stia mantenendo i dati dei tuoi clienti in qualche database SQL. È tipico che gli aggressori utilizzino tecniche come SQL Injection per estrarre i dati dal database. Poiché questa tecnica non ha bisogno di modificare alcun file sul server, non sarai in grado di individuare questo tipo di attacco. Come ho capito afferrare database dei clienti da parte di un attaccante è lo scenario che ti preoccupa di più. Inoltre, in questo caso in caso di violazione dei dati potrebbe essere troppo tardi, quindi è necessario verificare la sicurezza della tua app in primo luogo. Puoi anche utilizzare WAF (ad esempio ModSecurity ) come misura di rilevamento o / e protezione.

Anche l'integrità del sistema di monitoraggio è buona, ma non è sufficiente.

    
risposta data 30.04.2012 - 22:18
fonte
1

Penso che questo sia l'approccio sbagliato. Il problema è che la tua applicazione non dovrebbe essere modificabile . Una notifica che il tuo sito Web è stato modificato non è buono come impedirlo in primo luogo. Rendi tutti i file sul web direttamente leggibili ed eseguibili da Apache, ma di proprietà di un altro utente. Uno dei modi per farlo è chmod 550 e mettere Apache nel gruppo.

Un WAF come ModSecurity è una buona misura di sicurezza preventiva, quindi verifica regolarmente il tuo sito alla ricerca di difetti. Ci sono opzioni open source come Wapiti e Skipfish che devono essere eseguite manualmente. Esistono servizi di scansione gratuiti come Sitewatch , che aiuto a sviluppare.

    
risposta data 30.04.2012 - 22:29
fonte
1

Per IDS basato su host, c'è tripwire (open source), tripwire (commerciale), LIDS e molti altri strumenti che costruiscono un database di impronte digitali dei tuoi file correnti.

Anche se la maggior parte dei gestori di pacchetti software (incluso RPM) può davvero l'integrità dei file, è complicato eseguire la verifica su un database remoto.

Inoltre, sono presenti rilevatori di malware (che utilizzano impronte digitali e rilevamento di anomalie) tra cui chkrootkit e rkhunter

Poiché un utente malintenzionato può potenzialmente compromettere il sistema senza modificare i file, quindi includere i dati honeypot è un ottimo modo per rilevare quando un sistema è compromesso (ad esempio, impostare i propri account "cliente" con indirizzi e-mail e monitorare le cassette postali).

    
risposta data 01.05.2012 - 10:46
fonte
0

I buoni attacchi usano solo la memoria. Se sei preoccupato per le modifiche al contenuto statico, utilizza un controllo del filesystem che ti avvisa dopo aver modificato un file. fam , aide , samhain sono alcuni di questi.

Se utilizzi RPM per l'installazione, puoi controllare se gli rpms sono ancora "originali" con rpm -V packetname .

    
risposta data 30.04.2012 - 22:33
fonte

Leggi altre domande sui tag