Pandora FMS: un plugin WordPress para fortalecerlo

«Pandora FMS plugin WordPress» por Jimmy J. Olano Sayago.

WordPress está presente en 27% de las webs y posee más de 27 mil complementos (llamados en inglés como “plugins”) y «Pandora FMS plugin WordPress» es uno de ellos: está enfocado a fortalecer la seguridad de los sistemas que utilizan este popular software libre. Recordemos, por noticia pública y notoria, que el año pasado (2016) el Primer Ministro del Reino Unido renunció a raíz de una escándalo por la difusión de correos electrónicos almacenados en un servidor de correos donde también se ejecutaba un blog de WordPress y el cual tenía un complemento instalado con una falla de seguridad que permitió a los atacantes hacerse con la información. Vemos, pues, que no es un tema a descuidar en forma alguna, intrínsecamente WordPress es muy seguro pero complementos y/o sus actualizaciones (incluso las del mismo WordPress) pueden poner nuestros datos en penosas situaciones (nosotros no hacemos nada ilegal para ocultar pero tenemos derecho a nuestra privacidad).

¿Qué es «Pandora FMS plugin WordPress»?

Ya sabemos para qué se usa, ahora veremos realmente qué es «Pandora FMS plugin WordPress». Escrito inicialmente como software libre hace poco más de un año en su lanzamiento, cambia recientemente a licencia de uso «Apache 2.0», pero en ambos casos nos garantiza, básicamente, el acceso al código fuente, su uso y difusión e incluso su modificación en caso que necesitemos adaptarlo a nuestras necesidades. Por tanto la responsabilidad de su uso recae sobre nuestros hombros, ya que la garantía que ofrece «Ártica ST» es limitada (de hecho esto es lo común en el mundo del software libre y debemos siempre tenerlo en cuenta).

Pero no nos asustemos con esto, esta empresa tiene una larga trayectoria en el monitoreo de servidores y redes, herramientas indispensables en la administración de la seguridad y «Pandora FMS plugin WordPress» es una más de ellas; su producto estrella «Pandora FMS» tiene la capacidad de monitorear, si así lo deseamos, nuestro sitio WordPress y disfrutar así de un robusto entorno de trabajo a nivel empresarial, dado el caso que tengams que administrar múltples blogs. «Pandora FMS plugin WordPress» ofrece unas opciones de monitoreo, que aunque no son tan avanzadas como cuando lo integramos con «Pandora FMS», siempre nos garantiza el objetivo planteado de asegurar y proteger nuestro servidor web que albergua a WordPress.

«Pandora FMS plugin WordPress» está escrito principalmente en lenguaje PHP y JavaScript, su repositorio oficial reposa en GitHub y contiene una breve descripción acerca de su uso, instalación y desinstalación. También ofrece unas capturas de pantalla desde su sitio en “WordPress.org” (de donde podremos descargar de forma segura «Pandora FMS plugin WordPress») sin embargo nosotros aquí publicamos nuestras propias capturas de pantalla bien ampliadas y detalladas con propósitos didácticos y para compartir el conocimiento.

Instalación de «Pandora FMS plugin WordPress».

Para poder utilizar «Pandora FMS plugin WordPress» debemos tener instalada como mínimo la versión WordPress 4.7 y debemos ingresar con nuestras debidas credenciales de administrador a nuestro sitio web.

Una vez hallamos ganado acceso, desde el escritorio o “dashboard” de WordPress hacemos clic en el ícono de complementos y elegimos “Añadir nuevo” y escribimos la palabra clave “pandora” y le damos buscar para ver algo parecido a esto:

«Pandora FMS plugin WordPress» figura N° 001 instalación
«Pandora FMS plugin WordPress» figura N° 001 instalación

Figura Nº 001 instalación

Acá debemos revisar que tenga la marca de verificación “Compatible con tu versión de WordPress” y de ser así procedemos al botón “Instalar ahora”. Otra manera de instalación sería ir al repositorio, descargar y “subirlo” por medio del botón “Subir plugin”: esta opción está pensada para entornos donde no tengamos acceso a Internet (una red de área local privada, por ejemplo). Como este no es el caso ya que estamos probando con un servidor en producción y es más rápido de esta manera: comunicandose directamente con el sitio web WordPress.

