パスワード解析との戦い~多重化で解析困難にする

 当館で配布している情報管理ツールInfoStudioのパスワードが解析されてしまった。最初はユーザーの誰かがパスワードを故意に拡散したと思ったが、調べてみるとパスワードを解析して互換パスワードを作られていた。パスワードを強化してもすぐに解析されてしまう。

 どうやったらパスワードの解析を防ぐことが出来るのか。今回はその対策を検討して一つの答えを見つけたので、ご紹介する。

 

パスワードが解析されると何が起こるか

 パスワードが解析されてそれが拡散すると、ダウンロードのカウントやサイトのアクセス数が不自然に跳ね上がる。これで解析されたことを知ることができた。

 ネット上にはソフトの解析を請け負い、結果を公開している掲示板がある。ここに自分のソフトのパスワードが公開されていた。こういう情報はソフト作者には知る由もないが、こっそり教えてくれた人がいた。

※裏で流れているパスワードのことを通称「しり」「尻」「裏尻」「シリアル」などと呼ぶ。シリアル掲示板の入口は隠されていて、入り方にコツがある。

 

パスワードの強化は無駄に終わる

 パスワードが解析されたら対策を考えなくてはならない。私は、解析されるたびにパスワードを長くしたり、ライセンス認証の仕組みを複雑化させるなど対策したが、何をしても突破されてしまった。

 どうやら、パスワードや認証の仕組みを作る作業に比べ、解析する方がずっと簡単のようだ。絶対に解析されないパスワードを作るのは、かなり困難といえる。

 

多重防壁にする

 私は、解析されないパスワードを作ることは諦めて、解析に時間と手間がかかる仕組みに切り替えた。

 多くのソフトは、最初の認証を突破されると終わり。つまり最初に突破しにくい防壁が1枚だけあり、それさえ突破すれば、すべて自由にできる形になっている。

 そこで、多重防壁にすることを思いついた。これは最初の防壁を突破しても、しばらくすると次々に新しい防壁が現れる仕組みである。

 

多重防壁の例

 例えば、1kBのランダムなバイナリーコードを作ってそれをパスワードファイルにする。そして、そのコードの異なる一部分だけを参照して整合を調べる防壁を多数用意しておく。

 次に、防壁が出現するトリガーを決める。使用時間(数カ月~1年)、起動回数、特定の機能を特定の手順で踏んだときなど、いろいろ仕組んでおく。

 つまり、最初の防壁が解析されても、それは全体の一部。解析する人の多くは最初の防壁を突破出来たら満足しそれ以上の解析をしない。これによりガードに成功する。

 

見防壁の存在を見えないようにする

 ほとんどのソフトでは、防壁が突破できたかどうか(ライセンスが正常に認証されたか否か)が、見える形になっている。

 ライセンスが認証されていないと、「正規ライセンスでない」旨メッセージが出たり「試用中」などと表示する。解析する側もこのメッセージを頼りに認証部分を解析していると考えられる。

 多重防壁では、最初の認証を突破された時点でこれまで同様「試用中」の表示を消す。しかしそれが正しいライセンスコードでない場合、しばらく使い続けると次の防壁が出現する。

 2つ目の以降の防壁では、何もメッセージを出さすに、ソフトの一部機能を制限するなどする。この防壁がいつそれが出現したのか、どういう条件で出現したのかが、ほとんどわからない。一見、ソフトのバグのようにも見える。

 

解析を逆手にとって売り上げに貢献させる

 防壁出現による機能制限の内容は、気づきにくい障害が増えたり、やや調子が悪いと感じさせるたぐいもの。少し不便だが、使おうと思えば使うことができる

 これによって、不正使用を続けているユーザーに「やっぱり送金が要るのかな」と思わせることでる。作者にとってこの結果は、試用期間が延びただけと考えることができ、解析されても気にならない。

 防壁の一部が解析されて公開されるとアクセスが増えるから、利用者が増えるきっかけにもなる。

 

多重防壁の解析は、おそらくされない

 解析する側からすると、「突破されたフリ」をされて、よくわからない条件で次々に防壁が現れる仕組みは厄介だと思う。

 発見も出現条件も不明な防壁がどのくらい仕組まれているのか、見当もつかないのでは「素直に料金を払って使った方が良い」と思うのではないだろうか。

 

最後に

 InfoStudioでは多重防壁を実装して以降、解析されることがなくなった。パスワード解析の対策は、解析を不可能にすることではなくて、解析のメリットがそれをする労力に見合わなくすれば成功である。

 

<関連商品>
InfoStudio 「超」整理法で紹介されている「押し出しファイリング」をパソコンで実践できるようにしたソフトです
ソフトウェアのセキュリティ対策 セキュリティ対策も同じ考えが適用できるとよいのですが