tcpdumpが私のIPに関連しない多くのパケットをキャプチャするのはなぜですか? (セントース7)

tcpdumpが私のIPに関連しない多くのパケットをキャプチャするのはなぜですか? (セントース7)

Tcpdumpランチャー:

/usr/sbin/tcpdump -U -n -i eth0 icmp or tcp dst port 22 or tcp dst port

キャプチャされたデータを見ると、次のように表示されます。

132.132.211.221.40372 > 89.31.125.17.ssh: Flags [S], cksum 0xde63 (correct), seq 524121044, win 29200, length 0
146.136.44.207.4855 > 45.66.134.253.ssh: Flags [S], cksum 0x86a2 (correct), seq 1106964113, win 29200, length 0
46.228.217.79.64595 > 81.90.190.31.ssh: Flags [S], cksum 0xdf11 (correct), seq 4132328538, win 29200, length 0
109.89.72.226.19846 > 89.31.126.248.ssh: Flags [S], cksum 0xf42c (correct), seq 2627129631, win 29200, length 0
186.102.253.234.58270 > 45.146.123.96.ssh: Flags [S], cksum 0xc8a3 (correct), seq 3373229862, win 29200, length 0
139.204.89.135.64050 > 81.90.190.31.ssh: Flags [S], cksum 0x9afe (correct), seq 3997943153, win 29200, length 0
146.17.189.108.mbl-battd > 45.66.134.42.ssh: Flags [S], cksum 0xbf0e (correct), seq 1369840100, win 29200, length 0

しかし、奇妙なことは、SCRでもDSTでもなく、これらのすべてのアドレスが私のIPアドレスではないということです。これは、誰かが他の人のSSHを攻撃するために私のホストを「リレー」として使用しているという意味ですか?

参考のために、ここにiptables指標とログを投稿します。

-P FORWARD DROP
-A FORWARD -p tcp -m tcp --dport 22 -j LOG --log-prefix "[forward_ssh] "
-A OUTPUT  -p tcp -m tcp --dport 22 -m state --state NEW -j LOG --log-uid --log-prefix  "[out_ssh_new] "
-A OUTPUT  -p tcp -m tcp --dport 22 -m state --state ESTABLISHED -j LOG --log-uid --log-prefix "[out_ssh_est] "
-A OUTPUT  -p tcp -m tcp --dport 22 -j DROP

ログを見ると以下のようになります。私のIP(194.156.xxx.xxx)が他人を攻撃しているようです。

Mar 15 08:56:35 oneserver kernel: [out_ssh_est] IN= OUT=eth0 SRC=194.156.xxx.xxx DST=2.59.135.116 LEN=44 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=443 DPT=22 WINDOW=64240 RES=0x00 ACK SYN URGP=0
Mar 15 09:21:02 oneserver kernel: [out_ssh_est] IN= OUT=eth0 SRC=194.156.xxx.xxx DST=162.248.88.193 LEN=44 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=443 DPT=22 WINDOW=64240 RES=0x00 ACK SYN URGP=0
Mar 15 10:52:45 oneserver kernel: [out_ssh_est] IN= OUT=eth0 SRC=194.156.xxx.xxx DST=172.106.16.136 LEN=44 TOS=0x00 PREC=0x00 TTL=64 ID=0 DF PROTO=TCP SPT=443 DPT=22 WINDOW=64240 RES=0x00 ACK SYN URGP=0

答え1

Tcpdump は、ネットワークインターフェイスを通過するすべてのパケットを受信します。イーサネットスイッチがその役割を果たす最高MAC宛てのパケットのみを転送します。非スイッチングハブは試みずにすべてを教えてくれます。

したがって、LAN内のすべてのパケットが受信されます。一般的に、私たちは、パケットがこのように異なるIPアドレスのセットから出てくることを期待していません。ただし、IP アドレスを検索した結果、Petersburg Internet Network Ltd.所有のデータセンターにあることがわかりました。インターネットトラフィックをルーティングしますか?このトラフィックがシステムを通過するかどうか。

より安全な訓練場所を見つけてください。

答え2

Tcpdumpはネットワークインタフェースを「無差別」モードに切り替えます。ネットワークにハブがある場合、すべてのパケットがすべてのインターフェイスに送信されます。その後、インターフェイスはMAC番号をチェックし、パケットがそのインターフェイスに向かうことを確認します。そうであれば、受信ソフトウェアに渡されます。そうでない場合、パケットは破棄されます。

ただし、無差別モードでは、インターフェイスはすべてのパケットを受信できます。たとえば、tcpdump を使用して表示します。

ハブの代わりにスイッチがある場合、スイッチはパケットをフィルタリングし、実際にはユーザーに適したパケットのみを送信する必要があります。マルチキャストトラフィックの場合、シナリオはより複雑であるため、ここでは説明しません。

ネットワークデバイスは、IP番号ではなくMAC番号に基づいてトラフィックをルーティングします。

詳しくはこちらをご覧ください。


あなたのコメントの後にはいくつかの追加情報があります。

iptablesが生成するログが何であるかを知りたいです。 1つの点は、確立された接続のログのみを表示することです。接続が確立されたら、関連ログも必要です。これは、接続が確立され実行中であることを意味します。どのプロセスがこれらの接続を使用し、実用lsof性があるかを調べます。プロセス名がある場合は、接続が正当であるかどうかを識別できる必要があります。

コンピュータが破損している可能性があると思われる場合は、いくつかのスキャンを実行することをお勧めします。認識できないものがインストールされていることを確認してください。 RPM/YUM パッケージを使用する RedHat/CentOS/Fedora/Oracle Linux では、いくつかのコマンドで簡単に確認できます。

  • rpm -qaインストールされているすべてのパッケージが一覧表示されます。疑わしいことがないか確認してください。
  • rpm -Vaパッケージのインストール後に変更されたすべてのファイルが表示されます。どのファイルが変更されたかを確認してください。
  • この情報は偽物かもしれませんが、パッケージのソースを確認することもできます。https://serverfault.com/questions/62026/how-to-know-from-which-yum-repository-a-package-has-been-installed

他のディストリビューションの場合は、インストールの整合性を直接確認する方法を学びます。

関連情報