Обнаружение сканирования портов, выполненного собственным компьютером

Мне сказали, что мой рабочий ПК массово сканирует порты чужого компьютера, который я не намереваюсь. Как я могу узнать, какая программа это делает?


Следуя совету комментария ByteCommander, я использовал nethogs перечислить мой сетевой трафик. Я не обнаружил подозрительных программ, работающих на моем компьютере таким образом (это не обязательно означает, что таких программ нет - я просто не могу просмотреть весь вывод), но есть некоторые странные строки вида

my_ip_address:port-other_ip_address:port

где ip-адреса с правой стороны, например, 123.24.163.24, 58.221.44.109 или 88.248.51.254. Погуглив их, вы увидите, что все они появляются в некоторых черных списках. Означает ли это, что происходит что-то подозрительное? Может ли это иметь какое-либо отношение к моей первоначальной проблеме?

5 ответов

Решение

У меня есть другой подход для вас, так как в прошлом я сталкивался с такой же ситуацией.

  1. НИКОГДА НЕ БЛОКИРУЙТЕ С IPTABLES!
  2. Остановите любое приложение или процесс, который может взаимодействовать с жертвой (например, браузер, подключенный к IP-адресу жертвы)
  3. Узнайте, какой трафик осуществляется между вашим компьютером и компьютером жертвы, используя
    tcpdump -nn host your_victim_ip
    Ваш вывод должен выглядеть примерно так
08:36:19.738610 IP 192.168.89.xxx.46582 > 89.35.224.xxx.80: Flags [.], ack 18825, win 523, options [nop,nop,TS val 15987331 ecr 427321428], length 0
08:36:19.738625 IP 89.35.224.xxx.80 > 192.168.89.xxx.46582: Flags [.], seq 18825:20273, ack 492, win 243, options [nop,nop,TS val 427321428 ecr 15987307], length 1448: HTTP
08:36:19.738635 IP 192.168.89.xxx.46582 > 89.35.224.xxx.80: Flags [.], ack 20273, win 545, options [nop,nop,TS val 15987331 ecr 427321428], length 0
08:36:19.738643 IP 89.35.224.xxx.80 > 192.168.89.xxx.46582: Flags [FP.], seq 20273:21546, ack 492, win 243, options [nop,nop,TS val 427321428 ecr 15987307], length 1273: HTTP

Из приведенного выше вывода порты смелее 192.168.89.xxx.**46582** > 89.35.224.xxx.**80**

  1. Узнайте, что использует этот порт с lsof
    lsof -i:80
    Измените ":80" с портом / портами, найденными в выводе tcpdump; -n используется для подавления преобразования IP-адресов в имена, а -P используется для подавления преобразования портов в имена; он должен показать вам, какой процесс использует порт 80.
COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
firefox 30989 mihai   61u  IPv4 496649      0t0  TCP 192.168.89.xxx:40890->89.35.224.xxx:80 (ESTABLISHED)

Как вы можете видеть в моем примере, КОМАНДА firefox использует порт 80 в связи, установленной с IP 89.35.224.xxx

  1. Если команда кажется странной, проверьте откуда она работает ls -l /proc/$PID/exe где $PID - это идентификатор процесса, созданный с помощью команды lsof ранее. Должен иметь подобное, как:
lrwxrwxrwx 1 mihai mihai 0 Jan 16 22:37 /proc/30989/exe -> /usr/lib/firefox/firefox
  1. Дополнительно вы можете проверить более подробно команду, указанную выше с lsof -i:port используя
    lsof -c command_name

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

  1. Убить процесс с sudo kill -9 $PID

  2. Это может быть хорошей идеей сделать резервную копию файла в другом месте и удалить его, если это не обычное имя процесса, как Firefox, хотя вы можете переустановить приложение, если оно обычное.

Другой подход заключается в изменении использования команды на шаге 4. lsof -i@*victim_ip_address* чтобы увидеть все процессы и команды, которые имеют активные соединения с IP-адресом вашей жертвы

** ** ВАЖНО ** **: Запустите все команды как root или с помощью sudo;
Если у вас нет tcpdump ни lsof затем вы можете установить их:

sudo apt-get install lsof tcpdump

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

Определенно простой способ контролировать вашу систему - запустить команду netstat на день или около того и посмотрим, что происходит за границу. Например, что-то вроде этого будет показывать все исходящие (опрошенные) соединения:

