web-dev-qa-db-ja.com

「中空」プロセス、または「通常」プロセス内に隠されたマルウェアをチェックする方法はありますか

私は最近出会いました The Vergeに関する記事 。これは、商用マルウェアの生成の概念と、世界中でどのように使用されるかを中心に扱っています。この記事では、「プロセスの空洞化」、システム/ユーザーから隠されているハードウェアへのリモートアクセスなど、いくつかの興味深い(そして気になる)概念を紹介しました。

記事で同様の心配事を述べた理由はありませんが、最近の主要なバグ(Shellshock、heartbleedなど)と一緒にITの問題を処理し、Javaで開発しているため、マルウェアの複雑さが増しているため、脆弱性について非常に偏執的です私が使用および管理するシステムの。

疑わしい動作(異常な速度低下、スリープからのランダムなウェイクアップ、要求の厳しいソフトウェアをアクティブに実行していないときの高CPU負荷など)に気づくときはいつでも、mac/* nixマシンで実行中のプロセスをチェックする傾向があります。今のところ、目に留まったことは何もありませんが、「中空」のプロセスがないという意味ではありません。

OSXまたはLinuxシステムを調査して、隠れたマルウェアがあるかどうかを確認する方法はありますか?

6
posdef

Unhideという法医学ツールが興味深いかもしれません。

http://www.unhide-forensics.info

unhideは、さまざまな手法を使用して、ルートキット/ LKM(ロード可能なカーネルモジュール)で使用される非表示のプロセスとTCP/UDPポートを検索(または非表示解除)します。 Linux/UnixとWindowsの両方をサポートしています...

使用されるテクニックの詳細については、Webサイトを参照してください。

http://www.unhide-forensics.info/?Linux

2
vaughank

正確ではありません。ほとんどのLinuxには、プロセスに関するさまざまな詳細を確認できる/ proc /フォルダーがあります。 1つは、バイナリとオープンファイルの簡単なマップを作成し、マシンのかなり明確なシステムプロファイルが得られるまで、このリストに手動で追加することができます。これをフックすることもできます(レポートをcronジョブに送信して、毎分または数秒ごとに実行します。)

もちろん、これには、実行中の各プロセスが実際に実行すること、およびプロセスがアクセスする必要があるファイルを理解する必要があります。といくつかの初期作業が必要になります

  1. 上記のアプリケーションを書く
  2. システムがまだ学習している間にプロセスをホワイトリストに登録します。

ネットワークアクティビティを監視するように拡張することもできます。

このようにして、あなたは自分が妥協したかどうかを少なくとも知るでしょう。

0
Damian Nikodem