Cómo evitar que WordPress cambie los permisos predeterminados de .htaccess a 444

28 abr 2015, 12:35:32
Vistas: 26.8K
Votos: 5

Instalé mi sitio web usando un instalador - fantastico para una instalación rápida.

Hace unos días, comencé a recibir un error extraño en el plugin w3tc y me pedía actualizar vía ftp como puedes ver abajo:

mensaje de error de w3tc

Descubrí que los permisos del archivo htaccess se han cambiado a 444

No importa cuántas veces intente cambiarlo manualmente, vuelve a 444 después de un tiempo (aproximadamente 30 segundos o si hago algo en el panel de administración de wp)

permisos establecidos en 444 :(

Durante un tiempo, puedo reescribir las reglas y luego el archivo vuelve a lo que ves abajo:

htaccess vuelve a esto

Tengo el hosting compartido de Hostgator.

¿Hay alguna manera de combatir este problema?

Edición: He intentado añadir los detalles de ftp a mi wp-config también. No ayudó

5
Comentarios

No creo que WordPress esté cambiando los permisos de ese archivo. ¿Le has preguntado a Hostgator si su configuración está haciendo eso? ¿Has probado desactivando todos los plugins y usando un tema por defecto?

cybmeta cybmeta
28 abr 2015 12:46:14

No hay problema, puedo intentarlo pero no llegaron a una resolución la última vez que hablé con ellos. Probaré desactivando todos los plugins

Anon Anon
28 abr 2015 12:48:54

Parece que WordPress está usando la función insert_with_markers() para crear el archivo .htaccess mediante @fopen( $filename, 'w' ) pero no veo ningún chmod() en ese archivo en el núcleo.

birgire birgire
28 abr 2015 12:49:04

¿Hay alguna manera de evitar que haga eso (automáticamente) sin deshabilitar el acceso de los plugins al archivo .htaccess?

Anon Anon
28 abr 2015 12:57:14

Parece que el problema está específicamente con los plugins de caché en este sitio. Deshabilité w3 total cache y habilité super cache, pero el problema volvió tan pronto como habilité mod_rewrite en super cache.

Anon Anon
10 may 2015 10:40:30
Todas las respuestas a la pregunta 2
0
11

Es probable que tu sitio haya sido hackeado. Mi sitio tuvo la infección Darkleech, que inyectó código malicioso en wp-includes/nav-menu.php, causando que .htaccess se restableciera a 444 en cada carga de página.

Te recomiendo instalar el plugin Sucuri y permitir que restaure los archivos que hayan sido corrompidos. Asumiendo que tu sitio fue hackeado, usa su pestaña Post-Hack para restablecer plugins, contraseñas y claves. También verifica que no se haya creado otro usuario administrador. Usa su pestaña Hardening para asegurar todo lo que puedas. También podrías instalar Wordfence para mayor seguridad.

Si realizas ajustes y el problema persiste, es probable que tengas una brecha a nivel de root en tu servidor, y entonces tendrás que trabajar con tu proveedor de hosting para intentar limpiar la infección.

16 jun 2015 01:08:10
3

@David, tienes razón sobre el archivo wp-includes/nav-menu.php. Lo encontré y lo eliminé allí, pero no ayudó.

Después de semanas de investigación, encontré esta publicación sobre eliminación de backdoors en WordPress, seguí los pasos y ¡voilá!, el problema se resolvió. También contacté a mi empresa de hosting y me ayudaron a reforzar la seguridad de mi WordPress.

Aquí están algunos de los pasos de la publicación que mencioné arriba que seguí para eliminar este backdoor:

  1. Pon tu sitio offline lo antes posible y cambia los permisos de la carpeta del sitio a 600
  2. Renombra la carpeta del sitio web (public_html o el nombre de tu dominio) a algo diferente y crea una carpeta nueva con el mismo nombre original. Coloca un archivo llamado .maintenance en esta carpeta. Esto pondrá tu sitio en modo mantenimiento. Puedes usar cualquier HTML que quieras en el archivo .maintenance.
  3. Descarga WordPress. Asegúrate de descargar la versión apropiada. Puedes encontrar la versión de esta instalación de WordPress viendo el número de versión en /readme.html (no se recomienda mantener este archivo).
  4. Elimina los siguientes directorios: wp-includes y wp-admin y reemplázalos con los directorios de una instalación fresca de WordPress. Esto limpiará los archivos principales. Es importante eliminar estas carpetas en lugar de mezclarlas, ya que una mezcla no eliminará los archivos que no son parte del núcleo de WordPress.

  5. En el directorio raíz, elimina todos los archivos excepto wp-config.php.

  6. Reemplaza estos con los archivos de la instalación recién descargada de WordPress.
  7. Vuelve a cambiar el nombre de tu directorio original a su nombre original.

Ahora uso un plugin de WordPress String Locator para revisar rápidamente mi instalación de WordPress en busca de las funciones maliciosas mencionadas en esta publicación.

También estoy usando Wordfence, Sucuri y Cloudflare para capas adicionales de seguridad.

Espero que esto ayude a alguien que enfrente un problema similar.

Recursos: http://oziti.com.au/case-study/wp-security-removing-wordpress-backdoor

16 jun 2015 09:28:54
Comentarios

Creo que todos esos pasos son cosas que Sucuri puede hacer por ti efectivamente con solo un clic.

David David
3 jul 2015 09:05:52

@David ¿y cómo harías eso si no puedes acceder al administrador de WP? :P

Rodrigo D'Agostino Rodrigo D'Agostino
18 dic 2020 19:08:34

@Rodrigo Ja, ¡si no puedes acceder al backend de WP, entonces tienes problemas más grandes en tu sitio que solo este problema!

David David
19 dic 2020 21:40:59