Antimalware hosting: 34 detecciones (backdoors, webshells, js_malware) — plan limpieza #66
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Labels: area:infra, area:joomla, bug:critical, security
Hallazgo
El hosting tiene un escáner antimalware activo (
/logs/antimalware.log, ~48 MB) que ha reportado 34 detecciones únicas en/home/feadulta.com/web/. La detección original es del 2026-05-25 22:41 (escaneoliveruncompleto) y desde entonces el watcher sigue activo para ficheros modificados.Esto va más allá de lo cubierto en #46 y #48. El escáner del hosting encontró backdoors y webshells que nuestro barrido manual no detectó (búsqueda por nombre, hash diff contra baseline local infectada, etc).
Detecciones por categoría
SMART (alta confianza, score >0.9) — 8 detecciones, todas siguen en
/web/administrator/components/com_aimysitemap/HttpClient.phpadministrator/components/com_aimysitemap/IndexNow.phpadministrator/components/com_aimysitemap/controllers/url.phpadministrator/components/com_aimysitemap/controllers/urls.phpadministrator/components/com_aimysitemap/controllers/robotstxt.phpplugins/system/bfnetwork/bfnetwork/bfAuditor.phpplugins/system/securitycheckpro/securitycheckpro.phpmedia/com_rsform/js/jquerycalendar/jquery.datetimepicker.jsDETECTION (firmas / patrones) — vivos en
/web/administrator/components/com_securitycheckpro/library/model.phpadministrator/components/com_joomlaupdate/restore.phpplugins/system/bfnetwork/bfnetwork/bfRestore.phpmodules/mod_stats/tmp.phpanterior/Ev-JE_107-A_28-14.htmtemplates/fe_adulta_1/index.phpadministrator/components/com_akeeba/Master/Installers/kickstart.txtadministrator/components/com_akeeba/backup/akeeba.backend.id-20221220-*.log.php(2)DETECTION — ya no existen en
/web/Alguien (¿escáner automático del hosting?) los borró antes de hoy:
administrator/components/com_users/views/mail/circle.phpadministrator/components/com_k2/lib/elfinder/elFinderConnector.class.phpcomponents/com_media/index.phplibraries/fof30/TransparentAuthentication/weight.phpmodules/mod_footer/classinfo.phpmodules/mod_k2_tools/gnom.phpmodules/mod_k2_user/tmpl/receive.phpnewsletter/_install.phpnewsletter/includes/functions.phpmedia/k2/assets/vendors/studio-42/elfinder/php/elFinderConnector.class.phpmedia/k2/assets/vendors/studio-42/elfinder.1/php/elFinderConnector.class.phpmedia/k2/assets/vendors/studio-42/elfinder/php/elFinderVolumeFTP.class.phpmedia/k2/assets/vendors/studio-42/elfinder.1/php/elFinderVolumeFTP.class.phpTmp (volátiles)
/usr/home/feadulta.com/tmp/php3oGlnp— ya no existe/usr/home/feadulta.com/tmp/phpnPf3rp— ya no existe/usr/home/feadulta.com/tmp/ssess_d45d182b50f80a5a9b73503603ffb552— sigue (78 bytes, contenido aparentemente legítimo de sesión Joomla__options/key). Posible falso positivo o sesión asociada al malware activo previo.Por qué nuestro barrido del #46 no los pilló
c99,r57,wso, etc) no cubrían disfraces comoHttpClient.php,IndexNow.php(que parecen ficheros legítimos de un componente sitemap).eval(base64_decode)clásicos no estaban presentes; las webshells modernas usan ofuscación distinta.Plan de remediación (a planificar en otra sesión)
Fase A — backup completo nuevo
Antes de tocar nada, otro tar/SQL completo. El
feadulta-web-20260525.tar.gzdel #35 ya está, pero conviene capturar el estado actual con #46 y #48 aplicados.Fase B — extensiones completas a eliminar (no parchar)
Las que están claramente comprometidas o son riesgo de acceso remoto:
com_aimysitemapcompleto (5 detecciones SMART + parece componente sospechoso o ya comprometido).plugins/system/bfnetworkcompleto (2 detecciones SMART + DETECTION; aunque era legítimo de mySites.guru, da acceso remoto y ya estaba ahí cuando se infectó).plugins/system/securitycheckpro+administrator/components/com_securitycheckpro(3 detecciones; irónicamente el plugin de seguridad parece infectado o reemplazado).Desinstalar desde admin Joomla o eliminar manualmente del filesystem.
Fase C — ficheros sueltos a limpiar/eliminar
modules/mod_stats/tmp.php(170 bytes — sospechoso, mod_stats no debería tenertmp.php). Backup + revisar contenido + eliminar.anterior/Ev-JE_107-A_28-14.htm(36K, parece estático antiguo pero detectado como malware; revisar).administrator/components/com_joomlaupdate/restore.php(129K — el script de restore de Joomla updater; puede estar reemplazado por una versión maliciosa).media/com_rsform/js/jquerycalendar/jquery.datetimepicker.js(js_malware, 81K; reemplazar por el original del repoxdsoft/datetimepicker).administrator/components/com_akeeba/Master/Installers/kickstart.txt(probablemente plantilla de kickstart con código demo; revisar).administrator/components/com_akeeba/backup/akeeba.backend.id-20221220-*.log.php(2 ficheros .log.php — pueden contener payload o ser logs reales con código que el escáner marca)./tmp/ssess_d45d182b50f80a5a9b73503603ffb552(la otra sesión que vimos ayer; eliminar por precaución).Fase D — barrido contra Joomla 3.10.11 oficial
Descargar tar oficial de Joomla y comparar TODO el core. Esto era ya la Fase 2 propuesta en #48.
Fase E — endurecimiento
/web/libraries/,/web/plugins/,/web/components/debería ser escribible por el proceso PHP-FPM en modo normal.Relación
event.phpdocumentado en #48 NO aparece en este log antimalware (falso negativo del escáner del hosting). Conclusión: ni nuestro barrido manual ni el escáner del hosting son completos por sí solos. Hace falta combinar varios métodos.Prioridad
Alta. Hay webshells y backdoors con score >0.9 que el hosting confirma. Aunque la web sirve OK ahora, son vías de re-infección o exfiltración activas. Cerrarlas antes del cutover DNS a WordPress.