マスターパスワードを導入したFFFTPでパスワードを復号化する方法


投稿日:2013年11月30日
  • 2
  • 0



以前と同じ方法でパスワードを復元することができない!

ffftp_masterpass

思うところがあり、FFFTPから別ソフトに乗り換え作業をしていました。
ほとんどのサイトはkeePassで管理していたので、スムースにいきましたが、ある問題が…。

あるサーバのパスワードが分からない…


新しいFFFTPでもパスワードを複合できる方法を探す

まず「以前の投稿」で解説した方法でパスワードの復号化をしました。設定をiniファイルに書き出し、変換。…しかし、謎の文字化け。

どうやら新しいバージョンのFFFTPではマスターパスワードの導入により、パスワードの管理方法が刷新されたようです。通常のFFFTPの暗号化と、マスターパスワードによる暗号で二重になっているようです。

なんとか新しいFFFTPのパスワードを復号化できないか検索したところ、「イントフロート スタッフブログ」にて「FFFTPのパスワード解読(マスターパスワード対応版 AES)」という的を射た記事を見つけました。

私の環境では「サクッと実行!」という訳にはいかず、コードを利用するにあたり、いくつか下準備が必要だったので、メモを兼ねて導入方法を解説します。

Parlをコマンドプロンプトに導入する方法

Windowsで上記のコードを実行するにはコマンドプロンプトでParlを実行する必要があります。

そこで必要になるのが以下の2つの作業です

  • 1.プロンプトでPerlを使えるようにするためにActivePerlの導入
  • 2.「CBC」と「Rijndael」モジュールのインストール

コマンド等に不慣れな方には敷居が高いかもしれませんが、一つ一つの作業は至って簡単です。上から順番に設定していってください。


プロンプトでPerlを使えるようにするためにActivePerlの導入

Perlをコマンドプロンプトで実行するには、「ActivePerl」を利用するのがお手軽です。

ActivePerlのダウンロードとインストール

ActivePerlの公式ダウンロードページ」で環境に合わせたバージョンをダウンロードしてください。
私の場合はwindowsの32bitなので、「Windows (x86)」をダウンロードしました。

ffftp_masterpass01

ダウンロードしたインストーラーを使ってインストールします。
途中でインストールするディレクトリを聞いてくるのでデフォルトの「C:\Parl」のままインストールします。

ffftp_masterpass02

また途中で「Add parl to the PATH…」というチェックボックスがありますが、これもデフォルトのチェックが入った状態で次へ進んでください。
これは、どこからでもparlが使えるようにする項目です。もう一つのチェックボックスは「.pl」ファイルとActivePerlを関連付ける項目です。

ffftp_masterpass03

これでActivePerlの導入は完了です。

ActivePerlの動作確認

スタート > ファイル名を指定して実行」で「cmd」と入力。コマンドプロンプトを立ち上げます。

以下のコマンドを入力してPerlのバージョンをチェックします。

> perl -v

以下の表示が出力されれば、ActivePerlが正しくインストールされています。

This is perl 5, version 16, subversion 3 (v5.16.3) built for MSWin32-x86-multi-t
hread
(with 1 registered patch, see perl -V for more detail)

Copyright 1987-2012, Larry Wall

Binary build 1603 [296746] provided by ActiveState http://www.ActiveState.com
Built Mar 13 2013 11:29:21

Perl may be copied only under the terms of either the Artistic License or the
GNU General Public License, which may be found in the Perl 5 source kit.

Complete documentation for Perl, including FAQ lists, should be found on
this system using "man perl" or "perldoc perl".  If you have access to the
Internet, point your browser at http://www.perl.org/, the Perl Home Page.

「CBC」と「Rijndael」モジュールのインストール

今回実行するコードで使う「CBC」と「Rijndael」というモジュールは、デフォルトでインストールされていないため、追加する必要があります。

ActivePerlではモジュールをダウンロード・インストールしてくれる便利なコマンドが用意されています。

