SSブログ

カスペルスキーのハッシュの元の名前を教えてくれ的なやつ [プログラミング]

コードを書こうかと思ったが、よく読んだら書くまでもなかった

https://www.securelist.com/en/blog?weblogid=208193781

アメリカとイスラエルが開発したとされるスパイウェア「Gauss」のハッシュがわからんので教えてくれというのが発端

Validation

・%PROGRAMFILES%にあるフォルダを列挙する
 大抵は「c:\Program Files」 のUnicode
・1文字目が0x007A以下は除外
 Unicodeで'z'を表す。つまりASCII以外の文字を含むフォルダだけをターゲットとする
 AMDとかWindows~というのは除外される
・パス+フォルダ+Salt を作る
 Saltは16バイトでハードコードされている?
 Unicodeだけだと半分は0になっているので解読されやすいかもしれないのでそれを考慮してSaltを追加?
・md5を1万回計算する
 hash = md5(hash)
 1回だけだとすぐバレるので追加。
 MD5を使っているのは実装が簡単、軽量だから?
・ハードコードされた値と一致したらOK

復号のほうもにたようなもん。なぜかWindowsのAPIを使ってるが、理由は不明。

で、パスとフォルダで何百万という組み合わせをためしたがダメだった。のでわかったら教えてくれというのが課題。

まあ、普通の人なら自作コードでサンプルが一致するのを確認するのがせいぜいだろう。

サンプルが確認できるコードを書いて、元ネタのパスを探すのがいかに難しいかをまとめると夏休みの自由研究にはいいかもしれない。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。