Nas últimas horas, meu servidor está ficando bastante carregado, principalmente devido a muitas solicitações de carregamento.
Eu vi isso graças às estatísticas em tempo real do StatCounter, que mostra que a página "Veio de" é:
http://www.facebook.com/extern/login_status.php?api_key=3d34061e0ac6dc4dec21b35d2fb9d6d3&extern=0&channel=http%3A%2F%2Fwww.mysite.com%2F%3Fxd_receiver%3D1&locale=es_ES&sdk=edgar
E a página de destino é
http://www.mysite.com/?xd_receiver=1#%7B%22id%22%3A0%2C%22sc%22%3A%22http%3A%2F%2Fwww.facebook.com%2Fxd_receiver_v0.4.php%22%2C%22sf%22%3A%22loginStatus%22%2C%22sr%22%3A2%2C%22h%22%3A%22loginServer%22%2C%22sid%22%3A%220.162%22%2C%22t%22%3A0%7D%5B0%2C%22loginStatus%22%2C%22InitLogin%22%2C%7B%22b
A CPU, mem e largura de banda estão ficando cada vez mais altas, e eu gostaria de agora se isso pudesse ser algum tipo de ataque.
Este é um blog WordPress com o WP 3.2.1, baseado em um Ubuntu 10.04.2 LTS, com Nginx, PHP-FPM e APC. Normalmente funciona muito bem, mas estou com medo de que essas solicitações estejam carregando muito o servidor.
A única explicação que tenho é que eu tenho o plugin Simple Facebook Connect para permitir comentários com uma conta no Facebook, mas não deu nenhum problema até agora.
O mais estranho é que o access.log mostra que os pedidos vêm de diferentes IPs, então eu acho que não é um ataque
164.77.106.237 - - [19/Oct/2011:18:20:53 +0200] "GET /?xd_receiver=1 HTTP/1.1" 403 189 "http://www.facebook.com/extern/login_status.php?api_key=3d34061e0ac6dc4dec21b35d2fb9d6d3&extern=0&channel=http%3A%2F%2Fwww.mysite.com%2F%3Fxd_receiver%3D1&locale=es_ES&sdk=edgar" "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; InfoPath.1)"
212.104.164.139 - - [19/Oct/2011:18:20:48 +0200] "GET /?xd_receiver=1 HTTP/1.1" 403 135 "http://www.facebook.com/extern/login_status.php?api_key=3d34061e0ac6dc4dec21b35d2fb9d6d3&extern=0&channel=http%3A%2F%2Fwww.mysite.com%2F%3Fxd_receiver%3D1&locale=es_ES&sdk=edgar" "Mozilla/5.0 (Windows NT 5.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.835.202 Safari/535.1"
etc.
É possível no Nginx bloquear URLs, por exemplo, que correspondam ao parâmetro api_key que é uma constante em todas essas solicitações?