AppGuard Blog

AppGuardの知られざる機能:Private Folder (プライベートフォルダ)

Tech Note

3番目の制御機能

AppGuardはシステムに対して害を与える不正な行為を制御して成立させないことで業務の継続性を維持することを目的として開発されたエンドポイントセキュリティ製品です。ここで言う「不正な行為」は、例えばマルウェアが端末で生成されることや起動されること、不正なアクセスによるシステムへの改竄行為を指します。しかし、AppGuardにはもう1つの「不正な行為」を阻止する機能があります。

その機能は「Private Folder(プライベートフォルダ)」です。本来はAppGuardが持つ「スペースルール機能」の設定項目の1つではありますが、この機能を活用することで「重要データへの干渉」を阻止することが可能になります。まず、本稿を読まれている方には「スペースルール機能」を先にご紹介したいと思います。

スペースルール機能とは

AppGuardはインストール後にHDD内を2つの領域に定義します。WindowsシステムフォルダやProgram Filesフォルダといったシステム管理者が編集権限を持つ重要な領域を「システム領域」として定義します。システム領域ではAppGuardによって「Guardedアプリケーション(第三者による不正アクセス実行時に悪用される可能性のあるアプリケーション)」に指定されたアプリケーションを通じて当該領域に書き込みを認められなくなります。一方で初めから当該領域に格納されているアプリケーションは全て起動が許可されます。

そして、もう一方の領域としてユーザープロファイル配下のフォルダ群やDドライブ、リムーバブルメディア等のサインインユーザーが自由に編集できる領域を「ユーザー領域」として定義します。ユーザー領域では自由にファイルを設置することができますが、AppGuardが信頼した発行元のデジタル署名を保持したアプリケーション以外は個別の例外設定を除いて当該領域から起動することはできなくなります。

スペースルールの適用によって第三者が悪意を持ってマルウェア等の実行ファイルを端末に配備しようとしてもシステム領域には設置ができず、ユーザー領域では設置こそできるものの起動することができないという環境が構築されます。この制限によって不正ソフトウェアの生成や発症を阻止することができます。

なお、指定した特定フォルダやファイルに対しては個別のスペースルールを適用することができます。例えば、「Aフォルダはシステム領域指定だが、配下のBフォルダだけはユーザー領域とする。」といった個別ルールを定義することができます。

Private Folder(プライベートフォルダ)とは

スペースルール機能の設定項目ではPrivate Folderという属性をユーザーが作成したフォルダに対して付与することができます。Private Folderは指定されたフォルダに対してプライベートモード(このモードで起動するとPrivate Folderへのアクセス権がなくなる)での動作を指定されたGuardedアプリケーションからのアクセスを遮断することができます。

Private Folder(プライベートフォルダ)を有効活用する方法

前述のとおり、Private Folderは攻撃に悪用されるリスクのあるアプリケーションをプライベートモードで起動させることで当該アプリケーションから一切干渉することができないフォルダに仕立てることができます。言うなればフォルダに格納されたファイルを守る「金庫」として機能させることができます。

サイバー攻撃において攻撃者が端末内で活動するために利用する主要なツールとして「PowerShell」が挙げられます。攻撃者にとってはPowerShellがWindowsのほぼ全ての主要機能に簡単にアクセス可能であり、Windows 7以降のマシンであれば標準インストールされていることが魅力的であると言えます。

下図のとおり、PowerShellのコマンドを通して指定したフォルダの中に格納されているファイル一覧を取得することも可能です。その手法を用いてデスクトップ上の「Secret」というフォルダの情報取得を試みると、下図の通り「Name」の列に重要なファイルと思わしきものが見えてしまっています。PowerShellを利用すれば端末内を探索して価値の高い情報だと思わしきものを別の場所に複製して外部のサーバーへアップロードし、端末内における活動の痕跡を削除するといったことも当然可能です。

業務上、ローカルディスクに機密性の高いファイルを保存せざるを得ない場合において、それらのファイルを不可侵の状態にすることができるのがPrivate Folderなのです。前述のPowerShellは初期設定でGuardedアプリケーション+プライバシーモード起動に設定されていますので、重要なファイルを保存するフォルダをPrivate Folderに指定することで、下図の様にPowerShellから干渉することが一切できなくなります。


Get-ChildItem(フォルダ情報の取得)コマンドに対し「アクセスが拒否されました」

この機能を使ってフォルダ内のデータを保護することで、例えばランサムウェアの様にファイルを暗号化してしまう攻撃を受けたとしても当該フォルダには干渉することができないため一切被害は生じません。安全だからと全てのフォルダを指定することは利便性の観点から推奨はしませんが、筆者がお薦めする「Private Folder(プライベートフォルダ)」の設定箇所をご紹介させていただきます。

まず、筆者としては自身の端末を通じて別のシステムに格納しているファイルに外部からの攻撃で影響が出ないようにクラウドストレージやマウントしているフォルダをPrivate Folderとして保護することを推奨しています。その上でどうしてもローカルディスク内に保存せざるを得ない重要情報を格納するフォルダに対してPrivate Folderとして指定します。この設定により外部からの攻撃に対して重要なファイルが侵害される事はなくなります。

Private Folderのポリシーについて少し補足すると、AppGuardの初期設定ではMS OfficeアプリケーションやAdobe Acrobat等はプライバシーモードとして指定されていないため、Private Folderに格納しているオフィスドキュメントは特に制限を受けることなくPrivate Folder内から起動・編集が可能です。

しかし、可能性を突き詰めるとMS Officeアプリケーションのマクロ機能悪用やPDFファイル内にJavaScriptを仕込むといったコマンドラインツールを利用しないものの悪戯レベルで攻撃を仕掛けるといったことが可能です。そのため、念には念をということであれば、これらのアプリケーションについてもプライバシーモードで起動するように設定を変更することで、完全なる「金庫」を実現することができます。

この場合、ユーザー自身が普段利用するアプリケーションからの干渉もできなくなるため、Folderフォルダに格納されているファイルは、フォルダ外に取り出すまでユーザー自身でも開く事はできません。編集をする際には、Private Folder指定されたフォルダから取り出し、編集後にはまた元の場所に戻すというまさに「金庫」から重要なものを出し入れするような運用が必要になりますのでご注意ください。

AppGuardをインストールすれば、いかなる攻撃にも耐えられる環境を構築できる・・・というわけではありません。そのため様々な侵害シナリオを想定し、大切な情報を守るために二重三重の対策が必要です。本稿でご紹介したAppGuardが持つPrivate Folderはユーザーの持つ情報を守る要として活用いただくことができますので、すでにAppGuardをご利用の方は本機能を活用いただき、まだAppGuardをご利用いただいていない方は本機能も含めてAppGuardのご検討・ご評価をお願いします。


2020年9月28日
株式会社Blue Planet-works
Director, Security Advisor
鴫原祐輔

↓↓↓この機能を解説したデモビデオはこちら↓↓↓



ページトップに戻る