以下のコマンドを入力して「Perl Package Manager」を起動します。

> ppm

起動したらまず、メニューにある「View」から「All Packages」を選択。

ffftp_masterpass04

検索用の窓にインストールしたいモジュールを入力します。今回の例では「CBC」。すると項目が表示されるので目的のモジュールを選択します。

ffftp_masterpass05

項目を右クリックすると「Install …」と表示されるのでクリック。

ffftp_masterpass06

するとインストールをクリックした項目に緑色の印が付いているのがわかると思います。その状態で「右矢印のマーク(Run maked actions)」をクリックします。

ffftp_masterpass07

するとインストールしてよいか尋ねるアラートが表示されるので「OK」をクリック。

ffftp_masterpass08

インストールが完了すると、灰色だったアイコンがベージュになります。これでインストールできました。

同じ手順で、今度は「Rijndael」もインストールしてください。

必要なモジュールのインストールが終わったら、メニューから「file > exit」でPerl Package Managerを終了させます。

昔はCPANでモジュールを検索して、手動で導入していましたが、便利になりました。
もちろん今でもCPANを使ってインストールすることもできます。


コマンドプロンプトでPerlを実行

それでは「FFFTPのパスワード解読」のページの中程にあるコードをテキストエディタ等にコピー・ペーストしてCドライブ直下の「C:\」に保存します。(もちろん他の場所でも構いませんが、その場合は適宜解説のパスを読み替えてください)

ファイル名は解説に合わせて「decode_ffftp_password.pl」とします。

コマンドプロンプトでディレクトリを移動

> cd C:¥

ファイル名を入力

> decode_ffftp_password.pl

するとFFFTPのパスワードを聞かれるので、iniファイルに記載されたパスワードを入力

FFFTP Password : 0Ca896fcc883f6ec724ab2ef2f7fccd9a4:e13ebcfd1d726f3587d5b79d54dbe53aba601b29f8785902169c90a3f5166040

パスワードの場所は「HostAdrs=example.com」というホスト名で判断すると解りやすいと思います。そのすぐ下にある「Password=」の後に続く文字の羅列が暗号化されたパスワードです。詳しくは「以前の投稿」を参照してください。

今回は「イントフロート スタッフブログ」で提示されているサンプルをそのまま使わせていただきます。

FFFTPを起動するときに入力するマスターパスワード求められるので入力

Master Password : foobar

上記のサイトで解説されているように、特にマスターパスワードを設定していない場合は「DefaultPassword」と入力してください。(この状態での運用は非常に危険なので適切なマスターパスワードを設定することをお勧めします)

すると以下のパスワードが復号化されるはずです。

testpassword

以上でマスターパスワードを導入したFFFTPのパスワードを忘れた場合でも、パスワードを復号化することができるようになりました。

有益な情報を掲載されている「イントフロート スタッフブログ」さんにはこの場を借りてお礼をさせていただきます。


現在のページを共有する



現在のページに関連する記事

マスターパスワードを導入したFFFTPでパスワードを復号化する方法 旧環境のバックアップファイルからFFFTPの設定をコピーする方法
マスターパスワードを導入したFFFTPでパスワードを復号化する方法 本気で作りたい人向け、WordPressプラグインの作成方法
マスターパスワードを導入したFFFTPでパスワードを復号化する方法 Google Fontsの日本語フォント「Noto Fonts」の使い方
マスターパスワードを導入したFFFTPでパスワードを復号化する方法 手軽にデータをグラフ化するGrowthForecastのインストールと使い方
マスターパスワードを導入したFFFTPでパスワードを復号化する方法 ImageMagickをWindowsのXAMPPに導入する方法
マスターパスワードを導入したFFFTPでパスワードを復号化する方法 インストールだけじゃない!yumの設定から便利な使い方まで徹底的に解説
マスターパスワードを導入したFFFTPでパスワードを復号化する方法 Nginx 1.6.2にngx_cache_purge 2.3組み込むんでコンパイルする方法

