> I spent more time experimenting with different versions of MSVC compilers and different source codes and compiling options...
した結果、
> So, we can say with a high degree of certainty that the resulting binary was compiled with MSVC 2008 and options /O1 /Ob1 and the input source code was pure C.
何故? (スコア:0)
仮にもマルウェア解析のプロである人間がVC++で生成されたコードなんて極めてスタンダードなものがわからなかった理由が気になる。
Re:何故? (スコア:3, 参考になる)
ひとくちにVC++といってもバージョンやコンパイルオプション(特にオプティマイザ?)でコードが変わると予想されるので、そんなに簡単に断定できなかったのではないでしょうか。
ブログには、寄せられたコメントをてがかりに
> I spent more time experimenting with different versions of MSVC compilers and different source codes and compiling options...
した結果、
> So, we can say with a high degree of certainty that the resulting binary was compiled with MSVC 2008 and options /O1 /Ob1 and the input source code was pure C.
との記述がありますし。
# GCCはひきあいにだされてるけど、Borlandは???
Re:何故? (スコア:3)
コンパイルオプションでずいぶん変わりますよね。
当該コードの逆アセンブルの結果には、C/C++系の何か、で書かれたっぽいところはあります。
最近は最適化が強力なので、そこから先の何かのレベルになるとわかりづらいんでしょうね多分。
# 昔はアホアホコンパイラが多かったから、わりとわかりやすかったんだけど
Re: (スコア:0)
Re: (スコア:0)
>ひとくちにVC++といってもバージョンやコンパイルオプション(特にオプティマイザ?)でコードが変わると予想されるので、そんなに簡単に断定できなかったのではないでしょうか。
そんなこと言ったら、ほとんどのプログラムで作成されたコードが「簡単に断定できない」ってことになるんだが。
Kaspersky Labsの人が単なる素人だった、ってレベルの話でもないだろ。
Re: (スコア:0)
今回の場合は、独自OOフレームワークが難読化にはからずも貢献したという話だ
Re:何故? (スコア:2)
# いやすごいいっぱいいるけど
Re:何故? (スコア:1)
実はCって知ってたけど、作者を特定するための情報集めにみんな釣られたんじゃね?
Re:何故? (スコア:1)
前のストーリーには
> C++のラインタイムライブラリやSTLの関数が含まれているものの、半分近くにあたる部分はどのような言語で作成されたのか分からないという。
って書かれてるから、少なくとも半分がVC++だったってのは最初からわかってたんじゃないの。残り半分にはどんな未知の言語が使われているのかと思ったらそんなものはなかったぜ! と。