メモ

超軽量Twitterクライアント「もふったー」コンシューマシークレットキー難読化最後の挑戦


Twitter公式クライアントなどのコンシューマキーが判明したのが原因でセキュリティ的に危険な状況に陥り、さまざまな被害が発生し始め、いかにTwitter公式の姿勢が良くないかを指摘することを目的として、Windows95以降でも動作する超軽量Twitterクライアント「もふったー」作者による以下のようなエントリーが公開されました。

2013年03月11日
TweetDeck をハックしたら予想以上に酷かった件 - Windows 2000 Blog

http://blog.livedoor.jp/blackwingcat/archives/1760823.html

「ためしに、 Tweet Deck でコンシューマキーとコンシューマシークレットキーが抜き出せるか試してみました」ということでいろいろ試した結果、実行ファイル自体をテキストエディタ、たとえばWindows標準の「メモ帳」でも開けば確認できることが判明。


エントリーの末尾にて以下のようにまとめることに。

でも、漏れたら新しく取得すべきって言ってるんだから、できるだけ漏れにくくしておくべきで、見本となるべき公式アプリが手抜きってのはまずいと思うんだな →振り出しに戻る


Twitter のタイムラインみてたら勘違いしてる人がやたら 多いので補足。

× Tweet Deckは危ないから使っちゃ駄目
◎ TweetDeck などのキーを抜いた悪質なソフトが公式クライアントを騙って認証を求めてくるケースがはやってるらしいのでうかつに 信じてはいけない & 安易な実装をして流出した TweetDeck にも責任があるんじゃないかい。

上ではなくて、下ってこと。

しかしその1週間後、今度はもふったー自身が標的になってしまい、「もふったーの作者が、TweetDeckがConsumer keyとConsumer secretを平文で持っていることを批判していたので、もふったーはどうなっているのか調べてみた」ということでいろいろされてしまう羽目に。

2013-03-18
もふったーをハックしたら予想以上に酷かった件 - kusano_kの日記

http://d.hatena.ne.jp/kusano_k/20130318/1363640368

「数分くらい。もふったーはTweetDeckよりしっかりしているけど、それでもその気になれば見つけられるわけで、別に平文で保存していても良いのでは? スペシャルねこまんま57号を使うのも、Immunity Debuggerを使うのも大差無いと思う」ということで、以下のようにして発見されるという事態に。


しかし翌日、もふったー作者は速攻で対応。

2013年03月19日
もふったーがハッキングされたので、本気でプロテクトかけてみた - Windows 2000 Blog

http://blog.livedoor.jp/blackwingcat/archives/1762970.html

TweetDeckの一件がある前から、もふーったは、簡単なハッシュしかかけてないので、メモリダンプしたら解析されるので、正式版で、コンシューマキーのプロテクト実装するって話をしてたわけですが、案の定ハックされたので、予定を前倒しにして、プロテクトかけたアルゴリズムを実装したバージョンに差し替えることにしました。

少なくとも、メモリダンプ程度の解析ではわからないようにしました・ω・

が、今度はその4日後、再び解析されることに。

2013-03-23
プロテクト強化後のもふったーも予想以上に酷かった件(追記あり)

http://anond.hatelabo.jp/20130323004725

「プロテクトかけたアルゴリズムを実装したバージョンに差し替え」たなんて言われると本当に「プロテクト」がかかっているのか確かめてみたくなるのが人情というもの。というわけで、プロテクト強化後のもふったー(v0.9.6b)からconsumer secretが抜けるか試してみた。結論から言うと、あっけなく取り出せた。以下に手順を記す。

で、もふったー作者は上記の件に対してその日の間に速攻で対応。

2013年03月23日
本気だったつもりのもふったーのデバッグ処理が残ってた件 - Windows 2000 Blog

http://blog.livedoor.jp/blackwingcat/archives/1763951.html


Twitter の HMAC の処理で ハッシュをかける時に、暗号化の分岐処理が3つあるんですが、最初の処理は難読化してたんですが、後の処理のデバッグ処理を外し忘れていたという失態。

うん、これは本当に ひどい…。


デバッガで、コンシューマキーが残ってないのは確認したんですが、まさかXORの内容が丸まる残ってる処理があるとは…。

これは、解析してくれた人に感謝しないといけないレベル。


というわけで、ちゃんと修正しました。
ありがとうございます ・ω・

というわけで、ちゃんと修正されたということで落ち着いたかのように見えたのもつかの間、同じくその日の間に以下のような追記が登場。

3/23 18:45追記

もふったーの作者から反応があった。「本気だったつもりのもふったーのデバッグ処理が残ってた」らしい(http://blog.livedoor.jp/blackwingcat/archives/1763951.html)。修正したとのことなので最新版(v0.9.6e)を見てみた。確かに若干変更されているが何の問題もない。SHA-1の呼び出しに中断点を設置して渡されているバイト列を見るだけ。

ということで、またしても超速攻で突破され、翌日の午前1時にはもふったー作者もこれに反応。

3/24 1:00追記 もっかい難読化破られたけど、ちょっと、一日で作り直した付け焼刃のコードじゃ、小細工しても無理なのでちゃんと対応する予定(一回破られたコード流用すると、どうしても処理辿られてしまうので …)
・ω・ しばらく待つがよい

そして3月25日(月)、ついに「最後の挑戦」が公開されました。

2013年03月25日
もふったーコンシューマシークレットキー難読化最後の挑戦 ・ω・ - Windows 2000 Blog

http://blog.livedoor.jp/blackwingcat/archives/1764533.html


これ破れるハッカーには対策はオンライン認証以外無理って所までやってみた。
後悔はしていない・ω・

果たしてこれでいたちごっこに終止符が打たれるのか、それとも……。

・関連記事
TwitterのAPI規制を回避できる公式クライアントのコンシューマーキー - GIGAZINE

Twitterのパスワードを抜き出すフリーソフト「TwitterPasswordDecryptor」 - GIGAZINE

無料でTwitter・Facebook・Evernoteなどのファイルをまとめてダウンロードしてバックアップ&フォルダーのように管理できる「SocialFolders」 - GIGAZINE

若い人の方が恐ろしく簡単なパスワードを使う傾向がある - GIGAZINE

もふもふしたことをツイートするためだけのサービス「もふもふ。」 - GIGAZINE

in ソフトウェア,   ネットサービス,   メモ, Posted by darkhorse