Cosas de Administradores

Error de Tareas por el archivo tcpdf.php

 
Imagen de Domingo Rodriguez
Error de Tareas por el archivo tcpdf.php
 

Saludos cordiales a todos los miembros de esta comunidad.

Hace aproximadamente dos meses, al intentar abrir una tarea de un curso, me sale el siguiente error:

Warning: require_once(/aulavirtual/lib/tcpdf/tcpdf.php): failed to open stream: No such file or directory in /aulavirtual/lib/pdflib.php on line 149

 

El error se debe a que el archivo "tcpdf.php" cambia de nombre por una razón que desconozco, este se renombra como "tcpdf.php.suspected".

Cuando entro al cpanel y restablezco el nombre del archivo, las tareas vuelven a abrir de manera normal y deja de aparecer ese error, pero unas horas más tarde o al día siguiente vuelve a suceder lo mismo. El archivo vuelve y cambia de nombre y vuelve a aparecer el mismo error cuando intento abrir una tarea.

 

Por favor, si alguien me puede explicar a qué se debe que este archivo se renombre automáticamente, y qué debo hacer para resolver este problema definitivamente.

Estoy utilizando la versión 2.8.3

 

Muchas gracias por anticipado.

 
Promedio de calificaciones:Útil (1)
Imagen de Fernando Acedo
Re: Error de Tareas por el archivo tcpdf.php
Desarrolladores de pluginsMoodlers de gran ayudaTesters

Debes tener un antivirus que detecta que ese archivo es sospechoso y lo renombra.

Has de averiguar que antivirus (posiblemente Clam) y añadir ese archivo en las excepciones.

Entonces comprobar que el archivo tenga el nombre correcto y ya no deberá fallar.

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Hola Fernando, muchísimas gracias.

He revisado en el apartado de seguridad de moodle, y la opción de antivirus está desactivada , a menos que moodle lo haga automáticamente aunque yo tenga esa opción desactivada.

Mi sospecha es que algún estudiante subió un archivo infectado en la entrega de una tarea. Pero ya he reiniciado todos los cursos, con lo cual se borran todas las tareas y supongo que también se borran todos los archivos subidos por los estudiantes en las tareas. Pensé que eso me iba a solucionar ese error.

También reemplacé ese archivo por otro de otra instalación de moddle en otro servidor, suponiendo que era ese archivo que estaba infectado, pero igual me sigue pasando lo mismo, lo cual me hace suponer que quizás es otro archivo que está infectado y me está afectando a ese.

No sé si luego de reiniciar el curso los archivos subidos por los estudiantes se quedan almacenados en algún lugar.



 
Promedio de calificaciones: -
Imagen de Fernando Acedo
Re: Error de Tareas por el archivo tcpdf.php
Desarrolladores de pluginsMoodlers de gran ayudaTesters

Cuando me refería a un antivirus no era a que estuviera activado en Moodle. Si ClamAV está activado en moodle, entonces solo se aplicará a los archivos de tareas (carga y descarga) y nunca a los archivos de sistema. Por lo tanto es irrelevante en el problema.

Es el servidor el que está ejecutando clamAV (u otro antivirus) y marcando ese archivo como infectado (falso positivo). Solo hay que ponerlo en las excepciones y ya dejara de fallar.

Revisa también la versión de las definiciones de ClamAv para que esté actualizado y no marque archivos de sistema como falsos positivos.

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Ahh ok, veré cómo puedo revisar eso.

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Hola Fernando,

Disculpa que te siga molestando. He revisado en el servidor y el antivirus no está instalado. De hecho hay una advertencia de que el antivirus ClamAV no está instalado.

Por favor si me tienes alguna sugerencia que me ayude a resolver ese error.

Estoy pensando instalar el antivirus en el servidor y luego hacer un escaneo. También he pensado que quizás actualizando el Moodle pueda quedar resuelto eso.


Tengo una copia de seguridad de unos meses atrás, dicha copia es del directorio de Moodle y del directorio de la base de datos: Si me puedes orientar por favor cómo debo proceder para restaurar esa copia de seguridad y reemplazar la carpeta completa de Moodle con todos sus archivos y sub-directorios.


 
Promedio de calificaciones: -
Imagen de Fernando Acedo
Re: Error de Tareas por el archivo tcpdf.php
Desarrolladores de pluginsMoodlers de gran ayudaTesters

Si no es ClamAv entonces puede ser otro sistema de protección el que está renombrando ese archivo porque cree que está infectado.

Debes revisar el servidor por si tiene algún sistema de protección añadido. 

De todas formas, revisa si ClamAv esta instalado utilizando este comando desde la consola:

$ freshclam -V

Lo que si está claro es que hay algun script que detecta que ese archivo es peligroso y lo renombra. Solo hay que encontrarlo y configurarlo o eliminarlo.

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Así es hermano, definitivamente hay un script que me está haciendo eso, y me será bien difícil dar con él. Lamentablemente al parecer no existe antecedente de este error en moodle para que alguien que haya tenido esa experiencia me oriente cómo solucionarlo.

