TortoiseSVN保存パスワードを抽出


回答:


226

短い答え:TortoiseSVN Password Decrypterを使用すると、パスワードなどのキャッシュされた資格情報を簡単に表示できます。

長い答え:ツールの仕組みは次のとおりです。

資格情報は、のサブディレクトリに保存され%APPDATA%\Subversion\auth\ます。この以前の回答からリストされています

  • svn.simple 基本認証の資格情報が含まれています(ユーザー名/パスワード)
  • svn.ssl.server SSLサーバー証明書が含まれています
  • svn.username ユーザー名のみの認証の資格情報が含まれています(パスワードは不要)

最初のディレクトリが対象です。GUIDのような名前のファイルが含まれているようです。資格情報を保存したリポジトリごとに1つ。

これらのファイルのパスワードは、Windows Data Protection APIによって暗号化されます。上記のツールはObviexのサンプルコードを使用して、このAPIとインターフェースし、復号化を実行します。

これを機能させるには、[認証を保存]チェックボックスをオンにしたときに実行していたのと同じWindowsユーザーアカウントにアクセスできる必要があります。これは、Windows Data Protection APIがWindowsアカウントに関連付けられている暗号化キーを使用するためです。このアカウントを失う(または管理者がパスワードをリセットした場合、私は、信じている)なら、あなたは、もはやパスワードを解読することができなくなります(ただし、おそらくブルートフォース/使用してサードパーティ製のツールを)。同じユーザー名/パスワード(またはおそらくSID)を使用して新しいWindowsアカウントを作成するだけでは不十分です。


8

以下の情報に基づいて、ローカルで何らかの方法でそれらを復号化できるように思えます...

更新: TortiseSVNコミュニティからの明確な回答

暗号化されてネットワーク経由で送信される場合、接続時にハンドシェイクや合意済みのキーを使用して暗号化されます。

ローカルに保存/読み取りされると、Windowsアカウントに関連付けられたキーを使用するWindows Crypto APIを介して暗号化/復号化されます。

キーはアカウントに対してローカルであるため、ローカルで暗号化されたコピーはサーバーで復号化できません。

したがって、接続すると(たとえばHTTPS経由で)、クライアントは適切なWindows APIを介して暗号化された資格情報を取得し、HTTPS送信に含めます。HTTPS は、資格情報だけでなく、SSL証明書を使用してクライアントとサーバー間の通信全体を暗号化します。


パスワードがクライアント側で復号化されていないことを確認しますか?
Jus12、

かなり特定の...ここで、TortiseSVNの人々への明示的な質問を投稿せずに私が...見つけたものですtortoisesvn.net/docs/release/TortoiseSVN_en/...それはクライアント側復号化された場合には添加が、その後にプレーンテキストで上に押さそれは目的を無効にするサーバー。SSH経由で送信できると思います。
Aaron McIver

しかし、事実上誰でも暗号文をサーバーに送信でき、tortoiseSVNは暗号化による追加のセキュリティを提供しません。
Jus12

Trueであるので、シャットダウン時に、または少なくとも定期的に、懸念がある場合は、認証データをPCから削除するように言われます。認証データを保持しているマシンが危険にさらされている場合、それ自体はTotoriseSVN自体の問題ではありません。
Aaron McIver

仕事をありがとう。私はすでにそのためのツールがあることを望んでいました。
Jus12
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.