作業中の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。それらをグーグルで調べると、それらがすべていくつかのブラックリストに表示されることがわかります。それは何か疑わしい継続中があるということですか?それは私の元の問題と何か関係がありますか?
私はあなたに別のアプローチを持っています、私は過去に同じ状況で自分自身に直面したので。
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 -i: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を使用しています
ls -l /proc/$PID/exe
で実行されている場所から確認します。$ PIDは、以前にlsofコマンドで作成されたプロセスIDです。次のような類似のアウトを持つ必要があります: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アドレスとアクティブに接続されているすべてのプロセスとコマンドを表示することです
** **重要** **:すべてのコマンドをルートとして、またはSudoで実行します。tcpdump
もlsof
もインストールされていない場合は、次の方法でインストールできます。
Sudo apt-get install lsof tcpdump
この時点で、IPTABLESを使用するために必要なすべての情報があり、まだ必要な場合は発信トラフィックをブロックすると思います。
問題がなくなったかどうかを確認するために、tcpdump
を再度使用することを忘れないでください。
システムを監視する明確な簡単な方法は、netstat
のようなコマンドを1日程度実行して、何が送信されるかを確認することです。たとえば、 this のようなものは、すべての発信(ポーリング)接続を表示します。
netstat -nputwc | tee ~/network.log
そこから、ホームフォルダーのnetwork.log
をチェックして、奇妙な/異常な接続があるかどうかを確認できます。これは、インターネットを使いすぎない日に実行するのが最善です。そのため、バックグラウンドでアクティブでない接続しか取得できません。 Netstatは、どのプロセスが接続を呼び出しているかを確認する機能を提供します。これは、スキャナーが実行されている場合、検出して破棄する価値があるかもしれません。
さらに、tcpdump
を使用してより詳細な/詳細なログを取得できます。これを使用して、より高度な出力を取得し、より多くの情報を取得できます。詳細については、man tcpdump
を参照してください。ただし、特にsrc
式を見て、発信接続のみを取得してください。また、-w
オプションを使用して、簡単に検索できるようにファイルに書き込むようにしてください。 tcpdump
here についてもう少し読むことができます。少なくとも、これはコンピューターが実際に物事をスキャンしているかどうかを教えてくれます。
これらのいずれかから、プロセスを(netstat
を介して)取得するか、いつどこで進行するかなどの重要な情報を取得できます。実際に、bothを同時に実行して、スキャンを引き起こすトリガーなどを探すことができます。 tcpdump
を使用してスキャンがいつ行われるかを見つけ、netstat
と相互参照して、どのプロセスが処理を行っているかを見つけることもできます。
これらのスキャンが定期的に行われることに気付いた場合は、cronジョブなどを探してください。これは(比較的)簡単に削除できます。
それ以外の場合は、rkhunter
、clamav
などの実行など、一般的なセキュリティのヒントを使用できます。また、既知の正常なバックアップからシステムをいつでも再インストールして、すぐに終了することもできます。
そして、ボットネットの背景について、主にあなたを退屈させるために。
通常、ボットネットは、何らかの順序でトリガーされるまでシステムでアイドル状態になります。これは、システムがリモートサーバーからメッセージを受信するか、マシンがサーバーに新しい「注文」をポーリングするかのいずれかです。いずれにせよ、これらの同じツールを使用して、これらのボットネットコマンドとそれらがどこに行くのかを見つけることができます。
ボットネットの一部であるマシンをキャプチャできる場合(存在する場合)、ボットネットソフトウェアの内容と場所を見つけ、必要な方法を使用して削除できます。
コンピュータがネットワーク上の感染デバイスではない可能性があることに注意することも重要です。ルーターのアップストリーム、WAP、Webカメラ、またはその他の種類のIoT(プリンターも!)もボットネットのメンバーになることができます。マシンと同じ接続/ IPの背後にある場合(特に自宅など)、スマートトースターなどではなく誤ってコンピューターを非難している可能性があります。
できること:
パスワードの変更:攻撃者がデバイスをマスクとして使用している場合、認証が何らかの形で侵害されていることは明らかです。これには、コンピューターだけでなく、ルーター、モデム、ホームネットワーク上のスマートデバイスも含まれます。ほとんどのユーザーは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に使用しているかを伝えることができることです。
パケット検査のために 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
誰かがあなたのコンピューターから操作している可能性があるため、スキャンが行われます。そのような場合、その後、誰があなたのコンピューターですでに他に何をしたかを知っています。完全なクリーンアウトが必要になる場合があります。
EtherApeネットワークモニターは、ネットワークのデータトラフィックを監視するためのミッドレンジオプションです。オープンソースのネットワークモニターとして、EtherApeは色分けされたプロトコルディスプレイでネットワークアクティビティをグラフィカルに表示します。ホストとリンクのサイズはトラフィックに応じて変化します。イーサネット、WLAN、FDDI、トークンリング、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)
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 " rkhunter & chkrootkit "
パッケージrkhunterはリポジトリにあるので、
Sudo apt-get install rkhunter
Chkrootkitも同様です
Sudo apt-get install chkrootkit