Есть ли система, которая помогает выявить источник взлома (помимо стандартных логов)?
сверено с исходниками - все чисто
И в БД тоже? Я очень давно последний раз трогал MODx и на сколько помню там было в моде часть исходников хранить в БД.
Надеюсь вы проверяли исходники не вручную? (в смысле через diff в вашей VCS + в БД)Есть мысли вынести сайты на уровень выше корня, оставив только точку входа
Это первое, что нужно делать))Как вообще проводится поиск эксплойтов на сайте, если идей никаких нет?
0 - Если у вас в публичном каталоге не одна точка входа, а весь проект - вы уже себе в ногу выстрелили
1 - Ищутся CVE в багтрекере CMS
2 - Проверяются плагины, установленные в системе, они тоже могут содержать уязвимости
3 - Проверяется возможность загрузить и выполнить файл. Например на uploads (или как там каталог называется) права на запуск должны со всей силы отсутствовать
4 - Проверяются открытые порты сервера (если наружу торчит mysql, redis, memcached, ... - тогда сами себе злобный буратино)
5 - Ищутся все возможные точки с eval/include/require/include_once/require_once/exec/shell_exec/... для стороннего кода это потенциальная точка выполнения
6 - Ищутся возможные sql инъекции по коду cms/плагинов
7 - Ищутся всевозможные phpmyadmin и тому подобные сервисы, торчащие наружу
8 - Если в коде активно юзаются глобальные переменные - это потенциальная дыра в безопасности
9 - Если аргументы методов не проверяются - это тоже потенциальная дыра в безопасности
10 - Вам стоит убедиться и в том, что отсутствует утечка изнутри. На одном проекте случайно нашел залитый бывшими сотрудниками phpspy
Система такая есть - это Auditd. Но, кажется, тебе нужно выявить первопричину этих событий, index0h правильно расписал про поиск дыр. Сделать это можно как с помощью онлайн-сканеров безопасности вроде Pentest-tools, METASCAN, так и самому руками с помощью популярных утилит из того же Kali Linux. :)