ホームページビルダ「パスワード付きリンク」アタック結果

 2/14の嫁候補十数人(+匹?)によるチョコアタックから2日。やっと回復してまいりました。というのはおいておいて。ちなみに、現実ですか?0ですよ?^^

概要

 ホームページビルダには、「パスワード付きリンク」という機能があるそうです。

 まあぶらぶらとネットサーフィン(死語)していたら偶然見たページだったんですが。

 ページ内に書かれている言葉にすぐ目が行きました。

一応暗号化が施されているとは言っても、その筋のプロにかかればあっという間に解析されてしまいます。

 ホントか?あっという間に解析できるようになれば私も「その筋のプロ」になれるのか?

 というわけで、ここ数日間に渡ってアタックした結果を示します。ホント単純だなぁ。。。

#こういうのって解析っていうの?解読じゃ?

 なお、ページ製作者の方は一番最後だけ見ればいいと思います。

アルゴリズム

 まあ詳しく説明してもしょうがないのではしょりまくります。例には上記ページのサンプルを用います。

password2.html1q2w3e4r5t
(ジャンプ先URL)(パスワード)

という文字列を同じパスワードで暗号化してあるのがHTMLに埋め込んであります。

 認証時にはその暗号化してある文字列を、”CheckPassword80.js”というモジュールを用いて、入力されたパスワードで復号化します。そして最後のパスワードの部分を比較するわけです。正しいパスワードで比較すれば一致し、ジャンプ先URLも一緒になりますよね?よね?

 パスワードが一致したら、ジャンプ先URLにとばし、結果認証が出来る、とこういう仕組みになっています。

解読するプログラムを書く。(ブルーフォース+α)

 プログラムをかなり最適化して、人間的な推理も加えていかないと、不可能です。その場合もせいぜいパスワード11~2文字くらいまでが限界。数週間動かし続けてもいいならさらに1文字かな、というレベル。そこら辺のテクニックはすいませんが公表できません。が、そんなに難しいテクは使ってません。

 数学的に確定する方法は無い・・・と思うのですが・・・あるかもな・・・・。

しかし問題が発生

 違うパスワードでも、この認証を突破する可能性がとってもあります。以下はほんの一例です。実際には1万通り以上あります。

(パスワード)->(URL)
1q3v3e4r5t->passwosc2.html
1q4u3e4r5t->passwotb2.html
1q5t3e4r5t->passwoua2.html

 試してみればわかりますが、これらのパスワードでも認証に成功します。が、復号化されてでてくるURLは異なるため、404 Page Not Foundでエラー画面となります。

 そうなんです、この認証、攻撃者からすれば「ユーザが入力したアドレスに飛ばす」†1認証形式と大差が無いんです。

 しかも、ブルーフォースアタックをかけるプログラムを書いてみるとわかるんですが、この偽だけど通っちゃうパスワードは、正解のパスワードと同じ文字数で探索しているときに最も検出されます。

 つまり、文字数が分かり、しかも答えの傾向も大体分かっちゃうんです。あとは人間が推理力を使えば・・・わかりますね。

「パスワード付きリンク」を安全に使うために

 そもそも使わずにCGIやBASIC認証でも使う方が安全です。JavaScriptなら「ユーザが入力したアドレスに飛ばす」形式の方がよっぽど安全です。入力し間違えるとエラーページになってしまうのが頂けませんけどね。どうしても使いたい、というのであれば、以下のような使用方法がおすすめです。

 なお、この方法をとってもクラックされる可能性は十二分にございます。ご了承ください。その際は責任をとりませんし、取れません。

 ですが、新しい情報が分かり次第更新させていただきますので、何か良いアイデアを思いついたときはご連絡ください。

パスワード

  • 20文字以上推奨(私の思いつかなかった短縮テクがあるかも、ということで。)
  • そして出来うる限りランダム(最後は推測です。)

 以下に書くようにURLも工夫すれば、10文字程度にすれば十分な強さと思われますが、油断は禁物です。

