Gorilla Blog

I'm Japanese coke drinking IT infrastructure engineer based in Tokyo, Japan.

ブルートフォースでZIPのパスワードを解析してみる

あけましておめでとうございます。 初投稿です。

社会人になってからというもの、
メールでパスワード付のZIPファイルを送ることが日常的になってきました。
正直、パスワードを別メールで送るのは面倒です。
セキュリティ的にも分けて送るのがいいとは思いますが。。。

今回はそのZIPのパスワードがどれくらい安全なのかを検証してみたいと思います。
やることは簡単で、タイトルの通りブルートフォース(総当たり)でZIPファイルのパスワードを解析してみるってだけです。

使ったもの

今回は以下のツールを使用します。

Simple is the best.

準備

以下の要件でパスワード付のZIPファイルを作成しました。

  1. アルファベット
  2. アルファベット + 数字
  3. アルファベット + 数字 + 記号

※全て半角で文字数は4文字とします。

また、Pika Zipは以下の部分だけ設定を変えました。
他はデフォルトのままです。

f:id:tsunematsu21:20170101112731j:plain

f:id:tsunematsu21:20170101112732j:plain

検証

アルファベット

一瞬でした。
f:id:tsunematsu21:20170101114437j:plain
わずか3秒。

アルファベット + 数字

これも一瞬でした。
f:id:tsunematsu21:20170101114731j:plain
4秒。。。

アルファベット + 数字 + 記号

これも一瞬。。。
f:id:tsunematsu21:20170101114800j:plain
7秒。。。

4桁なんて何の意味もないですね。。。

パスワードですが、アルファベット + 数字 + 記号の組み合わせだと、

  • アルファベット...52文字 (小文字 + 大文字)
  • 数字.............10文字
  • 記号.............16文字 (/*-+.,!#$%&()~|_)*1
    52 + 10 + 16 = 78文字 になります。

4桁だと
78 ^ 4 = 37,015,056パターン ですね。

8桁だったら
78 ^ 8 = 1,370,114,370,683,136パターンです。

僕のPCで秒間6,400,000個のパスワードを解析できるみたいなので、
8桁だとだいたい6.8年ぐらいで全組み合わせを解析できるということになります。
もっと力強いマシンならもっと早く解析できますね。

まとめ

あまり短いパスワードはやめときましょう。

あと上で書いた組み合わせですが、桁数が固定の場合での値なので、
何桁か分からない場合は若干多くなるかと思います。
(4桁で 78 ^ 1 + 78 ^ 2 + 78 ^ 3 + 78 ^ 4 = 37495770パターン)
なので、あまりパスワードの桁数は口外しないほうがいいということですね。

*1:上で紹介したパスワード生成ツールが使用する記号