Skip to content

バスケットボールとアプリケーションセキュリティのインストゥルメンテーションに何の関係があるのか?

    
バスケットボールとアプリケーションセキュリティのインストゥルメンテーションに何の関係があるのか?

ただのバスケットボールではなく、センサー満載のバスケットボールの話だ。

インストゥルメンテーション(Instrumentation)という言葉についての説明」では、センサーによるセキュリティの計測に特化しているが、現時点で市場に出回っている革新的なたくさんのバスケットボール(こんなスマートバスケットボールこんなスマートバスケットボール)を例に使って、セキュリティのインストゥルメンテーションがどのように機能するかを説明してみよう。 

ということで、こんにちは、バスケファンの皆さん、楽しいマーチマッドネスを!

自分のクロスオーバーはどうだろうか?ドリブルはどんな感じだろうか?などの問いがあるだろう。自分のプレーに磨きをかけたいと思っているプレイヤーなら、自分のあらゆる動きを分析し、改善すべき点を状況に応じてフィードバックをくれるセンサー内蔵のバスケットボールを知っているだろう。センサー内蔵のバスケットボールはごく普通のボールだが、シュートの弧、シュート速度、ドリブルの回数などのデータをスマートフォンに送信することができる。
 
センサーは、ボールがどのように回転しボールがどのように手から離れるかを記録する。そして、他のプレーヤーを抜くのに必要な力の量や、クロスオーバーに必要な手の速度など、ボールを使用する人の動きと自分の動きを比較する。
 

あるメーカーが強調しているように、このようなセンサー入りボールの鍵となる技術革新は、強力なプロセッサーと十分なメモリ、完璧なセンサーを搭載し、普通のバスケットボールの様に屋内でも屋外でも使用できるように、密閉されたボールに詰め込むことだけではなかった。

リアルタイムセキュリティ: セキュリティインストゥルメンテーションで迅速に検出して対応

いや、センサーを搭載することが、最も画期的な突破口ではなかったのだ。むしろ、本当の突破口は、情報をリアルタイムで処理することだった。
 
同様に、セキュリティインストゥルメンテーションでは、アプリケーション内にセンサーを組み込み、リアルタイムで最も巧妙な攻撃からアプリケーションを守ることができる。
 
これは、セキュリティを根本的に見直したものだ。アプリケーション内にあるセキュリティインストゥルメンテーションセンサーがリアルタイムで脆弱性を検出する。そして、データ侵害を防ぎ、開発・テスト・デプロイ・メンテナンスを通じて、WebアプリケーションやAPI(アプリケーションプログラミングインターフェイス)をほとんど人の手を介さずに、保護できるのだ。
 
実際のところ、最近では、すでに周りはこのようなセンサーがあふれている。いくつか例を挙げると、空調制御システムには周囲の温度を測定するデジタルセンサー、デジタルカメラには光を測定するセンサー、セキュリティシステムやホームオートメーションシステムにはモーション検知センサーがある。
 
コードにセンサーを配置して、今起こっているセキュリティの問題を即座に読み取ることは当然の流れであり、それがインストゥルメンテーションのすべてだ。
 

アプリケーションインストゥルメンテーションの仕組み 

アプリケーションインストゥルメンテーションについて考える最も簡単な方法は、見張りのようなものと思うことだ。Contrastは、アプリケーションやAPIの実行時の動作を観察して、脆弱性や攻撃を示す異常なアクティビティを探す。データフローを監視するだけでなく、他にも多くのルールがあり、ヘッダー、設定、暗号化、ハッシュなどに対処する。
 
Contrastのセンサーは、アプリケーションに配置されるため、悪用される可能性のあるアプリケーション内のすべての欠陥コードを自動的に継続して監視できる。Contrastのランタイムセキュリティは、アプリケーション全体のすべてのレイヤーをインストゥルメント化することで、ビルド・テスト・デプロイのサイクルを変更することなく、カスタムコードやライブラリやフレームワーク、さらにはランタイムプラットフォームを通じてデータと実行を追跡できる。Contrastではサポート対象の言語ごとにセンサーを準備しており、言語の壁が無いようにしている。
 
Contrastのランタイムセキュリティエンジニアリング担当副社長であるBryan Beverlyは、「アプリケーションに入ってくるデータにタグを付けるだけ」と述べている。
 
Contrastのセンサーは、実行中のアプリケーション内で動作する。つまり、保護対象のアプリケーションが起動すると、センサーが読み込まれて配置される(センサーが追加される、ということ)。Webアプリケーションに入ってきたデータにタグを付け、データベースへの格納、ログファイルへの書き込み、別のアプリケーションへの送信など、最終的な宛先(シンク)に到達するまでアプリケーション内のフローを追う。
 