Deberemos tener paciencia mientras “descarga” el complemento desde el propio sitio web de WordPress.org y una vez haya finalizado nuestro botón cambiará de aspecto y mostrará la leyenda “Activar”. Este es otro proceso que tomará su tiempo según el ordenador que tengamos o si nuestro sitio web es compartido con otras web, como es nuestro caso, de nuevo paciencia. Veremos luego algo similar a la siguiente figura:

Figura Nº 002 activación

Ahora debemos configurar nuestros valores y necesidades personalizados en la siguiente sección.

Configuración de «Pandora FMS plugin WordPress».

Figura Nº 003 menú de configuración

En esta imagen podemos ver que «Pandora FMS plugin WordPress» trae su propio ícono en el menú lateral de WordPress, se destaca de los demás complementos para una mayor facilidad de administración gracias a que tiene bien estructuradas sus opciones:

  • Tablero principal o “Dashboard”.

  • Control de acceso o “Access Control”.

  • Seguridad del Sistema o “System Security”.

  • Configuración General o “General Setup”.

  • Estado de los Ficheros de Sistema o “Filesystem status”.

Veremos todos y cada uno de estos submenús no necesariamente en el mismo orden, comencemos por el Tablero Principal.

Tablero Principal o “Dashboard” de «Pandora FMS plugin WordPress».

Esta será la sección que utilizaremos con mayor frecuencia ya que nos muestra de manera global y a golpe de vista el estado general del sistema:

Figura Nº 004 Tablero Principal

  • Monitoreo.
  • Control de Acceso.
  • Seguridad del Sistema.

La sección de Monitoreo le prestaremos mayor atención porque, aunque no son menos importantes, las otras dos secciones tiene su propia administración. Por ahora Control de Acceso y Seguridad del Sistema está reprobadas no obstante en Monitoreo si tendremos algunas tareas ya aprobadas y otras tantas por aprobar.

Auditoría de fortaleza de contraseña o “Password strength audit” está aprobada en nuestro ejemplo indicando así que la contraseña por nosotros elegida no se encuentra en la lista de 100 contraseñas más utilizadas (en idioma inglés). Recomendamos encarecidamente que tenga al menos diez caracteres entre mayúsculas, minúsculas, dígitos y caracteres especiales a fin de que no estén incluidas en los gigantescos diccionarios para ataques de fuerza bruta. De no ser así debemos cambiarla por medio de las herramienta de WordPress destinada a tal efecto (a saber “Usuarios” y luego “Tu perfil”).

Auditoría de Ficheros de Sistema o “Filesystem audit” está reprobada porque es una tarea programada que se ejecuta cada 24 horas y que viene activa por defecto y debemos tener paciencia para que se ejecute. Luego visitaremos esta característica en su propio apartado.

Nuevos comentarios y/o entradas en las últimas 24 horas (“New coments in last 24h” y “New post in last 24h”) es útil si somos la única persona que redacta artículos ya que si no lo escribimos nosotros pues evidentemente que nuestro sistema ha sido comprometido, recordemos que WordPress incluye una alternativa de publicación que consiste en un buzón de correo electrónico totalmente nuevo y destinado para tal efecto: todo lo que allí enviemos será publicado. Aunque «Pandora FMS plugin WordPress» no vigila eso por esta opción nos daremos por enterado si sucediere una publicación no autorizada. Por otra parte si somos varios autores no tiene tanta utilidad, si acaso conocer el ritmo de crecimiento de nuestro sitio y por cálculo matemático detectar anomalías: si tres personas tienen cuenta no sería lógico que en 24 horas aparezcan publicados cuatro o más entradas así que utilicemos siempre el sentido común.

API Rest Enable: ¿recuerdan que «Pandora FMS plugin WordPress» puede extender sus capacidades de monitoreo automatizado y centralizado con la excelente herramienta «Pandora FMS»? Pues bien si queremos adquirir «Pandora FMS» e integrarlo acá pues necesitamos unas librerías especiales para que se logre la conexión de datos. En nuestro caso de ejemplo está aprobado y listo y no necesita otra acción de nuestra parte.

Versión de WordPress y nombre de nuestro sitio es meramente informativo, acá nos muestra que tenemos instalada la versión 4.7.5 y nos indica que hay disponible una nueva versión, la 4.8 que deberemos actualizar en cuanto sea posible.

