Jump to content
Калькуляторы

Уязвимость в RouterOS v6.46.3 ???

Сразу прош прощения за некоторую провокационность в теме, но очень похоже.

 

Начну с того, что у меня по некоторой нужной причине открыт http доступ к роутеру.

Больше никаких сервсиов не открыто.

И раз уж так случилось, то приходится присматривать за доступом.

Настроено уведомление о успешных и безуспешных входах сразу на email.

В случае прихода перебиральщиков - блокирую их в файрволе.

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

 

И вот на днях маршрутизатор "внезапно" перезагружается.

Я захожу в админку (попутно удивляюсь что не пришло уведомление о моем входе), смотрю в логи - а там пусто, смотрбю в Logging - а там все логирование отключено!

Я блокирую доступ снаружи, восстанавливаю логирование, добавляю еще больше логов сразу отправлять на email.

И опять открываю доступ.

Через два часа приходит уведомление об успешном логине злоумышленника с его ip адресом.

Я опять захожу в админку, вижу его в логах, отключаю доступ и сохраняю логи.

Внезапно в логах уже ничего нет. Т.е. он успел их опять почистить.

Начинаю более потробно исследовать что произошло и вижу, что моя версия RouterOS v6.46.3 (stable), на тот момент предпоследняя из stable, внезапно изменилась на 6.47beta35 (Testing).

 

Вырисовывается приблизительно такая картина:

Злоумышленик смог удаленно обновить прошивку _не_залогинившись_ предварительно с правильным паролем (иначе об этом было бы сообщение мне на email), в процессе отключив логгирование и потерев логи.

Возможно в этой прошивке есть бекдор, т.к. потом он залогинился уже с аккауната admin (пароль мой не поменялся).

 

На текущий момент я обновился до RouterOS v6.46.4, поменял пароль, и сижу боюсь... Т.к. отключить доступ совсем не могу.

 

В процессе посканил немножко злоумышленника, нашел вот такое:

PORT     STATE    SERVICE
80/tcp   open     http
135/tcp  filtered msrpc
139/tcp  filtered netbios-ssn
445/tcp  filtered microsoft-ds
1723/tcp open     pptp
2000/tcp open     cisco-sccp
2222/tcp open     unknown
5061/tcp filtered sip-tls
7100/tcp open     font-service
8291/tcp open     unknown
9102/tcp open     jetdirect
 

На 80 порту, внезапно, старый RouterOS v6.43.7.

На 2222 - ssh

 

Не очень похоже на "злобного хакера", тут я подумал, может это "добрый хакер", который ходит и обновляет людям микротики? :-) Но тогда не совсем ясно зачем тереть и главное отключать логи.

 

Вот такая забавная (не очень) ситуация.

 

Share this post


Link to post
Share on other sites

раз уж сделали это

32 минуты назад, alpha_ds сказал:

Настроено уведомление о успешных и безуспешных входах сразу на email.

В случае прихода перебиральщиков - блокирую их в файрволе.

то что мешало http заменить на https ? или как вариант доступ по сертификатам?

Share this post


Link to post
Share on other sites

А почему сначала не поднять ВПН, и с него заходить по Http?

Share this post


Link to post
Share on other sites
2 минуты назад, alvisid сказал:

А почему сначала не поднять ВПН

И port-knocking перед VPN навесить. 

Share this post


Link to post
Share on other sites
12 часов назад, sdy_moscow сказал:

Saab надо позвать.

Нужно два микротика. Один сломают- заходишь через другой.

 

По делу. Я хз как там эти ваши вебы ломают. Но у меня (из-за разгильдяйства конечно) куча микротиков висели наружу на нестандартном порту SSH  и никогда проблем не было.

Share this post


Link to post
Share on other sites

Имхо в сервисах отключить все оставить winbox доступ к учётной записи и серверу только с внутренней сети. Подымаем vpn сервер. Спим спокойно.

Share this post


Link to post
Share on other sites

IP фильтрация не спасет отца русской демократии? Хотя правильно говорят выше, VPN и уже с него на веб если уж так хочется.

Share this post


Link to post
Share on other sites

Всем спасибо за советы по ограничению доступа.

Я обязательно их применю в других случаях.

В данном случае я сразу описал, что web доступ для всех IP это изначальная постановка задачи. В данном случае это пока необходимо.

 

Вопрос был в том, как можно исследовать произошедшее? Есть ли идеи как именно произошел доступ, если учесть что это на 99% был не подбор пароля.

 

Ну и если есть желание придумывать "как сделать лучше" подскажите, как реализовать человеческий fail2ban на mikrotik, а не превентивное огораживание.

Ибо вариант из faq с несколькими стадиями в src list для web в принципе не работает (да и для ssh объективно говоря не работает, т.к. подборщики сейчас аккуратно-медленные или распределенные по многим IP)

Вариант с парсеньем логов по факту у меня не заработал.

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

 

Что это вообще за система такая, которая не может запустить скрипт по событию? При чем логировать может гибко, даже Email может слать по событию, а файрвол подкрутить не может :-(

 

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

Но уж как-то сильно заморочено для такой серьезной системы как mikrotik.

 

И вот смотря на последний тезис, у меня возникает ощущение, что это я что-то делаю не так. Ну зачем строить такие костыли? Возможно, все таки, есть штатная возможность реагировать на события login failure просто про это не сказано в Faq? :-)

Поэтому и обращаюсь за помощью к общественности.

Share this post


Link to post
Share on other sites

Вы развели проблему на пустом месте. Если совсем просто и вам обязательно нужен веб. Ну делаете проброс через ssh, а веб повешайте на лупбек какой-нить.

Share this post


Link to post
Share on other sites
7 часов назад, alpha_ds сказал:

если учесть что это на 99% был не подбор пароля.

 

Ну и если есть желание придумывать "как сделать лучше" подскажите, как реализовать человеческий fail2ban на mikrotik

Допустим, ваш пароль заполучили одним из тысяч способов, таким как фишинг или социальная инженерия. Как в таком случае fail2ban вам поможет?

7 часов назад, alpha_ds сказал:

Вариант с парсеньем логов по факту у меня не заработал.

Храните копию логов вне роутера - и будете все знать

Share this post


Link to post
Share on other sites

Надо просто поставить еще один микротик перед этим с открытым вебом, на нем настроить веб прокси на веб порт основного и все делов-то, никто не взломает.

Share this post


Link to post
Share on other sites

Изменить штатную учетку admin на bla-bla-bla и задать пасс посерьёзнее. Всё!

3 года один МТ торчит только WinBox-ом на улицу... систематически вижу попытки входа под admin, root и т.п. На большее у них ума не хватает, так как админская учетка изменена до неугадывания, ну и пасс более 8 символов (с "запятыми")

Share this post


Link to post
Share on other sites
On 4/4/2020 at 6:36 AM, romsan said:

3 года один МТ торчит только WinBox-ом на улицу...

Возможно не только. Вtest server ещё. Злодейские скрипты сканируют диапазон ИП по 2000 порту, получают вполне достоверный список микротов, затем уже по списку работают на предмет нестандартных портов сервисов. 

Edited by DAF

Share this post


Link to post
Share on other sites

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

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

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now