おすすめの記事

Mac OS 9時代のIDE接続のHDDをMacDrive 10を利用してWindows 10で読み込む方法

Mac OS 9時代のIDE接続のHDDをMacDrive 10を利用してWindows 10…

シンプルなスパムコメント対策プラグイン「Simple AntiSpam」を作成しました

シンプルなスパムコメント対策プラグイン「Simple AntiSpam」を…

WordPressでアイキャッチ画像をサムネイルとして一覧ページに表示する方法

WordPressでアイキャッチ画像をサムネイルとして一覧ページに表…

iptablesの設定ファイルをシェルスクリプトを利用して動的に作成

iptablesの設定ファイルをシェルスクリプトを利用して動的に作成

WordPressの新・旧ループからカスタムクエリ・アーカイブまで徹底解説

WordPressの新・旧ループからカスタムクエリ・アーカイブまで徹…

ImageMagickをWindowsのXAMPPに導入する方法

ImageMagickをWindowsのXAMPPに導入する方法

サーバで管理していたWordPressをローカル環境に移行する方法

サーバで管理していたWordPressをローカル環境に移行する方法

公式ドキュメントよりも詳しいTinyMCEの使い方(基本編)

公式ドキュメントよりも詳しいTinyMCEの使い方(基本編)


いただいたコメントなど

  1. k-yoshida のコメント:

    FFFTP Ver1.98f を使用中です。
    接続用パスワードが分らなくなり、大変困っておりました。
    このページを見つけ、早速実行していたのですが・・・
    「CBC」と「Rijndael」モジュールのインストール
    までは順調に進みました。
    が、cd C:\
    c:\>decode_ffftp_password.pl
    と入れましたが、
    ’decode_ffftp_password.pl’は、内部コマンドまたは外部コマンド、
    操作可能なプログラムまたはバッチ ファイルとして認識されていません。
    とでて実行できません。
    使用環境:windows7 64Bit

  2. k-yoshida のコメント:

    上記、PC再起動を実施したら動きました。
    お騒がせしました。

    • oxy のコメント:

      違う環境でのテストはしていないので、
      無事に実行できたようで良かったです。

  3. くまごろう のコメント:

    とてもわかりやすく解説してあり助かりました!
    ありがとうございました!

  4. qwerty のコメント:

    すごく困っていたことが解決できました!ありがとうございました!

  5. kouichi のコメント:

    パスワードの復旧のため恥ずかしながらFFFTPから逆引きを思いつきました
    先に「FFFTPのパスワード解読(マスターパスワード対応版 AES)」に
    たどり着きPeal環境はLinuxも今はないし、、、と思いwindows perlで
    検索してActivePerlをインストールしました
    ソースプログラムを読み込ませると何やらモジュールの場所が示され
    そこから持ってきてというような英文表示で困り果てこのページに泳ぎ
    着きました。大変ご丁寧な説明で直ぐに失念していたパスワードに再会が
    出来ました。ありがとうございました。

    • oxy のコメント:

      長い漂流の旅の果てに当サイトに辿り着いたようで、お疲れ様ですw
      お役になてたようで何よりです。

  6. kyo のコメント:

    FFFTPのパスワードを解析する方法を求めて、こちらのHPにたどりつきました。
    ところがFFFTPのパスワード解読ページ
    http://maruta.be/intfloat_staff/148
    リンク先がなくなってしまったようです。

    こちらのHPでソースコードを公開(またはdecode_ffftp_password.plをダウンロード)していただけないでしょうか?

    • oxy のコメント:

      著作権はリンク先のブロクにあるので当サイトの一存でソースコードを公開することはできません。ご了承ください。

コメントを残す

コメントは認証制のため、すぐには反映されません。

プログラミングに関する質問は「日本語でプログラミングの悩みを解決するQ&Aサイト sukegra」をご利用ください。