🐧 Linux: LD_PRELOAD — Руткит для бедных (и для админов)
Знаете ли вы, что можно перехватить и подменить любую функцию в Linux-программе, не перекомпилируя её?
Это делает переменная окружения LD_PRELOAD. Она говорит динамическому линковщику: "Сначала загрузи мою библиотеку, а потом всё остальное".
Как это используют:
Хакеры (Userland Rootkits): Создают библиотеку, которая переопределяет функцию readdir(). Когда админ пишет ls, команда вызывает подмененную функцию, которая показывает все файлы, кроме вредоносных.
Админы (Отладка и Фиксы): Можно подменить time(), чтобы протестировать поведение программы в "будущем", или перехватить connect(), чтобы перенаправить трафик без изменения конфигов.
Как обнаружить (Аудит): Проверьте переменные окружения запущенных процессов.
Также проверьте файл /etc/ld.so.preload. Если там есть незнакомые библиотеки — у вас проблемы.
Взгляд архитектора: Механизмы, созданные для гибкости (LD_PRELOAD), часто становятся векторами атак. Архитектор должен знать "темную сторону" своих инструментов.
#linux #security #rootkit #ldpreload #hack #sysadmin #гайд
Знаете ли вы, что можно перехватить и подменить любую функцию в Linux-программе, не перекомпилируя её?
Это делает переменная окружения LD_PRELOAD. Она говорит динамическому линковщику: "Сначала загрузи мою библиотеку, а потом всё остальное".
Как это используют:
Хакеры (Userland Rootkits): Создают библиотеку, которая переопределяет функцию readdir(). Когда админ пишет ls, команда вызывает подмененную функцию, которая показывает все файлы, кроме вредоносных.
Админы (Отладка и Фиксы): Можно подменить time(), чтобы протестировать поведение программы в "будущем", или перехватить connect(), чтобы перенаправить трафик без изменения конфигов.
Как обнаружить (Аудит): Проверьте переменные окружения запущенных процессов.
# Ищем процессы с установленным LD_PRELOAD
sudo grep -a "LD_PRELOAD" /proc/*/environ
Также проверьте файл /etc/ld.so.preload. Если там есть незнакомые библиотеки — у вас проблемы.
Взгляд архитектора: Механизмы, созданные для гибкости (LD_PRELOAD), часто становятся векторами атак. Архитектор должен знать "темную сторону" своих инструментов.
#linux #security #rootkit #ldpreload #hack #sysadmin #гайд