web-dev-qa-db-ja.com

自分のコンピューターで実行されたポートスキャンを検出する

作業中のPCが他の誰かのPCのポートを大量にスキャンしていると言われましたが、これは私が意図したものではありません。どのプログラムがそれを行っているかを知るにはどうすればよいですか?


ByteCommanderのコメントのアドバイスに従って、nethogsを使用してネットワークトラフィックを一覧表示しました。そのようにコンピューター上で実行されている疑わしいプログラムは見つかりませんでした(必ずしもそのようなプログラムがないことを意味するわけではありません-出力全体を監視することはできません)が、フォームのいくつかの奇妙な行があります

my_ip_address:port-other_ip_address:port

右側のIPアドレスは、たとえば123.24.163.24、58.221.44.109、または88.248.51.254。それらをグーグルで調べると、それらがすべていくつかのブラックリストに表示されることがわかります。それは何か疑わしい継続中があるということですか?それは私の元の問題と何か関係がありますか?

6
Dune

私はあなたに別のアプローチを持っています、私は過去に同じ状況で自分自身に直面したので。

  1. まだIPTABLESで何もブロックしないでください!
  2. 被害者と通信できるアプリケーションまたはプロセスを停止します(被害者のIPアドレスに接続されているブラウザなど)
  3. を使用して、PCと被害者のPCの間で行われているトラフィックを調べます。
    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
    tcpdump出力で作成されたポートで「:80」を変更します。 -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)

私の例でわかるように、COMMAND firefoxはIP 89.35.224.xxxで確立された通信でポート80を使用しています

  1. コマンドが奇妙に見える場合は、ls -l /proc/$PID/exeで実行されている場所から確認します。$ PIDは、以前にlsofコマンドで作成されたプロセスIDです。次のような類似のアウトを持つ必要があります:
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アドレスとアクティブに接続されているすべてのプロセスとコマンドを表示することです

** **重要** **:すべてのコマンドをルートとして、またはSudoで実行します。
tcpdumplsofもインストールされていない場合は、次の方法でインストールできます。

Sudo apt-get install lsof tcpdump

この時点で、IPTABLESを使用するために必要なすべての情報があり、まだ必要な場合は発信トラフィックをブロックすると思います。
問題がなくなったかどうかを確認するために、tcpdumpを再度使用することを忘れないでください。

2
Stancu Mihai

システムを監視する明確な簡単な方法は、netstatのようなコマンドを1日程度実行して、何が送信されるかを確認することです。たとえば、 this のようなものは、すべての発信(ポーリング)接続を表示します。

netstat -nputwc | tee ~/network.log

そこから、ホームフォルダーのnetwork.logをチェックして、奇妙な/異常な接続があるかどうかを確認できます。これは、インターネットを使いすぎない日に実行するのが最善です。そのため、バックグラウンドでアクティブでない接続しか取得できません。 Netstatは、どのプロセスが接続を呼び出しているかを確認する機能を提供します。これは、スキャナーが実行されている場合、検出して破棄する価値があるかもしれません。

さらに、tcpdumpを使用してより詳細な/詳細なログを取得できます。これを使用して、より高度な出力を取得し、より多くの情報を取得できます。詳細については、man tcpdumpを参照してください。ただし、特にsrc式を見て、発信接続のみを取得してください。また、-wオプションを使用して、簡単に検索できるようにファイルに書き込むようにしてください。 tcpdumphere についてもう少し読むことができます。少なくとも、これはコンピューターが実際に物事をスキャンしているかどうかを教えてくれます。

これらのいずれかから、プロセスを(netstatを介して)取得するか、いつどこで進行するかなどの重要な情報を取得できます。実際に、bothを同時に実行して、スキャンを引き起こすトリガーなどを探すことができます。 tcpdumpを使用してスキャンがいつ行われるかを見つけ、netstatと相互参照して、どのプロセスが処理を行っているかを見つけることもできます。

これらのスキャンが定期的に行われることに気付いた場合は、cronジョブなどを探してください。これは(比較的)簡単に削除できます。

それ以外の場合は、rkhunterclamavなどの実行など、一般的なセキュリティのヒントを使用できます。また、既知の正常なバックアップからシステムをいつでも再インストールして、すぐに終了することもできます。


そして、ボットネットの背景について、主にあなたを退屈させるために。

通常、ボットネットは、何らかの順序でトリガーされるまでシステムでアイドル状態になります。これは、システムがリモートサーバーからメッセージを受信するか、マシンがサーバーに新しい「注文」をポーリングするかのいずれかです。いずれにせよ、これらの同じツールを使用して、これらのボットネットコマンドとそれらがどこに行くのかを見つけることができます。

ボットネットの一部であるマシンをキャプチャできる場合(存在する場合)、ボットネットソフトウェアの内容と場所を見つけ、必要な方法を使用して削除できます。

コンピュータがネットワーク上の感染デバイスではない可能性があることに注意することも重要です。ルーターのアップストリーム、WAP、Webカメラ、またはその他の種類のIoT(プリンターも!)もボットネットのメンバーになることができます。マシンと同じ接続/ IPの背後にある場合(特に自宅など)、スマートトースターなどではなく誤ってコンピューターを非難している可能性があります。

7
Kaz Wolfe

