2012-10-25 9 views
5

シグネチャスキャンに基づいてマルウェア検出を作成しています。私が理解したように、主なアイデアは、スキャンしたファイルの署名とあなたのブラックリストの署名を比較することです。 HereシグネチャがMD5ハッシュのようなものであることがわかりましたが、どのようにファイルから取得できますか?そして、他の種類の署名がありますか?シグネチャマルウェア検出

+0

[シグネチャスキャン](http://stackoverflow.com/questions/13152150/signature-scanning/13197718#13197718) –

答えて

1

MD5ハッシュは、ファイルの内容のダイジェストです。あなたがMD5ハッシュのブラックリストを持っているなら、あなたはそれらとファイルを比較することができます。私はこれがマルウェアをスキャンする非常に単純で壊れやすい方法を表していると思いますが、間違いなくスタートです。 MD5ハッシュを比較すると、2つのファイルが正確に同一であることを認識するだけなので、これは壊れやすくなります。悪意のあるファイルに任意の種類のランダム性が導入されると、このスキャン方法は役に立たなくなります。

ほとんどの言語には、MD5ハッシュを生成する標準的な方法があります。 C#、VBとVC++はMD5クラスを使用することができ、PHPは(最初の引数として「MD5」を使用して)hash機能を持っている、JavaであなたはMessageDigestを持っている、など

可能性があり、他の利用可能なhashing algorithmsの数があります。この目的のために使用される。特定のアプリケーションではMD5が欠けていることが示されています。そのため、SHAアルゴリズムはこれらのアプリケーションにとって非常に標準化されています。このアプリケーションでは、悪意のある攻撃がマッチを作成しようとしますが、マッチを防止しようとするのとは反対に、MD5などのハッシュ標準アルゴリズムは、偽陽性がないことを合理的に保証するのに適しているはずです見られる。

0

Javaでメッセージをdiggestingするには、MessageDigestを使用できます。 javadocによると、MD5、SHA-1、SHA-256をサポートしています。