モバイルコード【mobile code】
概要

通常、コンピュータプログラムが実行されるには、利用者がプログラムを取得して導入する操作が必要となるが、モバイルコードは既に導入済みのソフトウェアがネットワークを通じて外部から動的に取得し、自動的に実行する。いちいち導入作業を行わなくてもその場で素早く機能を拡張することができる。
最も有名な例はWebブラウザによる動的なコード実行機能で、Webページの表示内容や機能を拡張するために、ページ内に埋め込まれたプログラムが自動的に取得されて実行される仕組みである。JavaScriptなどのスクリプト言語による処理や、かつて広く利用されたJavaアプレット、ActiveX、Flash、Silverlightなどが該当する。これらは閲覧者が特別な操作を行わなくても、Webページ上の記述に基づいてプログラムが取得され、ブラウザや実行環境の中で動作する。
モバイルコードは利便性を高める反面、適切に制御しなければセキュリティ上の弱点(脆弱性)となり得る仕組みでもある。外部から取得したプログラムが自動的に実行されるため、悪意のあるプログラムが同様の仕組みを利用してコンピュータに侵入する可能性がある。
コンピュータウイルスやスパイウェアなどのマルウェアの中には、Webページや電子メール、ダウンロード機能などを通じてモバイルコードとして実行され、不正な遠隔操作、情報の窃取、データ改竄などを行うものが存在する。Webブラウザのセキュリティ機構やサンドボックス、コード署名などの技術により、モバイルコードの実行範囲や権限の制限、開発元の確認などを行う仕組みが導入されている。