Versión de «Pandora FMS plugin WordPress», pues sin más que decir.

Intentos de acceso por fuerza bruta en los últimos 60 minutos o “Recent brute force attemps in 60 minutes” está aprobado y quiere decir que estamos a salvo en un período reciente.

«Pandora FMS plugin WordPress» en otros idiomas.

En el mundo de la programación se acostumbra a realizarlo en idioma inglés por costumbres históricas, Alan Turing era británico y es considerado uno padre de la ciencia de la computación y precursor de la informática moderna: de su trabajo escrito en su lengua materna están las bases sólidamente asentadas. Pero como el mundo es muy grande y hay muchísimos otros idiomas en cada proyecto de desarrollo de software se asigna una carpeta donde se alberga las llamadas internacionalizaciones o traducciones a cada lengua. Como en inglés se escribe “internationalization” y hay 18 caracteres entre la primera y última letra se toma como norma abreviarlo “i18n”.

Lamentablemente en el repositorio de «Pandora FMS plugin WordPress» dicha carpeta existe pero sin contenido alguno, por lo que aquí hacemos las traducciones necesarias mientras se completa ese trabajo ¿Desea usted colaborar en ese aspecto? Con solo crear una cuenta en GitHub, hacer una bifurcación o “fork”, realizar su aporte (treducción) y solicitar una unificación o “pull request” (en el caso que esté correcto el código y los autores originales decidan aceptarlo, lo cual no es obligatorio) podremos llegar algún día a tener este maravilloso complemento (al menos sus instrucciones e interfaz) en idioma castellano.

Estado de Ficheros de Sistema “Filesystem status”.

 

Figura N° 005 Estado de Ficheros de Sistema

Comentamos que cada 24 horas se realiza una verificación de la integridad de todos y cada uno de los ficheros mediante el procedimiento de control de versiones y revisiones y uno de los más populares es el creado por la “Apache Software Foundation”. Esta fundación creó el “Apache Subversion”, abreviado como SVN, el cual asigna a cada archivo una “huella” o “hash” por una algoritmo matemático y mediante simple comparación sabremos si un fichero ha sido modificado (desde luego que estamos simplificando al máximo, en realidad no es así exactamente como trabaja el código pero es una buena aproximación).

Por favor, lea también   CentOS 8: instalando Pandora FMS desde línea de comandos

Dicha técnica es ampliamente utilizada por los mal llamados programa antivirus para realizar su función de detección y «Pandora FMS plugin WordPress» también hace lo propio, mostrando en la figura un resumen si ha sucedido tal evento. También ofrece una muy útil ventana de exclusión de ficheros por tipo, nos remitimos a la figura Nº 005 donde apreciamos que los archivos gráficos (con extensión GIF, JPG y PNG) no serán monitorizados, así como un subdirectorio llamado askimet en la carpeta de sistema plugin. Ese askimet es un complemento bien conocido lo que nos indica que «Pandora FMS plugin WordPress» no hace le seguimiento por ser una ayuda contra el correo basura o “spam”.

En este punto podríamos llegar a pensar que es un fallo en la instalación pero debemos tener en cuenta que mientras mayor cantidad de archivos vigilemos más lento se pondrá nuestra pagina y si es compartida por otros sitios web ¡pues debemos tener consideración para con los demás! Queda como decisión propia de cada administrador el borrar -o agregar- las carpetas y/o ficheros así como los complementos “plugins” que queremos o necesitemos estar pendientes de ellos.

En todo caso recomendamos mantener siempre en la lista el primer fichero especial “PandoraFMS_WP.class.php” ya que se utiliza para hacer la instalación del complemento y la activación del mismo con los valores que estamos estudiando.

Así como está planteado acotamos que una vez hayamos instalado y activado «Pandora FMS plugin WordPress» jamás ni nunca lo desactivaremos ni activaremos de nuevo, lo mejor es borrarlo e instalarlo de nuevo ¿Por qué? Como no vigilamos este fichero que tiene la rutina de activación hay la remota posibilidad de que una atacante cambie los valores por defecto para su beneficio dejando lisiado al software que pretende protegernos. Todo puede suceder si hay el menor resquicio, en el siglo veinte pensábamos que no podíamos volar y mucho menos llegar a la Luna ¡y vean ahora!

