Primero que nada, te recomiendo quitarle los permisos a tus archivos php de escritura, lo más seguro es que si hackearon hayan subido un archivo php que genera una interfaz gráfica que deja manipular tus archivos del servidor [Se llama phpshell, la más común es la c99 y la r57]. Ahora bien, con respecto al sitio... te daré algunos tips que son la forma más común con al que son hackeadas las webs y luego, algo un poco más avanzado para que testees tu sitio, de todos modos te guio y testeo si quieres.
1.- Backups online: nunca dejar archivos .sql o zip, o directorios desprotegidos en tu sitio que pueda indexear google
La explicación es simple, supongamos que tienes una imagen en /files/ y google sigue esa imagen, viene el hacker y elimina la url de la imagen y llega directo al directorio desprotegido, se enlistaran todos los archivos y justo ahi tenias tus backups o archivos sensibles
2.- No usar contraseñas iguales en todos tus sitios. La mayoría de los hacks vienen por administradores de otros sitios que se aprovechan de otros que usan la misma password.
3.- Actualizar joomla
4.- Actualizar componentes
Ahora bien, algo un poquito más avanzado y que casi nadie hace es testear tu sitio...
¿Tienes cuentas anonimas activadas? ¿Has analizado tu sitio con alguna herramienta de testing?
Te adjunto un link para que lo soluciones si te defacearon desde un componente/plugin
Enlace eliminado
Solo compilalo en perl y sigue las instrucciones, cualquier duda por MP y sin tener vergüenza, saludos y espero haberte iluminado un poco.