En todo caso, quiero probar reemplazando el directorio completo de moodle con una copia de seguridad que tengo anterior a ese error, si puedes por favor orientarme como hacer eso de la mejor manera posible que no vaya a alterar la instalación y buen funcionamiento de la plataforma.

 
Promedio de calificaciones: -
Imagen de Fernando Acedo
Re: Error de Tareas por el archivo tcpdf.php
Desarrolladores de pluginsMoodlers de gran ayudaTesters

El problema no es de moodle y por eso no encontraras informacion en este foro.

Es una cuestion de administracion del servidor. El script que realiza dicho scan y renombra el archvo pueden ser varios. Asi que hay que buscar. Un  primer paso seria ejecutar:

$ crontab -l 
desde la consola para ver que tareas programadas se ejecutan en el servidor.

Ejecutar:
$ top
tambien puede ayudar


 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Perfecto, te agradezco mucho la colaboración, voy a dedicar un par de horas intensas a ver qué puedo encontrar.

Si encuentro la solución lo dejaré saber por aquí.

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Hola

Instalé en el servidor el antivirus ClamAv, hice un escaneo completo y no me detectó ningún virus ni archivo sospechoso.

Así que cualquier sugerencia de cómo resolver ese error definitivamente me la dejan saber por favor.

Voy a recordarles de nuevo cuál es el error que estoy teniendo, con las tareas de moodle:


=================================================================================

Hace aproximadamente dos meses, al intentar abrir una tarea de un curso, me sale el siguiente error:

Warning: require_once(/aulavirtual/lib/tcpdf/tcpdf.php): failed to open stream: No such file or directory in /aulavirtual/lib/pdflib.php on line 149

El error se debe a que el archivo "tcpdf.php" cambia de nombre por una razón que desconozco, este se renombra como "tcpdf.php.suspected".

Cuando entro al cpanel y restablezco el nombre del archivo, las tareas vuelven a abrir de manera normal y deja de aparecer ese error, pero unas horas más tarde o al día siguiente vuelve a suceder lo mismo. El archivo vuelve y cambia de nombre y vuelve a aparecer el mismo error cuando intento abrir una tarea.

==================================================================================
 
Promedio de calificaciones: -
Imagen de roberto mm
Re: Error de Tareas por el archivo tcpdf.php
Moodlers de gran ayuda

Hola. La cuestión es quién o qué está renombrando el archivo, quizá una actualización de la plataforma, dentro de la serie 2.8.x que utilizas pueda servir, en todo caso no va hacer ningún daño y es muy recomendable ya que la versión que tienes ahora mismo está obsoleta y podría ser vulnerable.

Un saludo. Roberto

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Hola Roberto, muchas gracias por la sugerencia.

Eso es lo que haré en principio, voy a llevar a cabo la actualización de la plataforma a ver que pasa.

Si eso no me soluciona el problema entonces intentaré ver si puedo encontrar una salida corriendo los comandos que me sugirió Fernando, solo que no tengo mucha esperanza por esa vía debido a que no tengo mucho conocimiento de Linux.

 Si por ahí tampoco encuentro luz, optaré por reemplazar el directorio de moodle por un backup que hice hace unos meses.

Si tampoco eso me da resultados entonces voy a recurrir al soporte técnico del proveedor del hosting.

He visto en las redes que ese mismo error les ha ocurrido a otros, pero en wordpress, y hasta ahora no he visto que alguien haya encontrado la solución. Solo he leído que se debe a un ataque de hackers.

 
Promedio de calificaciones: -
Imagen de Juan Daniel Burró Aláez
Re: Error de Tareas por el archivo tcpdf.php
 

Estoy en la misma situación.

La máquina física la administro yo (tengo acceso como root).

El fichero parece que está limpio:

# clamscan  -i public_html/lib/tcpdf/tcpdf.php 


----------- SCAN SUMMARY -----------

Known viruses: 5833595

Engine version: 0.99.2

Scanned directories: 0

Scanned files: 1

Infected files: 0

Data scanned: 2.36 MB

Data read: 0.86 MB (ratio 2.76:1)

Time: 11.143 sec (0 m 11 s)


De cualquier manera cada cierto tiempo aparece con el sufijo suspected y la entrega de archivos no funciona. He creado un script mediante crontab que se ejecuta cada minuto y si el archivo está renombrado a suspected, lo vuelve a poner normal.  Cada vez que lo cambia me deja trazas con la fecha, y no siguen ningún patrón (crontab):

# cat suspect.sh

#!/bin/bash

function renameLogs

{

    SITIO="xxxxxx/public_html/lib/tcpdf"

    if [ -f $SITIO/tcpdf.php.suspected ]; then 

    mv $SITIO/tcpdf.php.suspected $SITIO/tcpdf.php 

        echo "changed at $(date +%H:%M:%S-%d/%m/%y)" 

    fi

}

renameLogs


# cat suspect.log 

changed at 15:07:01-19/02/17

changed at 18:35:01-19/02/17

