Skypeのリバースエンジニアリング資料『Silver Needle in the Skype』

http://www.blackhat.com/presentations/bh-europe-06/bh-eu-06-biondi/bh-eu-06-biondi-up.pdf

ぜんぜんタイムリーな話題じゃないけど、年越しでうだうだしてるときにitojunさんから教えてもらってSkypeリバースエンジニアリングしてみたという人の報告を読みました。去年のBlackHatで発表されていたらしい。
で、ざざっと眺めてみたんだけどこれがもうすごいのなんの。とにかくSkypeの開発者たちはタダモノではないということがわかります。コードとプロトコルの隠蔽のためにあの手この手を尽していて、そこそこモダンな暗号(解読)技術と古き良きプロテクト(外し)技術の両方がせめぎ合ってむちゃくちゃ面白い。それを解明しようとする発表者たちもすごいですが。
となると当然期待されるように、解析防止のためのトラップもそこらじゅうにちりばめてあります。例えばコードの実行時間を計測して、不自然に長いとdebuggerでbreakpointを仕込んであると見做す、などなど。プロトコルも解析していますが相当めんどくさい暗号化をやってます。もちろん私には全部は理解できません。
若いときにプロテクト外しに夢中になってた人はたぶん気に入るでしょう。PDFだけどslideから少し引用。

Conclusion

  • Good points
    • Skype was made by clever people
    • Good use of cryptography
  • Bad points
    • Hard to enforce a security policy with Skype
    • Jams traffic, can’t be distinguished from data exfiltration
    • Incompatible with traffic monitoring, IDS
    • Impossible to protect from attacks (which would be obfuscated)
    • Total blackbox. Lack of transparency.
    • No way to know if there is/will be a backdoor
    • Fully trusts anyone who speaks Skype.