Googleが今日(米国時間2/19)、同社のPaaSサービスGoogle App Engineを使っているデベロッパのための、新しいセキュリティツールをローンチした。その、Google Cloud Security Scannerと呼ばれるツールは、ユーザ(デベロッパ)のアプリケーションを定期的にスキャンして、クロスサイトスクリプティングや混成コンテンツ(mixed content)に対する脆弱性をチェックする。
こんなツールを提供するのはもちろんGoogleが初めてではないが、今日の発表声明の中で、既存のツールは“必ずしもGoogle App Engineのデベロッパには向いていない”、と主張している。しかも既存のツールはセットアップが難しくて、デベロッパではなく“セキュリティの専門家向けだ”、とも言っている。
そのチェックを動かすためにGoogleは、ユーザのサイトをスキャンする小さなボットネットをCompute Engine上にセットアップする。HTTPリクエストは毎秒約15リクエストに抑えられ、 App Engineが問題なくそれらを処理できるようにする。
最初の実行ではスキャナーがユーザのサイトとアプリケーションを素早くクロールして、その基本的なHTMLのコードを解析する。それから、Googleの説明によると、二度目のスキャンではサイトの完全な表示(レンダリング)を行い、アプリケーションのもっと複雑な部分を調べる。それが済むとツールは、無害なペイロードにより、攻撃を試みる。それからChrome DevToolsのデバッガでブラウザとDOMの、攻撃の前とあとで変わった箇所を調べ、不正コードの注入に成功したかをチェックする。成功していたら、今後マルウェア等にやられる可能性がある。
デバッガを使うことによってGoogleは誤判断を避けようとしているが、それでも、見逃すバグがあるかもしれない、とも言っている。しかしGoogleによると、“デベロッパにとってセキュリティのチェックは、労力もノイズも少ないものが望まれているから、このトレードオフは前向きにとらえたい…”、と言っている。
スキャナーは、すべての入力フィールドに何かを書き込み、すべてのボタンやリンクをクリックしてみるから、アプリケーションの機能を実際に動かしてしまう可能性もある。たとえば、ブログのコメント欄に、“毎週9000ドル稼げる”というスパムが載ってしまうかもしれない。それを防ぐためには、Googleの推奨では、スキャナーをテスト用のサイトで動かすか、または臨時のCSSコードによってUIの一部を不活にしたり、一部のURLを排除するとよい。
スキャナーの利用は無料だが、ユーザのクォータの制限量や帯域に対する料金に影響が及ぶことは、あるかもしれない。
[原文へ]
(翻訳:iwatani(a.k.a. hiwa))