changed at 01:01:01-20/02/17

changed at 18:07:02-20/02/17

changed at 21:51:01-20/02/17

....


Alguna sugerencia?

 
Promedio de calificaciones: -
Imagen de Fernando Acedo
Re: Error de Tareas por el archivo tcpdf.php
Desarrolladores de pluginsMoodlers de gran ayudaTesters

Buscando en Google se puede comprobar que tcpdf.php muestra falsos positivos imagino que dependiendo de la version.

La opción más fácil es excluir ese archivo del scan:

 # clamscan -r -i --exclude=/path/to/tcpdf.php  

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Gracias Fernando,

Lo cierto es que he descubierto que no es solo ese archivo el que se está renombrando con esa extensión, también se están renombrando los siguientes archivos:

/install/lang/bg/admin.php.suspected

/install/lang/el/admin.php.suspected

/lib/pdflib.php.suspected

/lib/lessphp/Tree/Javascript.php.suspected

Una posible solución que encontré buscando en google fue, que se puede hacer una búsqueda para encontrar cuál archivo contiene instrucciones que incluyan en su código la palabra "suspected", y entonces borrar o reemplazar ese archivo. Pero a la verdad que ni siquiera sé cómo buscar en un directorio archivos .php que contengan en su interior algún texto en específico.

 
Promedio de calificaciones: -
Imagen de Fernando Acedo
Re: Error de Tareas por el archivo tcpdf.php
Desarrolladores de pluginsMoodlers de gran ayudaTesters

Por lo que comentas la pregunta seria, está la base de virus actualizada?

Hoy estuvimos revisando uno de los pocos sitios que administramos que utiliza ClamAv y no tiene ninguna incidencia con ese archivo.

Eliminar el archivo que protege al resto no es una buena idea. Es mucho mas simple la exclusión de los archivos que dan falso positivo y tener actualizado el archivo de base de virus..


 
Promedio de calificaciones: -
Imagen de Juan Daniel Burró Aláez
Re: Error de Tareas por el archivo tcpdf.php
 

Hola Fernando,

A mi me da el error en los mismos ficheros que dice Domingo, pero el único que he notado que afecta es el tcpdf.php, a la hora de configurar envíos de tareas.

Por lo que noto en mi registro ( horas a las que se ha cambia el nombre del fichero a .suspected):

changed at 15:07:01-19/02/17

changed at 18:35:01-19/02/17

changed at 01:01:01-20/02/17

changed at 18:07:02-20/02/17

changed at 21:51:01-20/02/17

changed at 05:03:01-21/02/17

changed at 08:05:01-21/02/17

changed at 15:28:01-21/02/17

changed at 18:09:01-21/02/17

changed at 01:56:01-22/02/17

changed at 08:08:01-22/02/17

changed at 08:09:01-22/02/17

changed at 15:28:01-22/02/17

changed at 18:05:01-22/02/17

changed at 08:02:01-23/02/17

El cambio parece que se ejecuta siempre a las mismas horas (crontab) y tiene que ver con el clamav (¿que a veces de positivos y otras no?).

He actualizado las firmas de clamav, para ver si es el motivo. Si sigue fallando quizá habría que subir los ficheros a la bbdd de clamav


 
Promedio de calificaciones: -
Imagen de Fernando Acedo
Re: Error de Tareas por el archivo tcpdf.php
Desarrolladores de pluginsMoodlers de gran ayudaTesters

Lo que haria es excluir el archivo de ClamAV. Es la opción más fácil y segura para el sistema.

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Gracias,

No estoy seguro si se trata de un falso positivo del antivirus, pues cuando me empezó a aparecer ese error no tenía el antivirus instalado, luego lo instalé e hice un escaneo del sitio completo y no me arrojó ninguna amenaza.

Necesito por favor saber en qué directorio se encuentra instalado el ClamAV, porque quiero configurarlo en moodle y para eso necesito la ruta del directorio donde está instalado el antivirus.

 
Promedio de calificaciones: -
Imagen de Domingo Rodriguez
Re: Error de Tareas por el archivo tcpdf.php
 

Hola Juan Daniel,

Muchas gracias por el aporte. He visto una alternativa temporal igual que esta, en verdad no he tenido tiempo para dedicar a resolver este problema y por lo tanto no he podido probar ningunas de las sugerencias que he recibido de ustedes.

Lo cierto es que pienso que haciendo una actualización se puede corregir, pero igualmente es complicado también hacer la actualización y me llevará tiempo por mi poca experiencia, y no dispongo ahora de mucho tiempo.

 

Por el momento o que he hecho es que todos los días renombro manualmente el archivo, pues durqante todo el día trabaja sin presentar el error.

 
Promedio de calificaciones: -
Imagen de Maigualida Rodríguez
Re: Error de Tareas por el archivo tcpdf.php
 

con esta información, fue que pude detectar el error de no poder ver las tareas... al igual que usted, pude solucionar con tan solo renombrar el archivo invocado que es tcpdf.php

Gracias

 
Promedio de calificaciones: -