The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_PRELOAD для скрытия, opennews (ok), 10-Июн-22, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


117. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +/
Сообщение от Аноним (-), 10-Июн-22, 23:09 
> Как такую срань найти ?

Для начала зазырить переменные окружения любым известным вам способом и если там LD_PRELOAD, и это не вы прописали - у вас, скорее всего, какая-то пакость.

Ответить | Правка | Наверх | Cообщить модератору

135. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +1 +/
Сообщение от n00by (ok), 11-Июн-22, 10:47 
Тут лучше не любым известным, а загрузив чистую систему с внешнего накопителя.
Ответить | Правка | Наверх | Cообщить модератору

149. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +1 +/
Сообщение от Andy (??), 11-Июн-22, 15:03 
Дык при загрузке с флешки LD_Preload будет с флешки
А смотреть на всхаченной системе - так там и окружение можно подправить ;)
Ответить | Правка | Наверх | Cообщить модератору

150. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +/
Сообщение от n00by (ok), 11-Июн-22, 15:52 
> Дык при загрузке с флешки LD_Preload будет с флешки

В чистой системе?

Ответить | Правка | Наверх | Cообщить модератору

154. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +/
Сообщение от швондер (?), 11-Июн-22, 16:57 
Как вариант, запустить что-либо с LD_PRELOAD и убедиться в том, что свой LD_PRELOAD виден у запущенного процесса. Но опять же - возможна чистка только определенной вгружаемой библиотечки. Поэтому ваш LD_PRELOAD будет отображаться в /proc/pid/environ, искомый нет. Подключившись к процессу с gdb возможно чтение environ в первом фрейме. Но вообще переменная environ может быть недостоверна - её тоже вполне по силам чистить.

Далее, вгруженная библиотека должна быть видна в /proc/пид/maps - с теми же соображениями о степени доверия к результатам любого чтения.
Таким образом, надо убедиться в первую очередь в том, что чтение не подменено. Это можно пробовать сделать через сравнение числа потраченных инструкций цпу - время выполнения - на заведомо чистой и целевой системах. выполнять  perf record/stat и опираться на счетчик выполненных инструкций.

Ответить | Правка | К родителю #149 | Наверх | Cообщить модератору

192. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +/
Сообщение от n00by (ok), 12-Июн-22, 12:47 
Руткит фильтрует чтение из /proc/пид/maps
По поводу детекта замером времени исполнения - это может сработать в общем случае с майнером. При чтении /proc/пид/maps будет два переключения контекста и сколько кода выполняться в ядре? Это к вопросу о погрешности измерений. Фильтация, насколько понимаю, это несколько машинных инструкций в цикле.
Ответить | Правка | Наверх | Cообщить модератору

199. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +1 +/
Сообщение от швондер (?), 12-Июн-22, 16:40 
> Руткит фильтрует чтение из /proc/пид/maps
> По поводу детекта замером времени исполнения - это может сработать в общем
> случае с майнером. При чтении /proc/пид/maps будет два переключения контекста и
> сколько кода выполняться в ядре? Это к вопросу о погрешности измерений.
> Фильтация, насколько понимаю, это несколько машинных инструкций в цикле.

у вас неверное понимание.

Ответить | Правка | Наверх | Cообщить модератору

207. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +1 +/
Сообщение от n00by (ok), 13-Июн-22, 08:10 
Я так полагаю, Вы где-то уже апробировали предлагаемую методику, раз такое заявляете. В таком случае хотелось бы ознакомиться с какими-то подробностями, что бы понять, что именно и насколько неверно я понимаю.
Ответить | Правка | Наверх | Cообщить модератору

235. "Simbiote - вредоносное ПО для Linux, использующее eBPF и LD_..."  +/
Сообщение от n00by (ok), 16-Июн-22, 08:15 
>  Таким образом, надо убедиться в первую очередь в том, что чтение
> не подменено. Это можно пробовать сделать через сравнение числа потраченных инструкций
> цпу - время выполнения - на заведомо чистой и целевой системах.
> выполнять  perf record/stat и опираться на счетчик выполненных инструкций.

Поскольку не последовало внятного объяснения, как предполагается обеспечить достаточную точность измерений, внесу некоторую ясность. Выше предлагается вариант обнаружения по косвенным признакам. Обычно (RkU, Gmer, AVZ и т.п.) вместо этого производили сканирование памяти, искали факт подмены инструкций. Грубо говоря, реализовывался некий аналог системного загрузчика: читали исполняемые файлы с накопителя, но вместо копирования в ОЗУ производили сравнение. Такой метод помимо обнаружения позволял снять хуки (перехват). Однако, руткиты противодействовали - подменяли содержимое чистых файлов при чтении. Варианты с измерением времени обсуждались, но о рабочих реализациях мне не известно, если не считать вариантов с контролем указателя инструкций в планировщике.

Ответить | Правка | К родителю #154 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру