Script PHP para proteger sitios Web mediante el bloqueo de solicitudes de direcciones IP, consideradas como fuentes de tráfico no deseado.

Share this…

CIDRAM (Classless Inter-Domain Routing Access Manager) es un script PHP, diseñado para proteger sitios web, mediante el bloqueo de solicitudes originadas en direcciones IP, consideradas como fuentes de tráfico no deseado, incluyendo (pero no limitado a) tráfico desde: puntos de acceso no humanos, servicios en la nube , Spambots, scrapers, etc. Esto lo hace calculando los CIDRs posibles, de las direcciones IP suministradas desde las solicitudes entrantes y luego tratando de hacer coincidir estos CIDRs posibles, con sus ficheros de firma (estos ficheros de firma contienen listas de CIDRs de direcciones IP, consideradas como fuentes de tráfico no deseable), si encuentra coincidencias, las solicitudes se bloquean.

CIDR reemplaza la sintaxis previa para nombrar direcciones IP, que son las típicas clases de redes. En vez de asignar bloques de direcciones en los límites de los octetos, que implicaban prefijos «naturales» de 8, 16 y 24 bits, CIDR usa la técnica VLSM (variable length subnet mask, en español «máscara de subred de longitud variable»), para hacer posible la asignación de prefijos de longitud arbitraria. CIDR engloba, la técnica VLSM para especificar prefijos de red de longitud variable. Una dirección CIDR se escribe con un sufijo que indica el número de bits de longitud de prefijo, p.ej. 192.168.0.0/16 que indica que la máscara de red tiene 16 bits (es decir, los primeros 16 bits de la máscara son 1 y el resto 0). Esto permite un uso más eficiente del cada vez más escaso espacio de direcciones Ipv4. Con la agregación de múltiples prefijos contiguos en superredes, reduciendo el número de entradas en las tablas de ruta globales.

CIDRAM debe bloquear automáticamente las solicitudes indeseables a un sitio Web sin requerir intervención manual (aparte de sus instalación inicial). Las actualizaciones de listas se realiza  de forma manual, y se puede personalizar su configuración y personalizar cuál de los CIDRs son bloqueados, modificando su archivo de configuración y sus archivos de firmas.

Para que funcione correctamente CIDRAM necesita que las anotaciones CIDR sean precisas y correctas, de lo contrario el script no reconocerá las firmas. Adicionalmente, todas las firmas de este script deben comenzar con una dirección IP cuyo número IP puede dividirse de una manera uniforme, dentro la división del bloque representada por el tamaño de sus bloque CIDR (por ejemplo, si desea bloquear todas las IPs de 10.128.0.0 a 11.127.255.255, 10.128.0.0/8 no sería reconocido por el script, pero 10.128.0.0/9 y 11.0.0.0/9 si seria reconocido por el script).

Cualquier argumento en los archivos de firmas no reconocido por el script, ni como como una firma o una sintaxis relacionada con la firmas, se ignorará. Por lo tanto, esto significa que se puede poner con seguridad cualquier dato que se desee en los archivos de firmas sin romperlos y sin afectar al funcionamiento del script. Los comentarios son aceptables en los archivos de firmas y no requiere un formato especial para ellos. Para los comentarios se prefiere el estilo de Shell, pero no es necesario ningún formato para que funciones, no hace ninguna diferencia el script independientemente de si se elige utilizar el estilo de Shell para comentarios, pero utilizarlo ayuda a IDEs y editores de texto, a resaltar correctamente las diversas partes de los archivos de firmas ( el estilo de comentarios de Shell puede ayudar como ayuda visual durante la edición).

Principales características de CIDRAM:

  • Es gratuito bajo licencia GNU General Public License versión 2.0 (GPLv2).
  • Fácil de instalar, fácil de personalizar y fácil de usar.
  • Funciona en cualquier sistema con PHP + PCRE instalado, independientemente del sistema operativo.
  • Totalmente configurable según las necesidades del usuario.
  • Solución ideal para sitios web con sistema de gestión de contenidos CMS y sistemas de foro que utilizan servicios de alojamiento compartido.
  • No requiere acceso shell.
  • No requiere privilegios administrativos.

Los posibles falsos positivos en el contexto de CIDRAM, se refieren a las firmas de CIDRAM y a quién se bloquea. Cuando CIDRAM bloquea una dirección IP indebida por firmas incorrectas o obsoletas, pero no debería haberlo hecho, o cuando lo hace por las razones equivocadas, nos referimos a este evento como un “falso positivo”. Cuando CIDRAM no puede bloquear una dirección IP que debería haber sido bloqueada, debido a las amenazas imprevistas, firmas perdidas o déficit en sus firmas, nos referimos a este evento como una “detección perdida” (que es análogo a un “falso negativo”).

Fuente:https://www.gurudelainformatica.es