コンテンツにスキップするには Enter キーを押してください

Microsoft Azureのローコードツールで権限のないアクセスが可能に

A finger pointing toward digital padlock security

出典: 3rdtimeluckystudio / Shutterstock

AzureのAPI Connections機能を通じて接続されたアプリケーションは、今年初めにMicrosoftが問題を修正するまで、認証されていないユーザーや権限の低いユーザーにデータが漏洩する可能性があったことが、来週ラスベガスで開催されるBlack Hat USAで発表される予定です。

ノルウェーのホワイトボックスアプリケーションペンテスト企業Binary Securityのセキュリティコンサルタント、Haakon Gulbrandsrud氏は、読み取り専用権限しか持たないユーザーでも、API Connectionsサービスを利用して、ターゲット企業のAzureインフラの機密領域(データベース、JiraやSlackなどのアプリケーション、機密インフラキーを保持するデータボールトなど)にアクセスできることを発見しました。多くのアプリケーションは、Azure Resource Management(ARM)プロセスが厳格なゲートキーパーであることを前提に、過剰な機密情報へのアクセスを許可する接続を設定しています。

Azureのセキュリティの多くはARMに依存しており、ARMがすべての認証を行い、その後の取引には独自のトークンを使用するため、そのロジックに欠陥があればセキュリティ脆弱性につながる可能性があるとGulbrandsrud氏は述べています。

「Azureがバックエンドリソースにリクエストを送るたびに、それはAzureが所有していることになり、Azureが正しく[セキュリティ]チェックを行っていると信頼しなければなりません」と彼は言います。「セキュリティモデルが後付けで追加されたとは言いませんが、最初からAzureがこういう仕組みで動作しているのは明らかです… ただし、バックエンドAPIをプラットフォームにコピーし始めると問題が生じます。」

クラウドインフラの脆弱性や攻撃はますます一般的になっています。6月には、CiscoがAmazon Web Services、Microsoft Azure、Oracle Cloud Infrastructure(OCI)上でIdentity Services Engine(ISE)を展開すると、すべてのISEインスタンスで同一の認証情報が作成されると警告しました。4月には、サイバーセキュリティ企業Varonisが、Azure Entra IDで使用される2つの主要な認証クッキーが多要素認証を回避するために使用できることを発見しました。2月には、サイバーセキュリティ企業watchTowrが、放置されたクラウドストレージがサプライチェーン攻撃に利用される可能性があると警告しました。これは、開発者が以前それらのサーバーにホストされていたライブラリを利用しようとした場合に発生します。

Azureにおけるセキュリティの緩み

今回の最新のクラウドの脆弱性では、Gulbrandsrud氏は、クラウドサーバー上で読み取り専用権限を持つユーザーが機密データにアクセスできることを発見しました。リーダー権限は通常、ユーザーがHTTPサーバーから情報を取得するためのGETリクエストのみを許可し、サーバー上の情報を変更するようなPOSTリクエストなどは許可しません。しかし、ARMはリーダーをGETリクエストに制限していますが、接続されたAPIが必ずしもそのセキュリティモデルに従うとは限らないと彼は言います。このような場合、Azureテナント内の権限の低いユーザーでもAPI接続で使用される認証を完全に制御できてしまいます。

要するに、「もしLogicアプリでSalesforceに何かを投稿したい場合、テナント内の権限の低いすべてのユーザーがSalesforce内のすべてを閲覧できてしまうのです」と彼は述べています。

もう一つの問題は、API接続の作成が明示的ではなく、ユーザーがLogic Appにアクションを設定するたびにバックグラウンドで自動的に行われることです。「これまでAPI接続について聞いたことがなくても、実際にはテナント内に多数存在している可能性があります」とGulbrandsrud氏は元の問題についてのブログ投稿で述べています。

この脆弱なAPI Connectionsは、Gulbrandsrud氏がクライアント案件でLogic Apps(Azureのローコード機能)を使ってSlackをターゲットにした呼び出しから得た情報が、Jiraなど他のアプリケーションを標的にするために利用できることを発見した際に明らかになりました。

「素直に考えれば、この接続を設定したユーザーが認証されており、そのトークンがなければ接続経由で呼び出しできない、もしくは自分でOAuth認証を行う必要があると思うでしょう」と彼は3月の分析で述べています。「しかし、実際には接続のリーダー権限を持つ誰もが、接続上の任意のエンドポイントに自由にリクエストできるとは思いませんでした。」

リーダー権限とAPI接続を超えて

Gulbrandsrud氏が最初の問題をMicrosoftに報告した際、同社はすでに問題を把握しており、修正に取り組んでいると主張しました。そこで彼はさらに調査を進めました。

Gulbrandsrud氏はBlack Hatでのプレゼンテーションで、認証されていないユーザーが他のテナントのインフラの機密データにアクセスできるように問題を拡大した方法について説明する予定です。

「正しい方法でこれを設定すれば、自分が設定したAPI接続から他人のAPI接続に移動できるのです」と彼は言います。「これは興味深いことで、特権のあるAPI接続がなくても(例えば)Key Vaultのすべてのキーにアクセスできるようになります… そしてKey VaultはAzureで最もセキュリティ上重要なリソースです。」

Microsoftは最初の脆弱性に対して報奨金を支払いませんでした(すでに発見されていたと主張)— しかし、その後Gulbrandsrud氏が発見したより深刻な問題については4万ドルの報奨金を支払いました。しかし研究者は、クラウドサービスであるため修正は静かに行われ、Microsoftの顧客は修正前に自分たちの環境が侵害されていたかどうか知ることができないと指摘しています。

「大きなプレゼンテーションや人気のブログ記事にならなければ誰も気づかず、実際にはこれらは古いリソースで、誰かが以前からこの脆弱性を発見していた可能性もあります」と彼は言います。「リソースを体系的に調べていれば特に難しいことではなく、自分がこの脆弱性を悪用されたかどうかを知る方法はありません。」

翻訳元: https://www.darkreading.com/vulnerabilities-threats/low-code-tools-azure-allowed-unprivileged-access

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です