2011-12-06 9 views
2

私はマルウェアであると信じているコードを逆コンパイルしていますが、それが何であるか把握しようとしています。特定のウィンドウタイトルを検索し、そのウィンドウの名前を使用して残りの命令をデコードします。私は、通常のウィンドウタイトル(メモ帳、ドキュメント1 - Microsoft Wordなど)のリストを実行して、右のウィンドウタイトルを提示してみました。私はPythonでそれが使用するハッシュを書き換えてきたタイトルのハッシュ値を使用して特定のウィンドウを見つける

def encode(inStr): 
    a = 0x133F00D 
    i = 0 

    for j in inStr: 
    temp = ord(j)*8 * ((i << 0xC)+1) 
    a = a^ temp 
    i = i + 1 
    print hex(a) 

と私は私の値0x2227205を与える文字列を探しています。ハッシュ関数を見ると、それは1つの方法であり、衝突しているように見えます。どのようなウィンドウタイトルを取得しようとしているかを知る良いアプローチは何ですか?一般的なウィンドウタイトルのマルウェア防止サイトのリストはありますか?辞書攻撃を実行すべきですか?最善のアプローチは何ですか?

+0

マルウェアの作成者がコードを難読化しようとしている場合は、共通のタイトルの辞書でウィンドウタイトルを見つけられないと思われます。タイトルを目に見えるようにもっともらしいが推測が難しい。誰かがこのマルウェアを以前に見つけて公開していない限り、あなたはブルートフォース検索に悩まされているかもしれません。 – Dave

答えて

0

ウィンドウタイトルの長さが十分長い場合は、ブルートフォース攻撃では見つからず、ハッシュに一致するタイトルを見つけるのに役立たないかもしれません。マルウェアは、自分自身の別のインスタンスが存在するかどうかを確認することができます。

私は、VMやさらに優れた専用コンピュータ(おそらくネットワークがないか、偽のネットワークで活動を確認する)でマルウェアを実行することをお勧めします。次に、そこにハッシュと一致するウィンドウがあるかどうかを調べることができます。

もしあなたがそのpythonコードに固執すれば、マルウェアと同じオーバフロー挙動(特に整数の長さ)があることを確認してください。

関連する問題