はじめに
システムやWebアプリが権限昇格攻撃の犠牲とならないよう、本ガイドでは一般的なシナリオと、ユーザーアカウントを守る方法を解説します。
悪意ある攻撃者は、システムやアプリ内のバグ、設計の不備、または実装ミスを突いて、通常はアクセスできない資産に権限昇格を図ります。さらに、獲得した権限を使い、サーバやシステム、事業、そして評判に悪影響を及ぼすため、マルウェアの配布や管理者権限を使った命令の実行、機密情報の窃取などを行う恐れがあります。
権限昇格自体は最終目的ではないものの、より大規模なサイバー攻撃を仕掛ける準備段階として利用されることが多いです。これにより、攻撃者は悪意あるペイロードの送信、セキュリティ設定の変更、その他の攻撃経路の確保が可能になります。
権限昇格が確認または疑われた際は、PCワーム、マルウェア、内部不正、情報漏洩、情報流出、中間者攻撃、個人情報(PII)、保護対象健康情報(PHI)、心理情報、バイオメトリクスなど、他の不正行為の兆候を探るために、高度なサイバー分析を活用することが求められます。
攻撃者は、特権アカウントを乗っ取り、そのユーザーに正当に付与された権限を濫用することで権限を上げることができます。これが水平型権限昇格です。ローカルな権限昇格攻撃では、管理者やroot権限を持つアカウントを標的にすることもあります。例えば、Webアプリではユーザーの銀行口座やSaaSアプリの管理者アカウントに不正にアクセスするケースが該当します。
ハッキングされたアカウントを利用し、攻撃者はさらに高い権限やアクセスを獲得しようと試みます。例えば、ネットワーク上の通常ユーザーアカウントを乗っ取り、管理者権限(UnixやLinuxの場合はroot、Microsoft Windowsの場合は管理者やシステムユーザー)を得る試みが行われます。こうした昇格した権限を用いると、悪意あるコードの実行、ランサムウェア、スパイウェアやその他のマルウェアのインストール、特定ユーザーの個人情報の窃取など、貴社のセキュリティ体制に大きな影響を及ぼします。
水平型権限昇格は、別のアカウントの権限を乗っ取り、そのユーザーに与えられた権限を悪用する行為です。一方、垂直型権限昇格は、乗っ取ったアカウントからさらに高いアクセスや権限を獲得しようとする試みを指します。たとえば、通常ユーザーアカウントを乗っ取り、root権限や管理者権限を狙うケースが挙げられます。これは高度な技術を必要とし、Advanced Persistent Threat(APT)に発展する可能性もあります。
攻撃者が人の心理を突く社会工学的手法は、権限昇格において最も重要なステップとなります。フィッシング、つまり危険なリンクを含む電子メールが典型的な手口です。攻撃者がユーザーのアカウントにアクセスすると、貴社は大きな危険にさらされます。
攻撃者は、初期アクセスや追加権限を得るために利用可能な、システム内の隙を探し出します。こうした脆弱性の悪用により権限が昇格し、後述するように更なる問題を引き起こす可能性があります。したがって、計画的な対策として、早期検知、対応、迅速な対処の戦略を統合することが重要です。
以下は、攻撃者が権限昇格を実現するために用いる主な攻撃手法です。
基本的にすべてのサイバー攻撃は、社会工学を利用しています。攻撃者は、不正なアクセスを取得し権限昇格を狙うため、この手法を頻繁に使用します。
個々の弱点を突くことで安全対策を回避できるため、社会工学は非常に効果的です。攻撃者は、信頼あるユーザーが関与していると、セキュリティシステムの突破が容易になると考えています。
社会工学攻撃の代表的な種類と、権限昇格への応用方法は以下の通りです。
権限昇格を狙う攻撃者は、シングルファクター認証によるアクセス経路を持っています。つまり、特定ユーザーのアカウント名を把握していれば、パスワードがなくても最終的にパスワードを取得する可能性があります。正当なパスワードがあれば、システム内を潜り抜けることも容易になります。
以下は、攻撃者が認証情報を取得する一般的な方法です。
重要なシステムでの認証設定の欠如、ファイアウォール設定の誤り、または開放されたポートといった設定ミスが、権限昇格の原因となることが多いです。
以下は、権限昇格につながる可能性のあるセキュリティミスの例です。
通信プロトコル、伝送手段、OS、アプリ、Webアプリ、クラウドサービス、企業システムなど、さまざまなシステムの開発、実装、または設定上の脆弱性を悪用することで、攻撃者は権限の昇格を図ることができます。
脆弱性の状態やシステムにおける重要性によりリスクレベルは変動します。垂直型権限昇格が成立するのはごく一部の脆弱性のみですが、攻撃者が権限変更可能な脆弱性はどれも真摯に対処すべきです。
WindowsやLinuxにおける権限昇格につながる脆弱性の例は、以下に示します。
マルウェア、すなわちトロイの木馬、スパイウェア、ワーム、ランサムウェアなどは、攻撃者がネットワークへのアクセスを維持し、権限昇格を実現するために用いられます。マルウェアは、脆弱性の悪用、正当なソフトウェアへの混入、悪意あるリンクやダウンロード、社会工学の手法、またはネットワークの欠陥を突くことで拡散される場合があります。
以下の一般的なマルウェアは、権限昇格に利用されることがあります:
以下に、代表的な権限昇格手法を紹介します。
Windowsは、実行中のプロセスの所有者を判断するためにアクセストークンを利用します。特別な権限が必要な処理を実行する際、システムは実行者とその権限の有無を確認します。アクセストークン操作とは、プロセスが起動したユーザーとは異なるユーザーとして認識されるよう仕向け、別ユーザーの権限をそのプロセスに付与する手法です。
手法
アクセストークン操作を実現する方法は、以下の三つです。
1. WindowsのDuplicateToken(Ex)を用いてアクセストークンをコピーし、ImpersonateLoggedOnUserまたはSetThreadToken関数で模倣トークンをプロセスに割り当てる。
2. DuplicateToken(Ex)とCreateProcessWithTokenW関数を使用して、模倣トークンで新たなプロセスを作成する。
3. LogonUser関数を利用し、ユーザー名とパスワードからトークンを生成する。例として、攻撃者がユーザー名とパスワードを持っている場合、ログオンせずにログオンセッションを作成し、新しいトークンを取得、SetThreadTokenでプロセスに割り当てる方法がある。
対策
Windowsではアクセストークンを無効化することはできません。しかし、この手法を実行するには攻撃者がすでに管理者権限を持っている必要があります。攻撃を防ぐには、最小権限の原則に基づき管理者権限を付与し、ログを監査、不要なアクセスを拒否すること、さらにユーザー行動の異常を監視することが重要です。
Windowsのユーザーアカウント制御(UAC)により、通常ユーザーと管理者は区別されています。UACは、管理者が明示的に昇格させない限り、すべてのアプリを通常ユーザー権限に制限し、マルウェアによるシステム侵害を防ぎます。しかし、UAC設定が最高レベルになっていない場合、一部のWindowsアプリは権限昇格やCOMオブジェクトの管理者権限実行が可能となることがあります。
対策
ITシステムを監査し、UACが最高レベルに設定されていることを確認してください。必要に応じ、追加のセキュリティ対策も検討し、特に重要なシステムではアカウントがローカル管理者グループに属していないか定期的に確認し、不要な管理者権限を削除することが望まれます。
攻撃者は、権限昇格された管理者やユーザーへの不正アクセスを通じ、ターゲットシステムにサインインしたり、独自の認証情報を作成したりする可能性があります。
パターン認識、外れ値の検出、そして異常なイベントの把握を通じて権限昇格は検知されることが一般的です。しかし、隠密性が高いため、権限昇格の検出は非常に難しい場合があります。攻撃者がネットワークに侵入すると、認証情報が入手された時点で、システムは攻撃者を正当なユーザーとして扱います。
権限昇格攻撃の検知には数週間、あるいはそれ以上の時間がかかることがあり、平均的な侵入期間(『滞在時間』)の測定は困難です。滞在時間は、認証情報が侵害されてから攻撃者が目的を果たすまでの期間を指し、長いほど多くのデータ取得や権限昇格が進行していることを意味します。
Linuxの権限昇格攻撃では、攻撃者はパスワードユーザー列挙を用いて、シェルアクセスを取得した上でLinuxマシン上のすべてのユーザーアカウントを一覧表示します。たとえば、コマンド "cat /etc/passwd | cut -d: -f1" を実行することで、ユーザー名が表示されます。不適切なFTPサーバの設定は、この攻撃で悪用される最も一般的な脆弱性の一つです。
Windowsの権限昇格手法の中で最も一般的なものの一つが、スティッキーキー攻撃です。Windowsの権限昇格は高度な知識を必要としないため、実行が非常に容易です。この攻撃に必要なのは、ターゲットシステムへの物理的なアクセスと、リカバリーディスクから起動する能力のみです。攻撃者は、システムをリカバリーディスクから正常に起動させた後、5回連続のShiftキー押下で呼ばれるファイルを差し替える必要があります。
攻撃者は目的達成のために様々な権限昇格手法を用いますが、まずは通常ユーザーアカウントへのアクセスが前提となります。通常ユーザーは最初の防御線です。効果的なアクセス制限を維持するため、以下の推奨手順に従ってください。
アプリは攻撃の足掛かりとなる可能性があるため、セキュリティを維持することが重要です。
権限昇格攻撃は必ずしもユーザーアカウントだけを狙うわけではありません。セキュリティの高いシステムを整備することで、攻撃対象を減らすことも可能です。
最新情報を購読