Al ser WordPress un CMS que ha crecido muy rápido y que es altamente usado por todos se ha convertido en el punto de mira de multitud de vulnerabilidades y ataques.
Si bien hay que tenerlo siempre actualizado (también los plugins) los templates o themes no suelen estar, normalmente, a la ultima ya que quien los hace, una vez «dibujados» se olvida de ellos. Ya sabéis, nuestra eterna lucha contra el soporte, esa cosa que nadie contrata y otros nunca dan.
Por eso, estamos recomendando a todos nuestros usuarios que pongan en sus alojamientos dentro de la carpeta /wp-content/uploads el siguiente fichero .htaccess:
[code]
Deny from all
[/code]
Si tu versión de Apache es moderna, puedes poner lo siguiente:
[code]
Require all deny
[/code]
Para los que tengáis interés, la forma de realizar una inyección de código en estos sitios es el usar el método de upload de ficheros que el WordPress tiene (que no necesita identificación), subiendo un fichero .php en el equipo. De esta forma, solo tendrán que llamarle (ya que «conocen la ruta» si es una instalación estándar) para que el usuario sobre el que corra Apache tenga todas las papeletas de poder hacer lo que quiera con el resto de ficheros que pueda leer o ejecutar (o grabar), por ejemplo, todo vuestro sitio WordPress. Si bien es claro que restringiendo permisos (de escritura) esto se puede minimizar, todos sabemos que se nos puede ir la mano u olvidarse o cambiarlos si necesitamos que WordPress realice las actualizaciones automáticas. Por esta razón, un buen .htaccess lo deja todo «niquelado».
visto y echo! una chica más contenta y segura, porcierto, a veces tengo un error 500 internal server parece ser, como consigo arreglarlo? no suele ser siempre pero si de vez en cuando, agradecería la ayuda o consejos, saludos.
Puedes ver los logs de la maquina (si tienes acceso, claro) para ver cual es el error cuando eso suceda. Puede ser por multitud de cosas.