Вопрос или проблема
У меня есть бесплатный веб-сервер infinityfree.net, который был уязвим к CVE-2017-12419 в течение довольно длительного времени.
После исправления уязвимости и смены паролей, какие есть способы обнаружить, было ли вторжение на сервер?
Правда ли, что уязвимость позволяет только читать данные? Можно ли все еще доверять журналам аудита?
Похоже, что метрика “Целостность” в CVSS равна “N” для None:
AV:N/AC:L/Au:S/C:P/I:N/A:N
http://cve.circl.lu/cve/CVE-2017-12419
Хотя эта уязвимость предоставляет доступ только для чтения, неясно, какие удаленные файлы доступны. По крайней мере, любые пароли, хранящиеся в PHP-файлах, вероятно, скомпрометированы.
Под Linux вам нужно будет проверить, какой пользователь выполняет PHP от имени веб-сервера, и какие права у этого пользователя.
Доказательство концепции в отчете об уязвимости пытается прочитать /etc/passwd
, что является общим способом проверки доступа root.
https://www.mantisbt.org/bugs/view.php?id=23173
Неясно, можно ли доверять журналам сервера, если доступ root был возможен.
Ответ или решение
Вопрос о том, как обнаружить вторжение в систему, подверженную уязвимости CVE-2017-12419, является серьезной проблемой в области кибербезопасности. Учитывая, что уязвимость подразумевает возможность только для чтения данных, это не исключает возможность компрометации важных файлов и систем данных. Вот несколько шагов и рекомендаций для мониторинга и оценки потенциального вторжения на ваш сервер:
1. Анализ логов сервера
Одним из первых шагов в выявлении возможного вторжения является тщательное изучение логов. Однако, как вы правильно заметили, если злоумышленник мог получить доступ к системе с правами, которые имеют доступ к логам, их достоверность может быть поставлена под сомнение.
Рекомендации:
- Проверьте логи доступа (access logs) веб-сервера на предмет подозрительной активности, такой как частые запросы к определенным ресурсам, особенно если они связаны с уязвимостью.
- Изучите ошибки (error logs) сервера на наличие аномальных сообщений, которые могли бы указывать на попытки эксплойта.
2. Проверка целостности файлов
Отсутствие информации о целостности данных (Integrity) в CVSS может указывать на то, что более уязвимые файлы могли быть изменены или скомпрометированы злоумышленниками.
Рекомендации:
- Используйте инструменты для проверки целостности файлов, такие как Tripwire или AIDE, чтобы выявить изменения в файлах.
- Проверьте на наличие подозрительных файлов или изменений в конфигурационных файлах, особенно в тех, которые содержат пароли или секретные данные.
3. Мониторинг активности пользователей
Поскольку злоумышленники могут работать под легитимными учетными записями, крайне важно следить за действиями всех пользователей.
Рекомендации:
- Настройте аудит действий пользователей (user activity auditing) на сервере и внимательно изучайте возможные аномалии, такие как доступ к файловым системам и конфигурации.
- Обратите внимание на необычные временные метки (например, доступ в нерабочее время).
4. Проверка наличия несанкционированных скриптов и программ
Не обновленная система может содержать вредоносные скрипты, установленные злоумышленниками.
Рекомендации:
- Используйте антивирусные и антишпионские программы для сканирования на наличие вредоносного ПО.
- Проверьте директории веб-сервера на наличие файлов с нехарактерными для вашего проекта именами.
5. Оценка конфигураций и прав доступа
После исправления уязвимости важно определить, кто и какие права имеет на сервере.
Рекомендации:
- Проверьте права доступа к файловой системе: убедитесь, что у веб-сервера нет избыточных прав.
- Определите, под каким пользователем запускается PHP, и проверьте, какие у него есть разрешения, в частности, доступ к критически важным системным файлам, таким как
/etc/passwd
.
Заключение
Запуск веб-сервера на бесплатной платформе, такой как infinityfree.net, может не предоставлять полного контроля и наблюдения за безопасностью системы. Следует помнить, что даже если CVE-2017-12419 предоставляет только доступ на чтение, это не исключает возможности утечки конфиденциальной информации или подготовки дальнейшего вторжения. Поэтому критически важно провести полное расследование и использовать вышеперечисленные методы для выявления потенциальных угроз.