Buscar archivos infectados o “Scan for infected files” es una revisión diaria en búsqueda de dos caracteres (escritos en hexadecimal) aparentemente infaltables cuando un archivo PHP está infectado pero hará falta un software más completo para determinar a ciencia cierta qué tipo de infección presenta (de hecho primero habrá que decifrar el código maligno ofuscado). Esta opción está activada por defecto.

Enviar correo electrónico si los ficheros de sistema fueron modificados “Email on files list modified” está activada por defecto y si no hemos asignado un correo electrónico «Pandora FMS plugin WordPress» lo enviará al correo electrónico del administrador “admin” ¿Por qué otra dirección de correo electrónico distinto? Mientras más ojos vigilen, mejor por eso si son dos personas distintas el administrador de WordPress y el administrador de la seguridad en teoría habrá mayor protección.

Configuración General “General Setup” en «Pandora FMS plugin WordPress».

 

Figura N° 006 Configuración General

Acá podemos agregar nuestro correo electrónico, sería el de la persona que se va a encargar de la seguridad que como ya dijimos sería deseable sea una persona distinta del administrador de WordPress.

También como dijimos si usamos «Pandora FMS», la cual utiliza API’s para recolectar información, le podremos especificar las direcciones IP de los servidores autorizados a dicha tarea, eso refina la seguridad al cerrar la brecha de entrada. Así mismo, por defecto, las API reportan cambios cada hora y tenemos siete días para conservar los registros de seguridad de «Pandora FMS plugin WordPress»; pasado este período de tiempo serán borrados para ahorro de espacio.

Control de Acceso “Access Control” en «Pandora FMS plugin WordPress».

 

Figura N° 007 Control de Acceso 1ª parte

Esta sección a su vez la desglosaremos en dos porciones, la primera está reseñada en la Figura 007 donde a modo informativo nos muestra los datos de los usuarios que se hayan conectado y la hora y fecha y dirección IP con la cual lo logró. El complemento registra los intentos exitosos o no de los usuarios registrados, dado el caso que se intente ingresar con cualquier otro nombre de usuario no lo veremos acá sin embargo ya veremos que hay otra método para combatir estos otros intentos. En la segunda parte veremos que dichas direcciones IP puedan ser agregados a una lista de negación de acceso “Black list IPs”, si es que necesitamos, especialmente si provienen de otros países diferentes al nuestro (son pocas las empresas que son trasnacionales).

«Pandora FMS plugin WordPress» nos avisará de los siguientes aspectos, activados por defecto en la instalación:

  • Cada conexión exitosa de cada usuario (puede llegar a ser irritante), “Email on login user”.

  • Al crear una nueva cuenta, “Email on new account creation”.

  • Cuando un usuario cambie su correo electrónico, “Email on user email change”.

  • Cuando se instale un complemento “plugin” nuevo, “Email on new plugin”.

  • Cuando se instale un tema nuevo, “Email on new theme”.

Todos estos acontecimientos debemos vigilarlos, si acaso pudiendo excluir la primera línea. Una cosa que no comprobamos es si «Pandora FMS plugin WordPress» se percata cuando agregamos un usuario por medio de MySQL directamente, tal como lo relatan en este tutorial, dejamos esto como tarea para que ustedes amigos lectores y lectoras practiquen sus habilidades ?.

Figura N° 008 Control de Acceso 2ª parte

“Activate login rename” significa renombrar el fichero llamado “wp-login.php” pero dicho cambio no es tan sencillo como eso: se necesita a lo largo de todo el código de WordPress cambiar las referencias a dicho archivo. Por ejemplo, nosotros hicimos una prueba cambiando el nombre del archivo que permite introducir nuestras credenciales de usuario, lo renombramos como jimmy y guardamos la preferencia. A continuación agregamos un usuario llamado lucy, recibimos el correspondiente mensaje por correo avisando sobre el nuevo usuario y también el nuevo usuario recibió también un mensaje con el enlace del fichero renombrado (e invitando a cambiar su contraseña), acá la captura del mensaje:

Figura N° 009 nuevo usuario con fichero login renombrado

La idea es que “ocultemos” de la vista pública dicho archivo, cortando así de raíz, cualquier intento de acceso no autorizado. Incluso podemos cambiarlo periódicamente para despistar aún más a los indeseados. Para esta tarea existen otros complementos que se dedican exclusivamente a eso.

