SEGURIDAD JOOMLA !

Mostrando 19 respuestas a los debates
  • Autor
    Entradas
    • #89543
      Anónimo
      Invitado

      Hola me gustaria saber algun tutorial o procedimiento para el tema de seguridad ya que he leido que instalar joomla por defecto no es seguro, creo que hay que modificar el archico php.ini y el configuration.php. para evitar ataques.
      alguien sabe que prodecimientos hacer para tener un joomla seguro y ademas para ocultar la administracion

      Gracias, espero que me ayuden

    • #89545
      redloModerador Foro
      Participante

      Para ocultar la administarcion tienes el Jsecure . Te paso la ultima version gratuita ya que ahora es de pago por subscripcion. [file name=plgSystemJSecure_1-20100427.zip size=4301]http://solojoomla.com/media/kunena/attachments/legacy/files/plgSystemJSecure_1-20100427.zip[/file]
      http://www.joomlaserviceprovider.com/component/ambrasubs/file/view/5/7.html

    • #89546
      Anónimo
      Invitado

      Gracias Redlo por el archivo, y con respecto a la primera parte de la misma pregunta de la seguridad, ojala me pudieras responder, gracias

    • #89553
      redloModerador Foro
      Participante

      http://solojoomla.com/seguridad-en-joomla.-repasamos-la-leccion.html redactado por un usuario de solojoomla . Añadire que la eleccion de un hosting es muy importante. Los permisos de carpetas chmod 755 y de archivos a 644, salvo configuration.php que deberiamos asignarle permisos chmod 444.

    • #89560
      Anónimo
      Invitado

      Saludos.

      En cuanto al plugin recomendado jsecure, lo he probado y parece que va muy bien. Es una traba más a quien quiera atacarnos y veo interesante su instalación en el sistema.

      En cuanto a lo de los permisos, solo dejamos con permiso de escritura las carpates que nos muestra en la configuración o ni tan siquiera esas. Porque entonces hay que estar cambiando constantemente los permisos cada vez que queramos subir un imagen o eliminarla, o instalar un componente o template.

      Si dejo desprotegidas las carpetas que me indica en la configuración, estoy metiendo la pata?

      Gracias

    • #89566
      Anónimo
      Invitado

      redlo escribió:

      http://solojoomla.com/seguridad-en-joomla.-repasamos-la-leccion.html redactado por un usuario de solojoomla . Añadire que la eleccion de un hosting es muy importante. Los permisos de carpetas chmod 755 y de archivos a 644, salvo configuration.php que deberiamos asignarle permisos chmod 444.

      Gracias Redlo

    • #89588
      Anónimo
      Invitado

      hola
      instale el plugin para proteger mi web, ahora tengo el problema que no puedo ingresar a la Administradion, en que carpeta o archivo debo configurar para entrar de nuevo. me sale esta nota The page you have requested could not be found. (404). Necesito ayuda. Gracias

    • #89589
      Anónimo
      Invitado

      Edbol, tienes que colocar http://www.tusitio.com/administrator como siempre, luego colocas el signo “?” y finalmente la password por defecto que viene o la que le colocaste

      entonces te queda asi:
      http://www.tusitio.com/administrator/?password
      y ahi puedes entrar

    • #89590
      Anónimo
      Invitado

      En que archivo o carpeta debo colocar la direccion de mi sitio, no encuentro el archivo donde configurarlo.

    • #89591
      Anónimo
      Invitado

      coloca arriba en el navegador en la url lo siuiente:

      http://www.elmonredetusitio.com/administrator/?jSecure

      nota:donde dice “elnombredetusitio” obviamente le pones el nombre de tu sitio

    • #93481
      Anónimo
      Invitado

      En este post quiero comentar sobre los tipos de ataques màs comunes al cms joomla, por el momento solo voy a mencionarlos.

      ataques de contraseña
      inyeccion SQL:
      -campos de texto sin filtrar
      -procesar campo de texto en joomla y php
      -campos sin tipo
      solicitudes personalizadas: AJAX
      secuencias de comandos entre sitios (XSS)
      analisis de directorios
      ataque de negacion de servicios (DoS)
      husmeadores HTTP

      Campos de texto sin filtrar:
      un formulario puede aceptar un campo para un nombre. mientras un usuario introduciría un nombre sencillo en el campo, el atacante inyecta codigo SQL en la instrucción para modificar la ejecución de la consulta. si el codigo PHP de la consulta añadiera el nombre introducido en la variable $name y realizara la consulta, el codigo de la cadena de consulta sería similar al siguiente:

      $sql = “select * From y6z4i_users where name = ” . $name . “;”;
      el atacante solo tendria que introducir el siguiente apellido.
      dummytext ‘ or’ a’ = ‘a
      el codigo SQL generado a partir de ese valor seria el siguiente:

      select * from jos-users where name ‘dummytext’ or ‘a’ = ‘a’;
      Al ejecutar la consulta, la prueba ‘a’ =’a’ devolvera un valor true para todas las filas y la consulta devolveria la lista de usuarios completa. lo peor es que se puede introducir codigo SQL valido, como a continuacion:

      dummytext’;drop table y6z4i_users; select *from y6z4i_polls where title=’

      Este codigo destruiría por completo la tabla de usuarios de joomla. si se enviara el texto del formulario a traves de una rutina de procesamiento se eliminaría el peligro de que sucedieran este tipo de ataques.

    • #93484
      redloModerador Foro
      Participante

      Gracias, son colaboraciones utiles.

    • #99384
      pequeno74pequeno74
      Participante

      [quote=”redlo” post=11098]http://solojoomla.com/seguridad-en-joomla.-repasamos-la-leccion.html redactado por un usuario de solojoomla . Añadire que la eleccion de un hosting es muy importante. Los permisos de carpetas chmod 755 y de archivos a 644, salvo configuration.php que deberiamos asignarle permisos chmod 444.[/quote]

      Hola redlo, hace tiempo que no estoy por aquí.

      Ese artículo (que lo has adaptado muy bien) lo puse yo en los inicios de esta web ¿recuerdas?. Siento no poder ayudar más, pero como ahora voy a preparar algo sobre seguridad para los chicos de TheFullSite, pues lo pongo aquí tambien y listo.
      Serán varias cosas que con el tiempo voy aplicando a Joomla, nada de otro mundo, pero a alguien podrá ayudarle.

      Enhorabuena por la web que veo que ha cercido espectacularmente.

      Un abrazo.

    • #99387
      redloModerador Foro
      Participante

      Hombre !!! ¿que pasa? jejeje. Me parece muy bien, cuando quieras. Ahora mismo estoy muy liado con http://www.joomlapacks.com ajustando todo el tema de los micro pagos por SMS y Paypal. Me alegro de ver que sigues en la brecha. 😉

    • #99413
      pequeno74pequeno74
      Participante

      [quote=”redlo” post=20539]Hombre !!! ¿que pasa? jejeje. Me parece muy bien, cuando quieras. Ahora mismo estoy muy liado con http://www.joomlapacks.com ajustando todo el tema de los micro pagos por SMS y Paypal. Me alegro de ver que sigues en la brecha. ;)[/quote]

      Hola redlo, he actualizado el documento al que haces referencia. Lo pongo aquí a ver que te parece.

      Hagamos nuestro Joomla seguro.

      No hay fórmulas mágicas ni fáciles. Todo se basa en tiempo y pequeñas actuaciones que sumando, pueden hacer de nuestro Joomla más seguro, pero no invulnerable.

      Los “trucos” aquí mostrados dependerán por supuesto del servidor que tengais (sea compartido, dedicado.,..) y del acceso al mismo para configurarlo.

      Lo básico es usar solo lo imprescindible y con la configuración más restrictiva, aunque eso implique que en ciertos momentos tengamos que probnar si algunos componentes funcionan, o haya que desactivar algo en momentos puntuales. Se que es algo latoso, pero si queremos seguridad es lo que hay.

      No soy informático, sinó un usuario “amateur” de Joomla, que a lo largo de los años, he aprendido ciertas lecciones aplicar, y me gustaría compartirlas.

      Empecemos:

      1.- Permisos de las carpetas: de todos es sabido no dejar las carpetas con permisos (CHMOD) que puedan dar entrada a ataques (por ejemplo un CHMOD 777). En este caso solo quiero concretar una cosa, y es el hecho de una vez modificado el permiso para que un componente pueda ejecutarse, probar luego a volver a los permisos seguros (por ejemplo un CHMOD 644). En ocasiones muchos programas se ejecutan con permisos seguros aunque nos den aviso de que hay que ponerlos en 777. Es decir, tenemos que dedicar tiempo a repasar permisos, poner todos seguros y luego poco a poco si vemos que el programa no funciona ir probando con otros permisos. Ensayo y error amigos!
      Aviso: no os olvideis de la carpeta raiz (“httpdocs” o “public_html”)

      2.- Acceso desde el front-end (por ejemplo galerías de imágenes y subida de documentos): si no es estrictamente necesario no lo hagas. Si tienes tiempo, una web puede subsistir si tu subes los documentos y las imágenes de las Galerías o los componentes de descarga. Evita habilitar la subida desde el frontend a usuarios registrados (y menos a usuarios públicos). Si lo haces, estás dejando una puerta abierta a código malicioso; y no lo digo que lo hagan tus usuarios, pero si ya hay un lugar en donde cualquier experimetado puede acceder Y si decides dejar esa “puerta abierta” procura restringir concienzudamente el tipo de archivos que vas permitir subir.

      3.- Configuración htaccess: htaccess es una potente herramienta (tienes miles de tutoriales en la red). Debes tener un htaccess configurado con los parámetros que trae Joomla, y luego añadir los tuyos propios. Usa nuevamente Google para ver como utilizar este documento a nivel de seguridad. Te muestro texto básico que debes añadir al inicio del htaccess aparte de, como dije, lo que trae Joomla por defecto (en su htaccess de ejemplo).

      Algunas de las cosas imprescindibles en un htaccess son:

      a) Para evitar que enlacen con tus archivos donde pone site.com debes poner su web, y tantas lineas como webs quieras dar acceso a tus archivos:
      #Hotlink
      RewriteCond %{HTTP_REFERER} !^$
      RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?site.com [NC]
      RewriteCond %{HTTP_REFERER} !^http(s)?://(www.)?otarweb.com [NC]
      .*.(jpg|jpeg|png|gif|pdf|zip|rar|mov|mp3|doc|pdf|bmp|swf|flv|wmv)$ - [NC,F,L]

      b)Para evitar ataques mediante ejecución de XML
      ## Deny access to extension xml files (uncomment out to activate)

      Order allow,deny
      Deny from all
      Satisfy all

      Si esto te da problemas con XML de tu web que necesitan ejecutarse, puedes permitirlo mediante:

      Allow from all
      Satisfy all

      Si queremos limitar el acceso a ciertos “sistemas” (como correos temporales) sospechosos lo hacemos tal como se comenta en este artículo: http://solojoomla.com/utilizar-el-archivo-.htaccess-en-joomla.html

      Muchos componentes admiten su propio htaccess (por ejemplo las Galerías de Imágenes y los gestores de descarga). Si es así, crea el htaccess para cada componente dentro de su carpeta.

      htaccess es todo un mundo, os recomiendo buscar y probar con él las diferentes opciones.

      4.- Modulos o componentes que no uses: todo aquello que no uses elimínalo, aunque lo tengas deshabilitado y no se puede ver en el frontend, un atacante experimentado puede comprobar si tienes un componente y aprovechar sus bugs aunque esté desactivado. Ten en tu servidor solo aquello que estés usando. Y además así ahorrarás espacio.
      Si no necesitas un componente imprescindiblemente, no lo uses. Cuantos más componentes y plugins, mas código y más posibilidades de que encuentren un lugar débil para atacar.

      5.- Templates: elimina las plantillas que no uses.

      6.- Sistemas de seguridad de terceros: yo personalmente NO. Me refiero a esos componentes (la mayoría de pago) que nos aseguran protegernos contra ataques.
      A ver, su función pueden hacerla mejor o peor pero mi opinión es que consumen muchos recursos y ralentizan la página. Suelen usar tablas muy grandes en las Bases de Datos para guardar IPs sospechosas. Esas IPs además deben actualizarse y lo que es peor… a veces nos dan errores inesperados o restringen el sitio a gente “normal”. Ya sabemos que eso de las IP asociadas a ciertos usuarios es muy relativo. Muchos además ejecutan en segundo plano scripts que pueden ralentizar e incluso bloquear el propio Joomla. O hacen consultas interminables a la Base de datos, provocando lo mismo que comentamos antes.

      6.- Protege el acceso a backend. Por ejemplo mediante una contraseña en tu servidor. En este caso debes estar usando Plesk o CPanel (paneles de control de los servidores) y pones una contraseña para el acceso a esa carpeta (tu dominio/administrator). Es un paso más que un intruso debe pasar. Ah! y no le pongas el mismo usuario y contraseña que tu acceso al backend.
      Tambien puedes protegerlo mediante un .httpassword

      7. Base de datos. No pongas el prefijo por defecto a la base de datos (que es y6z4i_) cámbialo cuando hagas la instalación.
      Relacionado con este punto, siempre que instales un componente que requiera instalar tablas nuevas o una base de datos, hazlo en Bases de Datos independientes si es posible.
      No uses la Base de Datos de Joomla para todo.

      8. Index.php No dejes carpetas sin index.php, así se evitará que se pueda acceder al listado de los archivos de una carpeta. Esto se puede controlar también desde el htaccess para evitar mostrar el listado de un directorio.

      9.- configuration.php
      Este archivo debe estra bien protegido. Mueve el archivo fuera de la carpeta raiz (httpdocs o public_html). Así el acceso al mismo será complicado. Por ejemplo si tu directorio es /home/user/www/public_html, puedes mover el archivo configuration.php a /home/user/www.
      Ahora, donde estba el antiguo, creamos un nuevo archivo configuration.php con el siguiente contenido .
      Muy atentos de no incluir espacios antes ni después de los tags php porque nos reportaría un error del tipo “headers already sent…”. Este archivo no puede ser escrito para evitar ser sobreescrito por com_config. Si deseamos hacer modificaciones en el archivo de configuración real las realizamos a mano.

      10. robots.txt
      Mediante este archivo, limita la indexación de carpetas y archivos que consideres importantes, por ejemplo si tiene documentos que no quieres que Google indexe, o si tienes componentes que dan acceso al front-end. Ficheros y directorios importantes mejor que no se indexen.
      Joomla trae por defecto este archivo. Infórmate al respecto y adáptalo a tus necesidades.

      11. Uso descontrolado. No permitas el uso “descontrolado de componentes”. Por ejemplo, si permites subidas de archivos (no recomendable, ya sabes) procura usar componentes que te permitan limitar el tamaño de los mismos y el tiempo de subida entre cada uno (antiflood suele llamarse). Así evitaremos subidas o consultas automatizadas. Configura el antiflood para al menos 60 segundos.
      Lo mismo en el foro. Kunena (muy utilizado en Joomla) permite aplicar el antiflood para la publicación de mensjaes. Ponlo a 60 segundos.

      12. Crear un nuevo Super Admin.
      Joomla asigna al admin el ID 62. Para cambiárselo, creamos un nuevo Super Administrador, y accediendo con el nuevo, al antiguio lo ponemos como Admin y luego ya podemos eliminarlo. Ahora tenemos nuestro Super Admin con otra ID. Si eres mañoso, esto también puedes hacerlo cambiando la ID con phpMyAdmin.

      13. Usuarios:
      Utiliza sistemas CAPTCHA en todas las secciones que puedas (sobre todo en el registro). No permitas participación pública, sinó siempre mediante registro.
      Revisa los usuarios registardos y observa que no aparecen repetidos o con nombres y correos sopechosos. Aquellos usuarios que aún no se han activado, elimínalos periódicamente.

      14. Administración:Hay que evitar el acceso a la administración. Mediante contraseña en el servidor como digimos anteriormente, o también se puede cambiar el nombre de la carpeta “administrator”. Pero CUIDADO, esto requiere muchos cambios y puede ser complicado. Es una buena medida pero infórmate antes de aplicarla o dejarás el acceso al back-end inhabilitado.

      15.- La configuración de Joomla.
      En las opciones de configuración de Joomla podemos hacer lo siguiente, siempre y cuando os sea posible:

      Configuración Global > Sistema > Parámetros del Usuario:
      Activación de cuenta para Nuevos Usuarios > SI
      Parámetros para los Usuarios de la Portada > NO

      Configuración Global > Sistema > Configuración Multimedia:
      Extensiones permitidas: Solo las imprescindibles> odt, csv, xcf, y muchas otras no sules utilizarlas. ELIMINALAS.
      Ruta del directorio de archivo & Ruta del directorio de imágenes> CAMBIALOS… pon nuevas rutas.
      Subidas restringidas > SI
      Tipos de MIME Permitidos > Igual que las extensiones permitidas.
      Habilitar la subida de Flash > NO

      Configuración Global > Sistema > Parámetros de Depuraciónd errores:
      NO en las dos opciones

      Configuración Global > Servidor > Configuración del Servidor:
      Ruta directorio Temporal > Cambiarla.
      Comprwsión GZIP > NO
      Informe de errores > NADA

      Configuración Global > Servidor > Parámetros FTP:
      Habilitar FTP> NO

      Cuando nos haga falta accedemos y lo habilitamos temporalmente.

      16.- La configuración de Componentes. En aquellos componentes que ofrezcan la posibilidad de configurar su seguridad, utilizar las opciones más restrictivas y comprobar si funcionan. Crear htaccess en todos los componentes que os los permitan.
      Los componentes que creen carpetas para almacenar archivos, modificar esas carpetas. Por ejemplo, las Galería de Imágenes y los gestores de descargas suelen crear una carpeta para almacenar los ficheros. Cambiar la ubicación de la misma.
      Usa componentes que estén bien integrados en Joomla. Vistiva Joomla Extensions y ahí verás aquellos que según su popularidad están más utilizados. Por ejemplo, si quieres un foro, Kunena se integra perfectamente.

      17.- Cosas evidentes:

      • Tener siempre actualizado Joomla y los componentes.
      • Utilizar contraseñas seguras con letras, números, mayúsculas y minúsculas. Guardarlas en lugar seguro y cambiarlas cada determinado tiempo.
      • Instalar componentes de los lugares oficiales del desarrollador, o de lugares que os inspiren confianza (comprobar antes el soporte que ofrecen, como e sla web en donde ofrecen el componente…)
      • Eliminar ficheros de instalación y ejemplos.

      18. El servidor:

      • Utilice lasultimas versiones de PHP, MySQL y en general todos los componentes de su servidor.
      • Deshabilite el PING a su servidor.
      • Si teien instalados sistemas de Bases de Datos que no usa, por ejemplo PostreSQL etc… deshabilitelo. Todo lo que no use deshabilítelo.
      • Configurar PHP correctamente. Debes tener tu Servidor configurado correctamente (si tienes acceso al archivo php.ini lo tienes fácil, pero htaccess también te permite configurar algunos parámetros):
      • Deshabilitar register_globals
      • Deshabilitar safe_mode
      • Comprobar allow_url_fopen, lo mejor es que no se permita abrir ficheros remotos a un script.
      • Comprobar allow_url_include, esta opción permite incluir ficheros php remotos, y ser ejecutados, en un script. Lo mejor es inhabilitarla.
      • Utilizar disable_functions para deshabilitar algunas funciones que pudieran dejar tu sitio vulnerable. Algunas de estas funciones son: system, shell_exec, exec, phpinfo, etc
      • Utilizar open_basedir para definir las rutas desde donde PHP tiene permiso para acceder a ficheros mediante funciones como fopen() o gzopen(). Si algún fichero esta fuera de las rutas incluidas en open_basdir, PHP no permitirá abrirlos.

      RESUMEN:
      · register_globals = Off
      · display_errors = Off
      · log_errors = On
      · allow_url_fopen = Off
      · allow_url_include = Off
      · expose_php = Off

      • Si es posible no use un servidor compartido. Si usa un servidor compartido, trat de ser malo y ver algo de otros usuarios. Si puedes ver por ejemplo las bases de datos de otros usuarios, pues a ti te está pasando lo mismo.
      • En http://www.cuwhois.com puedes ver las webs que comparten el servidor contigo, por si crees que alguna puede ser perjudicial.
      • Logs: revisa los logs del servidor, puede que nos den pistas de si nos han intentado atacar.
      • Utiliza el Firewall del servidor. Deja solo abiertos los puesrtos imprescindibles

      19. Herramientas online:
      Existen multitud de herramientas que analizan webs de manera gartuíta para averiguiar vulnerabilidades o si tienen virus. Puede que no sean muy fiables pero no está de más pasarle alguna a ver que resultados obtenemos.

      20. Antivirus:
      Un buen antivirus puedes pasárselo a los componentes antes de instalarlo.

      21. Compartir:
      Cualquier problema o idea que tengas, debes compartirlo en la Comunidad Joomla. Es la mejor manera de evitar ataques y vilnerabilidades.

      22. Despues de un ataque:
      NO TE FIES. Aunque localices los archivos implicados, haz una instalación limpia de Joomla. BORRA todo y vuelve a empezar, y vuelve a descargar todos los componentes de sus sitios oficiales. Te ha pasado, ahora te va a llevar tiempo empezar de nuevo pero no hay alternativa ¿no querras que te vuelva a suceder verdad?

      23. Errores más frecuentes:

      • No preocuparse de Joomla. Lo instalo, funciona y ya está.
      • No dedicarle unos minutos cada día a revisar que todo funciona bien. Que los permisos son los correctos, etc…
      • Confiar en cualquier componente. Lo buscamos, lo descargamos y lo instalamos.
      • No tener el sitio web “limpio”
      • No comprobar que un componente se ha desinstalado correctamente.
      • Buscar la comodidad. Mejor hacerlo fácil, porque “nunca me vapasar a mi, no quiero complicarme”
      • No hacer copias de seguridad
      • Usar contraseñas repetidas en diferentes apartados o utilizar siempre el usuario “admin” para el Administrador.
    • #99415
      redloModerador Foro
      Participante

      Eres Autor, publica esto en un articulo nuevo y llamalo asi, como el titulo de este post, Seguridad Joomla!

    • #99427
      Anónimo
      Invitado

      excelente!!!!

    • #103251
      Anónimo
      Invitado

      gracias

    • #103253
      Anónimo
      Invitado

      Gracias pequño 74 por toda la informacion que nos brindaste la cual titulaste SEGURIDAD JOOMLA !.

    • #113619
      feliperguezafelipergueza
      Participante

      Una vez que un sitio ha sido vulnerado o hackeado hay alguna manera de saber exactamente por donde se origino el problema.

Mostrando 19 respuestas a los debates
  • Debes estar registrado para responder a este debate.
Esta web utiliza cookies propias y de terceros para su correcto funcionamiento y para fines analíticos y para mostrarte publicidad relacionada con sus preferencias en base a un perfil elaborado a partir de tus hábitos de navegación. Contiene enlaces a sitios web de terceros con políticas de privacidad ajenas que podrás aceptar o no cuando accedas a ellos. Al hacer clic en el botón Aceptar, acepta el uso de estas tecnologías y el procesamiento de tus datos para estos propósitos. Ver
Privacidad