2006/11/15

キャラロック導入〜

BOTキラーにもなりうる待望の機能がきましたね! といいたいところですが調べてみると…

  • サーバからキャラロック関連で受信するパケのOP: 0x023e
    • type0: キャラロックのパスワードの変更応答
    • type1: キャラロックのパスワードの送信要求
    • type2: キャラロックのパスワードの変更成功通知
  • それに応答して送信するパケのOP: 0x023b
    • type2: キャラロックパスワードの変更内容の送信
    • type3: キャラロックパスワードの送信

そんなわけで、一回キャラクターパスワードを設定すれば、あとは普段は0x023eのtype1がきて、それに0x023bのtype3で暗号化したキャラロックパスワードのパケットを送信するという形になるのですが、この暗号化したキャラロックパスワードのパケットが毎回固定だという…。

たとえばこの暗号化したキャラロックパスワードのパケットが、毎回変わるとかいう仕組みになっていれば、BOTは毎回サーバからの要求に応じて自前でなんとかしてこのキャラロックパスワードの暗号化パケットを作り出して送らなきゃならないので大変なんですが、これがかわらないので1回このパケットを抽出したらあとは常時コレを使って機械的にログイン可能。

ってことは、今までのようにトロイをしかけられてこの暗号化したキャラロックパスワードのパケットを抜き取られてしまうと今までどおりにアカウントハックされてしまう可能性が残っているーというお話。うーん…。

これが、毎回サーバから暗号化の種が送られてきて、その種で暗号化したパケットじゃないとキャラロックをはずせないというような仕組みになっていれば、たとえトロイを仕掛けられてアトラクションIDとそのパスワードがキーボード入力の盗み見によってばれてしまったとしても、1回限りの暗号化パケットでは次の回では種が変わってログインできないという感じでいい対策になるんですけどね。

そんなわけで、今回のキャラロックパスワードについては「BOT対策にもなってなけりゃあんまりアカウントハック対策にもなってない」といったところでしょうか。まぁ無いよりはマシですけどねー。ログインするのは面倒になったことを考えると個人的にはセキュリティリスクを残したまま不便さだけを向上させた駄対策ですが。

ちなみに一応開発側の肩をもっておくと、「毎回seedを変えた暗号でパスワードを送信してしまうとseedと暗号化パケットの大量のペアができてしまって、そこから生のパスワードが類推される可能性があるじゃないか」ということもまぁ否定できません。特に、今回のキャラロックで採用された暗号化方式は韓国製cryptonってやつらしく(私が確認したわけじゃないですが)、Wikipediaの信頼性の低い暗号アルゴリズムページによればそいつは弱鍵が存在しててそんなに信頼性が高くないらしいので、seedを変えまくると危ないのかも。

というわけで、結局の所アカウントハックの一番の対策は「あやしいURLを踏んでトロイとかにかからない」ってことでしょうかー。最近は「○○は移転しましたー。新しいサイトはこちら」みたいに踏ませるとか、そんな感じで手口がどんどん巧妙化してる感じなのでみなさんも気をつけてくださいねー。

うされもん @acidlemonについて

|'-')/ acidlemonです。鎌倉市在住で、鎌倉で働く普通のITエンジニアです。

30年弱住んだ北海道を離れ、鎌倉でまったりぽわぽわしています。

外部サイト情報

  • twitter
  • github
  • facebook
  • instagram
  • work on kayac