Обнаружение сканирования портов, выполненного собственным компьютером
Мне сказали, что мой рабочий ПК массово сканирует порты чужого компьютера, который я не намереваюсь. Как я могу узнать, какая программа это делает?
Следуя совету комментария ByteCommander, я использовал nethogs
перечислить мой сетевой трафик. Я не обнаружил подозрительных программ, работающих на моем компьютере таким образом (это не обязательно означает, что таких программ нет - я просто не могу просмотреть весь вывод), но есть некоторые странные строки вида
my_ip_address:port-other_ip_address:port
где ip-адреса с правой стороны, например, 123.24.163.24, 58.221.44.109 или 88.248.51.254. Погуглив их, вы увидите, что все они появляются в некоторых черных списках. Означает ли это, что происходит что-то подозрительное? Может ли это иметь какое-либо отношение к моей первоначальной проблеме?
5 ответов
У меня есть другой подход для вас, так как в прошлом я сталкивался с такой же ситуацией.
- НИКОГДА НЕ БЛОКИРУЙТЕ С IPTABLES!
- Остановите любое приложение или процесс, который может взаимодействовать с жертвой (например, браузер, подключенный к IP-адресу жертвы)
- Узнайте, какой трафик осуществляется между вашим компьютером и компьютером жертвы, используя
Ваш вывод должен выглядеть примерно так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**
- Узнайте, что использует этот порт с 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
- Если команда кажется странной, проверьте откуда она работает
ls -l /proc/$PID/exe
где $PID - это идентификатор процесса, созданный с помощью команды lsof ранее. Должен иметь подобное, как:
lrwxrwxrwx 1 mihai mihai 0 Jan 16 22:37 /proc/30989/exe -> /usr/lib/firefox/firefox
- Дополнительно вы можете проверить более подробно команду, указанную выше с
lsof -i:port
используяlsof -c command_name
Это часть копания, так что имейте в виду, что почти все, что связано с этой "запущенной командой", которая будет отображаться, например, какие файлы используются, какие другие соединения и т. Д.
Убить процесс с
sudo kill -9 $PID
Это может быть хорошей идеей сделать резервную копию файла в другом месте и удалить его, если это не обычное имя процесса, как 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
Есть вероятность, что кто-то работает с вашего компьютера, отсюда и сканирование. В таком случае, тогда кто знает, что еще было сделано на вашем компьютере. Может потребовать полной очистки.