Итак, я сделал несколько захватов пакетов в своей сети, и все остальное на самом деле в порядке, за исключением этой странной связи, где источник и пункт назначения буквально 127.0.0.1, порт источника - 631, а порт назначения - это число, непрерывно увеличивающееся на 1 для каждого обмена, который происходит .
Я отключил все службы, которые прослушивают по умолчанию, такие как чашки, avahi-daemon и т. Д., Даже в том, что касается фактического удаления чашек, потому что мне это действительно не нужно. Так что я действительно понятия не имею, что вызывает этот трафик. Я провел поиск по порту 631, и все, что я вижу, это результаты, связанные с печатью / принтерами, которые действительно не помогают в моем случае.
Может ли кто-нибудь помочь мне разобраться в этой тайне? Вот карты:
Это 10 TCP SYN от 127.0.0.1 до 127.0.0.1, порт 631. Все сразу получают ответ RST. Они находятся на расстоянии 3,75 секунды, а порт источника увеличивается на 4 каждый раз.
Как вы заметили, порт 631 зарегистрирован для протокола Интернет-печати. Возможно что-то связанное с печатью.
Поскольку в потоке TCP нет данных, и все это localhost, не так много идентифицирующей информации. Отследите процесс, который пытается установить TCP-соединение. В последних версиях Linux bpf позволяет вам видеть все TCP-соединения с помощью таких скриптов, как, ну, tcpconnect. Это вернет PID и COMM соединений. То, что не является чашками, было бы необычным.
Поскольку трафик пытается пройти через порт 631 / tcp в интерфейсе обратной связи, я считаю, что локальный процесс пытается связаться с демоном CUPS и что-то напечатать. К сожалению, я не могу получить дополнительную информацию об этом из предоставленных файлов PCAP, потому что ни один из захваченных пакетов TCP не передает полезную нагрузку. Я вижу только то, что процесс, вероятно, закрывает соединительный сокет после сбоя и пытается использовать новые.
Некоторое время назад мне представили похожую проблему. Чтобы собрать информацию от процесса, который пытается часто устанавливать соединения с закрытым локальным портом, я использовал следующие стратегии:
Техника приманки
На вкладке терминала я запустил ncat процесс прослушивания подключений на порт 631 / tcp:
# ncat -l -p 631 -k -vv
Затем на другой вкладке терминала я запустил на лету Bash-скрипт, собирающий информацию о процессах, подключенных к порту:
# while sleep 0.1; do ss -tapen state established 'dport = 631' > output.txt ; fgrep -wq 631 output.txt && cat output.txt; done
IPTABLES / NFTABLES ведение журнала
Я создал правило IPTABLES / NFTABLES на лету в цепочке OUTPUT, записывая информацию о подключении в SYSLOG:
# iptables -I OUTPUT -p tcp --syn --dport 631 -j LOG --log-prefix 'WHOIS? ' --log-level warning --log-uid
# nft insert rule ip filter OUTPUT tcp dport 631 tcp flags '&(fin|syn|rst|ack)' == syn counter log prefix '"WHOIS? "' level warn flags skuid