31

最近、vimの:X暗号化機能を使用してエンジニアリングログを暗号化することにしました。パスワードを書き留めましたが、ファイルを復号化すると意味がわからなくなったため、スペルを間違えたり、混乱したりしたようです。さらに悪いことに、私のバックアップはすべてなんらかの形で破損しています(質問しないでください。どちらもわかりません)。

私は言い訳をするつもりはありません:私は私が台無しにしたことを知っています。今、私は自分が作った混乱をどのように修正できるかに焦点を当てたいと思います。

これが私が試したことです:

  1. vimzipperを使用して暗号化されたファイルをzipでラップし、fcrackzip、zipcracker、pkcrack、Advanced ZipPasswordRecoveryなどの標準のzipクラッカーで解読できるようにします。残念ながらこれは機能しません。VIMINFOのレジスタから残った情報を使用して、ファイルからプレーンテキストの行を回復しましたが、回復されたプレーンテキストのオフセットがファイルにありません。とにかく、3文字のvimパスワードを使用した単純なテストファイルでも、zipクラッキングは機能しませんでした。

    http://zeus.phys.uconn.edu/refs/crackers/vimzipper.cを参照)

  2. スワップファイルの回復は機能しませんでした。暗号化されたファイルを不正なパスワードで再度開くと、vimは「正常な」スワップファイルを上書きしました。

  3. プレーンテキストの大規模なデータベース(Project Gutenbergからの約30冊の本)を参照データとして使用してunixcrypt-breakerを実行します。これにより、復元された平文でunixcrypt-breakerをシードするだけでも、ぎこちない結果になります。さらに、この方法を使用してvimで暗号化された単純なテストファイルでさえも損益分岐点にあるようには見えません。(参考までに、復号化を実行する前にVimCrypt〜01!マジックヘッダーを削除し、PASTEモードでvimを使用して削除するので、ファイルの内容を変更することはありません)。

  4. 私が想像できるすべてのパスワードとスペルミスを必死に推測します。スペルを間違えた可能性があるものを推測するために、少なくとも6時間費やしました。:)

プログラムからパスワードをすばやく試すために、crypt / makekeyの古いUNIXコピーをコンパイルしようとしましたが、その結果は、vimの-x暗号化と同じパスワードを使用して暗号化された同じファイルと同じではありません。

誰か助けていただければ幸いです。そうでない場合は、読んでいただきありがとうございます。:)

4

5 に答える 5

23

VIMドキュメントから:

  • 使用されるアルゴリズムは壊れやすいです。約1時間で4文字のキー、1日で6文字のキー(Pentium 133 PCの場合)。これには、ファイルに表示する必要のあるテキストを知っている必要があります。専門家はどんな鍵でもそれを破ることができます。テキストが復号化されると、これはキーが明らかになり、同じキーで暗号化された他のファイルを復号化できることも意味します。

Pentium 133で実現可能であれば、非常に良いチャンスがあると思います。:)

#vimを使用してアルゴリズムの詳細を尋ねるか、ソースコードを参照して暗号化がどのように機能しているかを把握してから、暗号解読プログラムを作成します。

于 2009-02-22T21:40:09.790 に答える
10

暗号化の問題に加えて、データ破損の問題が発生する可能性はありますか?

これをブルート フォースするつもりなら、辞書攻撃に移る前に、使用できた可能性のあるパスワードのすべてのバリエーションを試し始めるアルゴリズムを書くと思います。それでも、あなたの話を聞いた後、私はあなたがパスワードを忘れたのではなく、パスワード/暗号文/暗号鍵/その他を台無しにする途中のどこかでデータ破損の問題があったというしつこい感じを覚えました.

于 2009-02-22T22:37:28.093 に答える
8

これが役立つかどうかわからない:

「crypt」で暗号化されたファイルを解読する方法を説明します。これは出発点となる可能性があります (少なくとも古いバージョンの vi では、暗号化は crypt に基づいていました)。

于 2009-02-22T21:51:39.420 に答える
5

This ancient newsgroup post had a similar problem to yours:

My problem was that I had accidentally encrypted a script using vi and could not recall the key. many thanks to all those who responded.

Suggestions were as follows:

  • use vi -x and guess the key (I had tried that without success)
  • write a program which makes a crypt call and tries the likely key combinations. the person who suggested this reckoned it would take about 5 minutes to crack
  • download CWB (crypt breakers work bench) form the archives which will help to crack
  • post the problem to sci.crypt.newsgroup including the first 128 bytes of the file after encryption and these bytes before encryption (if i could remember) and somebody in the group might crack it for me
  • re-type the script

One crib you have towards breaking this is you know what the password "should" have been. So, even if you had a random typo, it would still slightly resemble your intended password. Maybe you could start there, write a program to generate all possible combinations of your intended password with 1 or 2 character mispellings-additions.

In any case, what a neat exercise / diversion!

于 2009-02-22T22:22:05.290 に答える