web-dev-qa-db-ja.com

Clamavはエンコードされたウイルスファイルを検出できません

PHP shellerファイル(c99ファイルのような)がありますが、次の関数でエンコードされています:

eval(gzinflate(base64_decode("7P3rehblahblah"))

Clamavウイルススキャンでは検出できません。そのようなウイルスやシェラーを検出するにはどうすればよいですか?

3
Jason

ClamAVは、phpシェルを識別するための正しい製品ではない可能性があります。これは、シェルをエンコードする方法が無限にあり、PHPコードを理解するように調整されていないためです。

悪意のあるphpコードを検出するためにさらに調整された他のテクノロジーがあります。 Emphosha は、phpプリプロセッサを理解する1つの代替手段であり、コードを難読化するために使用されると考えられる関数に基づいて警告を発することができます+既知のシェルを検出できます。

4

シグニチャベースのマルウェアディテクタは、利用可能なシグニチャのデータベースと同じくらい優れている場合があります。これは、そのような製品のベンダーにとって素晴らしいビジネスモデルになります。データベースは、新しいマルウェアをサポートするために常に更新する必要があります。ヒューリスティックベースのマルウェアスキャナーを作成することは本当に難しいです。私がこれまで徹底的に調べたものは、ゼロデイエクスプロイトをさらにカバーしますが、それほど多くはありません。

悪いものを見つけようとする別のアプローチは、ホストベースのIDSを使用して良いものを追跡することです。これは、展開プロセスに組み込む必要があります。さらに、データと見なされるアーティファクトには適用できません。CVE-2014-8449またはCVE-2016-8332を検討してください。ほとんどのサービスは、ある種のデータの変換または格納を実行するため、データを取り込むように設計されています。 IDSは、通知されていないコンテンツを検証することはできません。

ファイル署名の追跡の概念に対する拡張機能は、信頼できるプラットフォームを実行しています-すべての実行可能ファイルは実行前に署名をチェックする必要がありますが、これは計算コストが高く、メンテナンスの労力が高く、この市場の主なプレーヤーはそれをそれらの独占を保護するためのメカニズム-そして、データと見なされるアーティファクトにカバレッジを完全に拡張できないことがよくあります。

さらなる考慮事項は、インラインコンポーネント(および一部のオフラインコンポーネント)が攻撃対象領域を増やすことです。悲しいことに、箱に「セキュリティ」と書かれているからといって、製品にボルトを付けるとシステムに脆弱性が追加される可能性があります。

最も厳密なソリューションは、IDSと共に署名/ヒューリスティックスキャナーの組み合わせを使用することです。

0
symcbean