netstat -nputwc | tee ~/network.log

Оттуда вы можете проверить network.log в вашей домашней папке, чтобы увидеть, есть ли какие-то странные / аномальные соединения. Лучше всего запускать это в тот день, когда вы не будете слишком часто пользоваться Интернетом, чтобы вы могли получать только фоновые и неактивные соединения.NETstat даст вам возможность увидеть, какой процесс также вызывает соединения, что может быть полезно найти и уничтожить, если работает какой-либо сканер.

Кроме того, вы можете получить более подробный / подробный журнал, используя tcpdump, который вы можете использовать, чтобы получить более продвинутый вывод и получить больше информации. Увидеть man tcpdump для дополнительной информации. Тем не менее, обратите особое внимание на src выражение, чтобы получить только исходящие соединения. Также обязательно используйте -w Возможность записи в файл для удобного поиска. Вы можете прочитать немного больше о tcpdump здесь, если хотите. По крайней мере, это скажет вам, если ваш компьютер на самом деле сканирует вещи.

Из любого из них вы можете получить процесс (через netstat) или важные вещи, такие как, когда и где дела идут. Фактически вы можете запустить оба одновременно, чтобы найти любые триггеры или подобные, которые вызывают сканирование. Вы даже можете использовать tcpdump чтобы найти, когда происходит сканирование, а затем перекрестную ссылку, что с netstat чтобы найти, что процесс делает вещи.

Если вы заметили, что это сканирование происходит регулярно, вам следует искать cronjobs или аналогичные, которые можно легко удалить (относительно).

В противном случае вы можете использовать общие советы по безопасности, такие как запуск rkhunter, clamav, и так далее. Вы также можете просто переустановить свою систему из заведомо исправной резервной копии, чтобы просто завершить ее сейчас.


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

Как правило, ботнет бездействует в вашей системе, пока не сработает по какому-либо порядку. Это может быть либо ваша система, получающая сообщение от удаленного сервера, либо ваша машина, опрашивающая сервер на предмет новых "заказов". В любом случае, вы можете использовать эти же инструменты для поиска команд ботнета и того, куда они направляются.

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

Также может быть важно отметить, что ваш компьютер не может быть зараженным устройством в сети. Маршрутизатор, WAP, веб-камера или любой другой тип IoT (даже принтеры!) Также могут быть членами ботнета. Если они находятся за тем же соединением /IP-адресом, что и ваша машина (особенно дома или аналогичная), вы можете ложно обвинять свой компьютер вместо умного тостера или чего-то еще.

Возможные вещи, которые вы можете сделать:

  • Измените свои пароли: в случае, если злоумышленник использует ваши устройства в качестве маски, очевидно, что ваша аутентификация была каким-то образом скомпрометирована. Это включает в себя ваш компьютер, но также маршрутизатор, модем, интеллектуальные устройства в вашей домашней сети. Большинство пользователей ставят пароль только по Wi-Fi, но не вводят пароль в свою учетную запись администратора маршрутизатора, что плохо. Как отметил Каз, умные устройства также являются легкой мишенью. Во время проверки маршрутизатора также проверьте, не включил ли кто-либо переадресацию портов на маршрутизаторе, чтобы точно знать, к какому устройству осуществляется доступ.

  • Проверьте на Nmap. Nmap является одним из наиболее распространенных инструментов, используемых для сканирования сетей. Он может быть использован для хорошего и хорошего инструмента для системных администраторов, но также может использоваться плохими парнями. Делать apt-cache policy nmap чтобы увидеть, установил ли кто-нибудь это на вашу машину.

  • Анализируйте ваши сетевые подключения и трафик. Такие инструменты, как netstat скажет вам, какие программы используют какие сетевые порты. Особый интерес представляет sudo netstat -tulpan команда. Еще один инструмент, который уже упоминался, это Wireshark. Возможно, вам потребуется время, чтобы узнать, как его использовать. Я бы порекомендовал вам запустить все эти тесты со всеми отключенными браузерами и приложениями, которые зависят от сети.

  • Подумайте об удалении плагинов для браузеров: расширения Chrome и аддоны Firefox удивительны, но они не невинные маленькие котята. Возможно, вы используете браузер, и эти расширения выполняют всю вредоносную деятельность в фоновом режиме. Попробуйте удалить их все или просто удалить ~/.mozilla а также ~/.config/google-chrome/

  • Если больше ничего не работает, уберите его с орбиты: другими словами, сделайте резервную копию ваших данных и переустановите Ubuntu. Когда система взломана, ей трудно доверять. Довольно распространенная техника - заменить легитимную программу на фальшивую. С тысячами бинарных файлов на компьютере может быть трудно определить причину беспорядка, если вы не специалист по компьютерной экспертизе или исследователю безопасности. Создайте Ubuntu live USB (желательно на другом доверенном компьютере) и переустановите систему. Подумайте также о том, чтобы избавиться от своего роутера и получить новый. Установка вредоносного ПО на маршрутизаторах не так уж редка, как вы думаете. Если вы не хотите этого делать, рассмотрите возможность установки программного обеспечения с открытым исходным кодом на маршрутизатор, такого как DD-WRT или Open-WRT, если они поддерживают производителя и версию вашего маршрутизатора.

  • Подумайте о том, чтобы попросить специалиста о помощи: этот может стоить вам больше всего, но если вы хотите докопаться до сути и выяснить, что на самом деле происходит, подумайте о найме человека, который занимается проверкой безопасности компьютерной сети. Потенциальным плюсом является то, что они могут сказать вам, кто и как скомпрометировал вашу сеть и использует ее для злонамеренных действий.

