Разобраться, как ломали сайт. Смотреть логи. Если сломано давно, включи логирование post запросов, возможно куков, хидеров, удали шеллы, вставки, смотри в логах, как будут восстанавливать доступ. Проверь соседей (чмоды, load data local), возможно заливались через них. Если в скриптах сайта нет уязвимостей (первым делом смотри сторонние модули, самописные скрипты), то максимально закрутить чмоды, в каталогах на запись запретить выполнение php, везде запретить cgi, ssi. Желательно переписать работу с конфигом, чтобы учетка не читалась плайн-текстом, это может быть собственная функция шифровки-дешифровки, или zend и пр., или можно засунуть в архив phar. Ну и пароли (все: мускул, ftp, ssh, админка, управление хостингом) не должны быть брутабельны. Работать лучше через sftp, а не через ftp, чтобы не светить снифферу пароль. Можно поставить монитор изменений в скриптах сайта и в базе мускула. Если нет желания или квалификации разбираться, то два вариант - жесткие чмоды, без прав на запись на весь сайт и без прав чтения каталогов. - заказать аудит специалистам.