できること:

  • パスワードの変更:攻撃者がデバイスをマスクとして使用している場合、認証が何らかの形で侵害されていることは明らかです。これには、コンピューターだけでなく、ルーター、モデム、ホームネットワーク上のスマートデバイスも含まれます。ほとんどのユーザーはwifiにパスワードを入力するだけですが、ルーターの管理者アカウントにはパスワードを入力しません。これは悪いことです。 Kazが指摘したように、スマートデバイスも簡単なターゲットです。ルーターを確認しているときに、誰かがルーターでポート転送を有効にしているかどうかも確認して、アクセスされているデバイスを正確に把握します。

  • nmapを確認。 Nmapは、ネットワークのスキャンに使用される最も一般的なツールの1つです。それは良い目的で使用でき、システム管理者にとっては良いツールですが、悪者によっても使用できます。 apt-cache policy nmapを実行して、誰かがそれをマシンにインストールしたかどうかを確認します。

  • ネットワーク接続とトラフィックの分析netstatなどのツールは、どのプログラムがどのネットワークポートを使用しているかを示します。特に興味深いのは、Sudo netstat -tulpanコマンドです。既に述べた別のツールはWiresharkです。使い方を学ぶのに時間がかかるかもしれません。ネットワークに依存するすべてのブラウザーとアプリケーションをオフにして、これらすべてのテストを実行することをお勧めします。

  • ブラウザのプラグインを削除することを検討してください:Chrome拡張機能とFirefoxアドオンは素晴らしいですが、それらは無邪気な小さな子猫ではありません。ブラウザを実行している場合、これらの拡張機能はすべての悪意のあるアクティビティをバックグラウンドで実行します。それらをすべて削除するか、単に~/.mozilla~/.config/google-chrome/を削除することを検討してください

  • 他に機能しない場合は、軌道からそれを破棄します:つまり、データをバックアップし、Ubuntuを再インストールします。システムが侵害されると、それを信頼するのは困難です。非常に一般的な手法は、正当なプログラムを偽のプログラムに置き換えることです。コンピューター上に数千のバイナリファイルがあるため、コンピューターの法医学の専門家やセキュリティ研究者でない場合、混乱の原因を特定するのは困難です。 UbuntuのライブUSBを作成し(できれば別の信頼できるコンピューター上で)、システムを再インストールします。ルーターも削除して、新しいルーターを入手することを検討してください。ルーターにマルウェアをインストールすることは、思っているほど珍しいことではありません。そうしたくない場合は、ルーターの製造元とバージョンをサポートするDD-WRTやOpen-WRTなどのオープンソースソフトウェアをルーターにインストールすることを検討してください。

  • 専門家に助けを求めることを考慮してください:これはあなたに最も費用がかかるかもしれませんが、これの一番下に行き、実際に何が起こっているかを知りたい場合は、コンピュータネットワークセキュリティを調査する人を雇うことを検討してください生活のために。潜在的な利点は、ネットワークを誰がどのように侵害し、悪意のあるjujuに使用しているかを伝えることができることです。

5

パケット検査のために 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

誰かがあなたのコンピューターから操作している可能性があるため、スキャンが行われます。そのような場合、その後、誰があなたのコンピューターですでに他に何をしたかを知っています。完全なクリーンアウトが必要になる場合があります。

2
user633551

EtherApeネットワークモニターは、ネットワークのデータトラフィックを監視するためのミッドレンジオプションです。オープンソースのネットワークモニターとして、EtherApeは色分けされたプロトコルディスプレイでネットワークアクティビティをグラフィカルに表示します。ホストとリンクのサイズはトラフィックに応じて変化します。イーサネット、WLAN、FDDI、トークンリング、ISDN、PPPおよびSLIPデバイスをサポートします。表示するトラフィックをフィルタリングし、ネットワークからのライブと同様にファイルからトラフィックを読み取ることができます。ダウンロードおよび詳細については、 EtherApeホームページにアクセスしてください

enter image description here

攻撃的なアドレスをブロックするには、このように入力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)

Linuxには他にも非常に優れたオープンソースソフトウェア(OSS)があり、Ubuntuにインストールしてセキュリティを強化し、システムで発生する可能性のある障害を評価できます。

Lynis

Lynisは、オープンソースのセキュリティ監査ツールです。 LinuxおよびUNIXベースのシステムのセキュリティ防御を評価するために、システム管理者、セキュリティ専門家、監査人が使用します。ホスト自体で実行されるため、脆弱性スキャナーよりも広範なセキュリティスキャンを実行します。

多くの分析オプションがありますが(プラグインで補完することもできます)、基本的な操作はシステムの一連の側面を分析し、構成が正しいかどうかを確認することです。

最終的に、得られた結果に基づいて、100のガイドラインスコアが提供されます。これは、強化インデックスと呼ばれ、適用することが提案されているすべての警告と修正措置の適切な記録とともに提供されます。

Lynisは、ほぼすべてのUNIXベースのシステムとバージョンで実行されます。

Lynisは軽量で使いやすい、いくつかの異なる目的に使用されます。

Lynisの詳細については、公式ウェブサイト link をご覧ください。

インストールガイド

Lynisの典型的なユースケースは次のとおりです:

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

OpenVAS/Nessus

これらの製品は、主に脆弱性スキャンに焦点を当てています。彼らはポーリングサービスによってネットワークを介してこれを行います。オプションで、システムにログインしてデータを収集します。

RootKit Checkers " rkhunterchkrootkit "

パッケージrkhunterはリポジトリにあるので、

Sudo apt-get install rkhunter

Chkrootkitも同様です

Sudo apt-get install chkrootkit

1
user641576