センサーは見張りだ

新しいデータが入ってくるたびに、インストゥルメンテーションがフラグを立て、ソフトウェアのセンサーがそのデータを追いかける。それは、アプリケーション全体で処理が終了するまでどこまでも追跡される。例えば、データがデータベースに入力されのを追跡したり、データがログファイルに入力されるのを監視したり、データが別のアプリケーションに送信されるのを監視したりする。
 
データフローのルールに関しては、「データを追って、監視しているだけだ」とBeverlyは説明する。それを見て、そして待つ。
 
データ完全性を検証しているか? そうであれば、良いことだ。
 
データが検証されていなければ、それはあまり良いことではない。 その時点で、「悪いことが起きていないかを探している」とBeverlyは言う。「 もし誰かが、データを検証することなく、そのままアプリケーションから直接データベースに取り込むことを許可しているのであれば、懸念すべきで、何かが起こるのを待っている脆弱性について考えるべきだ。」
 
他のツールとは異なり、Contrast は攻撃を見る必要がない。悪意のあるデータを見る必要もない。Contrastは、コード内でデータを追うだけで脆弱性があるかどうかを判断できる。
 
このような迅速なフィードバックは、バスケットボールの試合を変えるのと同じように、セキュリティゲームに変革をもたらすものだ。シュートはフラットに打っているか?分かった、良かった。正確に38度の角度でフラットに打っているか?こんな感じにフィードバックがすぐに使える。
 
これと同じように、潜在的に脆弱なアプリケーションに対処しているだろうか?大丈夫。 それは今に始まったことではないから。でも、アプリケーションの脆弱性に対処する場合はどうだろうか?開発中にインストゥルメンテーションがバグにフラグを立てたために、アプリケーションの開発が中断されたり、本番環境で稼働後に発生したバグがインストゥルメンテーションの防御で検知されて先に進まない場合はどうだろう?
 
…しかもリアルタイムで。
 
Log4jのようなゼロデイについては、心配する必要はない。Contrastは、これらが実際に登場する前に重大なゼロデイを防いだし、その他多くのゼロデイをブロックしている。
 

セキュリティインストゥルメンテーションがゼロデイを叩きのめす

バスケットボールの試合をレベルアップしたい?センサー付きバスケットボールを買いに行けばいい。ゼロデイの恐怖の館は避けたいか?

発見前にブロックされたゼロデイの殿堂入り

Contrastは組み込みの検出ルールによって

脆弱性の悪用を検出して防止する

Contrastが発見前(CVEが発行される前)に
防いだゼロディの例:

           

これがランタイムセキュリティの威力だ。ランタイムセキュリティは、本番環境での攻撃を自動的にブロックし、開発の初期段階で安全でないプログラミングを検出する。ランタイムは容易に拡張でき、アプリケーション、API、さらにはサードパーティ製アプリケーションなどを含むソフトウェアポートフォリオ全体を継続的に保護する。また、個別にスキャンして主要なコンポーネントを見落とすことがなく、スタック全体が一度にカバーされる。その結果、イノベーションを損なうことなく高度なセキュリティを提供する、実効性の高いアプリケーションセキュリティの運用モデルが実現した。

ランタイムセキュリティが全てを変える

Contrast SecurityのCTOで共同創業者のJeff Williamsはは、「単に検出機能が向上しただけではない」と述べている。「運用モデル全体を変えるものだ。これで、選手は独学できるようになった。そして、1人のコーチがより多くの選手を扱い、より多く個別指導を行うことができるようにもなる。」

コーチと選手の経済全体が、より良い方向へ混乱している。医療も同じだ。 患者がリアルタイムの遠隔測定を受け、自分で何かすることができる場合には、医師と患者の関係は変わってくる。医師は、年に1回5分間だけ診察する代わりに、患者を継続的に監視してアラートを受け取るようになる。 また、感染症や公衆衛生を追跡して、病気へのより良い対応が自分達でできるようになる。
 
「セキュリティに関しては、開発者とセキュリティ担当のことになる。インストゥルメンテーションを使用すれば、手作業によるスキャンや分析に時間を費やす必要がなくなる。その代わり、開発者は自分で安全なコードを自分で書くことができるようになる。また、開発部門のイノベーション実現能力が加速するだけでなく、セキュリティ担当者はセキュリティアーキテクチャ、脅威モデリング、脅威インテリジェンスなどのより戦略的な問題に集中できるようになる。」
 
Contrastのランタイムセキュリティの機能を使って、アプリケーションの運用モデルのセキュリティ向上と効率化を図ろう。
 
インストゥルメンテーションが、セキュリティにとってスラムダンクである理由を説明するので、デモをリクエストして欲しい。

お問い合わせ

関連記事/資料:

Contrast Security Japan