URL

  • URLもできるだけランダムに
  • http://からはじめない(推測させない)
  • 拡張子で終わらせない(推測させない)

 つまり、ランダムな名前のディレクトリにリンクを張れば良いわけです。

 URL部分で判定しないので、こちらは長くなくても大丈夫です。

感想

 わたしは、「その筋のプロ」に、なれましたか?(ミナミノミナミノっぽく。

 「イリヤの空、UFOの夏」や「猫の地球儀」に比べて大分キャラクタ小説らしくなったなーと†2。すこし、残念です。終わり方も超適当っていうかアレだし><

 あれは続編書く気無いとしか思えないエンド。。。。

 そういえば、田舎描写が「ひぐらし」に似てますね。「ファスト風土化する日本†3」が言うにはもう地方も都市も差が無い、ということなので、こういった事は有り得ないんでしょうなぁ。

 あれ?本の感想になってる><

追記 01:00

 同じような話題ということで。

 Haeeeee!!!!!11111112

#ところで、「復号化」の漢字違うよ><

ハックしたわけでもなく、クラックしたわけでもなく、リバースエンジニアリングでもなく、「arnezami」はHD DVDとBlu-rayがメモリに読み込まれて再生される際の、そのメモリ上の動きを目で追うことでキーを見つけだしたというのがポイント。

 ちょwwwwwwすげええええwwwwwwwwwありえねぇえええええええええwwww

#でもそういうのをHackって言うと思うんですが。まあ逆アセンブラ使わない時点ですごすぎ><

 ここまで速いと、何の意味があるんですかね。うん。株主への説明?「今回こそは大丈夫」って。というか、もしかして、arnezamiは中の人?そうじゃないかとすら思えてくる速さ。キーを変えられるらしいですが、一回とけたら後は同じように解けるはずで・・・。

 とおもったら、ハカーの名前の暗号化も完全突破されてました。逆から読むと「今全裸」w

 に、日本人か!?こういうのって日本人は無力だと思ってたんですが。

  • †1: つまりページのアドレス=パスワード
  • †2: 「イリヤっぽいの」といわれて書いたらしいので、当然かもしれませんが。
  • †3: 今まで読んだところの要約:「昔は良かった」

RAY-KUDRYAVKA X 前期のBGMを抜き出すツール

 秋葉原に行く予定があったので、当然夜逃げのサクセス現場見てきました。

 PCサクセスには行ったことが無かったので、そこらへんの店員に聞きましたが、「閉まってますよ」と神妙な表情で場所を丁寧に教えてくれました。聞いてすいません。

 やっぱり人が集まってましたよ。「やっぱ集まってたかwwww」って言いながら写メールとってる人とかw

説明

 個人的にイチオシなゲームのひとつ、 RAY-KUDRYAVKA X 前期のBGMを切り抜きます。何のことは無い、単にEXEファイルからOGG形式のBGMを切り出すだけのプログラムです。しかもファイル位置全部打ち込んである超頭の悪い。

 Javaで書いてあるので、俺Linuxだから遊べなくて悔しい、というような人もBGMだけは楽しめます。

ダウンロード

動作環境:Javaが動作するすべての環境

使い方

 中のreadmeを参考に。

余談

 Cで書いてリソース取得した方が早かった気がする。でも特定OSでしか動かせないソフト嫌いだから使わない><

 いやあ、ホントは他のシリーズもRAY-KUDRYAVKA heXaまで(たぶんレイクドリャフカ?も)なら抜き出せました。XORでちょこっと暗号化かけてあるだけで、そんなに難しくないと思います。練習に最適。暗号化もおなじ手順でいけるので、BGMの差し替えも可能。これ以上あってるBGMを探すのも大変だと思いますけどね~。

 が、なんか公表したらヤヴァイ気がするので無しということで><

 個人的に言ってくれればもしかすると・・・ごにょごにょ。