Сетевой монитор EtherApe - это опция среднего уровня для мониторинга трафика вашей сети. Как сетевой монитор с открытым исходным кодом,EtherApe отображает сетевую активность графически с отображением протоколов с цветовой кодировкой. Хосты и ссылки меняются в размере с трафиком. Он поддерживает устройства Ethernet, WLAN, FDDI, Token Ring, ISDN, PPP и SLIP. Он может фильтровать трафик, который будет отображаться, и может читать трафик из файла, а также в реальном времени из сети. Для загрузки и получения дополнительной информации посетите домашнюю страницу EtherApe.

Блокировать оскорбительный адрес так же просто, как добавить подозрительный адрес в цепочку входных IP-таблиц, как это

iptables –A INPUT –m tcp –s OFFENDING_IP_ADDRESS –d WEB_SERVER_ADDRESS –dport 80 –j DENY (where OFFENDING_IP_ADDRESS is the suspect address and WEB_SERVER_ADDRESS is the web server being hit)

Есть и другое очень хорошее программное обеспечение с открытым исходным кодом (OSS) для Linux, и вы можете установить его в Ubuntu, чтобы повысить безопасность и оценить систему возможных сбоев.

Lynis

Lynis - это инструмент аудита безопасности с открытым исходным кодом. Используется системными администраторами, специалистами по безопасности и аудиторами для оценки средств защиты их систем на основе Linux и UNIX. Он работает на самом хосте, поэтому он выполняет более обширное сканирование безопасности, чем сканеры уязвимостей.

Хотя он имеет много вариантов анализа (даже может быть дополнен плагинами), основная операция состоит в том, чтобы проанализировать ряд аспектов системы и проверить правильность конфигурации.

В конце, на основе полученных результатов, вам будет предложен ориентировочный балл 100, который они называют индексом укрепления, а также хороший список всех предупреждений и корректирующих мер, которые вам предлагается применить.

Lynis работает практически на всех системах и версиях UNIX.

Lynis легок и прост в использовании, он используется для нескольких различных целей.

Вы можете прочитать больше о Lynis на официальной ссылке на сайте.

Инструкция по установке

Типичные случаи использования Lynis включают в себя:

Security auditing
Compliance testing (e.g. PCI, HIPAA, SOx)
Vulnerability detection and scanning
System hardening

OpenVAS / Nessus

Эти продукты ориентированы в первую очередь на сканирование уязвимостей. Они делают это через сеть, опрашивая службы. По желанию они могут войти в систему и собрать данные.

RootKit Checkers " рхунтер и чкрооткит "

Пакет rkhunter находится в репозитории, так что просто

sudo apt-get install rkhunter

Так это чкрооткит

sudo apt-get install chkrootkit

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

Для одного IP:

sudo ufw deny from 123.24.163.24 to any

Для диапазона:

sudo ufw deny from 123.24.163.0/24 to any

или добавьте правило в iptables, если вы предпочитаете этот путь.

sudo iptables -A INPUT -s 123.24.163.0/24 -j DROP

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

Другие вопросы по тегам