12 septiembre 2011

Cómo molestar a los malos, el caso real de OVH

Hace poco descubrí el centro de abusos que tiene OVH, mediante él, se pueden enviar y consultar direcciones IP dentro de su rango de direcciones que han hecho alguna actividad sospechosa o maliciosa.

En su listado de direcciones mantienen las actividades que se han detectado y, de forma actualizada, si se siguen realizando.

Para ello utilizan listas negras conocidas, la información enviada por agentes externos y posiblemente sus sistemas de detección automáticos. Que por cierto, a modo de anécdota, ya me ha sucedido dos veces que su sistema automático ha detectado actividades mías en mi espacio que podrían ser maliciosas y me las ha detenido automáticamente, para luego enviarme la correspondiente alerta por email.

Se me ocurrió una manera de echar una mano, y de paso, intentar fastidiar a unos cuantos chicos malos.

Uno de los rangos de direcciones de OVH es el 188.165.0.0/16. Programé un script que recorriera todas las direcciones en el rango y las consultara contra una lista de DNSBLs, es decir, listas negras de IPs con diferentes actividades (spamming, malware, nodos de salida de Tor, scanning hosts, ...) que se consultan mediante una petición DNS.

#!/usr/bin/env ruby

require "socket"

bls = ["zen.spamhaus.org"]

# OVH RANGE: 188.165.0.0/16
# DNSBL petition: 0.0.165.188

for i in 0..255
        for z in 0..255
                f = File.open("bboys", "a")
                f.puts "188.165.#{i.to_s}.#{z.to_s}"
                listed = false
                counter = 0
                bls.each do |dnsbl|
                        begin
                                Socket.getaddrinfo("#{z.to_s}.#{i.to_s}.165.188.#{dnsbl}", nil)
                                listed = true
                                counter += 1
                        rescue
                        end
                end
                if listed == true
                        f.puts "188.165.#{i.to_s}.#{z.to_s} listed in #{counter.to_s} blacklists"
                end
                f.close()
        end
end

He suprimido todas las DNSBLs que usé menos una. Son fáciles de encontrar, es más, en Am I Spammer, del que hablamos a menudo, tenemos una amplia lista de DNSBLs que podemos utilizar.

Después de un par de días funcionando, el resultado fue un total de 1510 IPs que estaban listadas en, al menos, una lista negra. Podéis consultar la lista aquí, que por cierto, ha sido enviada a la dirección que tiene OVH para reportar abusos, para que hagan lo que crean oportuno.

2 comments :

Pepeluxx dijo...

Buen artículo. Por cierto, lo del sistema de detección automático es una paranoia. A mí también me manda mails de alerta cada vez que entro desde un móvil.

Saludos

Newlog dijo...

Pobre gente que navega con Tor :P

Buena idea!