Aunque audaz esta medida también puede resultar peligrosa hasta el punto de que si algo llegara a salir mal, que puede suceder, la solución sería volver a subir los archivos de sistema de WordPress por vía SFTP a fin de ganar acceso de nuevo.

Por defecto la siguiente parte viene activada: “limit login attemps” se traduce en limitar el número de intentos de manera incorrecta a un máximo de tres, bloquear el acceso por 120 segundos incluyendo los usuarios correctos y válidos (“pagan justos por pecadores”).

Como dijimos hay un cuadro de texto donde escribiremos las direcciones IP que expresamente le neguemos el acceso. La otra opción que tiene que ver con el “login” a nuestro blog es por medio de colocarle una CAPTCHA y acá lo nombran como ReCaptcha porque en realidad es tecnología de Google a quienes debemos solicitar las claves correspondientes para prevenir por completo los ataques automatizados. Esta característica viene desactivada por defecto.

Por último viene no activada “Disable the XMLRPC of WordPress” que aunque es muy útil a fin de comunicar e intercambiar información entre diversas plataformas y nuestro sitio también es utilizado para atacar nuestro sistema, especialmente los “pingbacks” y “trackbacks”.

Seguridad del Sistema “System Security”.

 

Figura N° 010 Seguridad del Sistema

Por último tenemos las opciones para fortalecer la seguridad del “WebLog” lo primero que nos informa es el registro de ataques de fuerza bruta, aquí vacío porque claro, lo acabamos de instalar.

Recién al instalar WordPress se crea un usuario por defecto llamado “admin” por lo que primero que nada debemos crearnos una cuenta de Administrador para nosotros mismos y luego borrar dicha cuenta preconfigurada. «Pandora FMS plugin WordPress» se encarga de verificar que dicha cuenta no exista ya que sería una debilidad fácilmente explotable.

Aunque de manera general el WordPress viene configurado para que busque actualizaciones de manera automática (incluidos los complementos) si por alguna extraña razón se encuentra desactivada «Pandora FMS plugin WordPress» se ocupará en avisarnos de ello. También permite que no actualicemos ciertos complementos que por alguna u otra razón válida no nos convenga: los agregamos a la lista y quedan “congelados en el tiempo”, no nos advertirá sobre nuevas versiones disponibles del o los “plugins” en la lista.

Pro medio del archivo especial de configuración llamado “.htaccess” para el “Apache Web Server” podemos evitar que sean “subidos” ficheros con la extensión “.php” que son los que puede ejecutar con algún código malicioso, para evitarlo marcamos esta opción.

También podemos delegar la responsabilidad de configurar el fichero especial para los buscadores web, el cual es llamado “robots.txt” el cual contiene en lengua franca las consideraciones que deberían seguir y obedecer todas las “arañas” que indexan páginas web de manera automática por el ciberespacio.

Ya por último otra forma de ofuscar a los hackers y crackers (o por lo menos dificultarles el trabajo) es inhibir la exhibición de la versión de nuestro blog. Aun que es muy sencillo de hacer por nosotros mismos nunca está demás facilitarnos la vida, imagínense que tuvieran que administras unas cuantas páginas pues ya significaría algo de tiempo ahorrad. El razonamiento de protección a continuación lo describimos, y es lógico: supongamos que para una versión específica se descubre un fallo de seguridad que permite exprimir datos de manera ilegal ¿qué harían los cibercriminales? Pues buscar de manera masiva cuáles son los portales que aún usan dicha versión exacta y es fácil hacerlo si lo exhibimos constantemente en cada entrada o sección. Si Google o Wayback Machine tuvieran un “captura” del sitio (un caché de datos) donde hayan grabado la versión por nosotros utilizada, pues mejor todavía porque cuando lleguen los atacantes ya habremos “parchado” y ellos perderán su tiempo inútilmente.

Conclusiones.

No debemos confiarnos en que por ser pequeño nuestro blog o quizás hasta aburrido (por si acaso nuestra afición fuera escribir sobre carreras de tortugas) para los ciberdelincuentes seguimos siendo apetecibles ya sea para usarnos como agente esclavo para atacar otras página web o distribuir publicidad basura, no debemos bajar la guardia y «Pandora FMS plugin WordPress» siempre estará allí ayudándonos las 24 horas del día, las 52 semanas al año de manera ininterrumpida.