2010 年 5 月 4 日(火曜日)
Google 社員には、Google のサービスが直面する脅威と、そうした脅威からサービスを保護する方法について明確に理解することが求められます。そのため Google では、新しいエンジニア向けのセキュリティ トレーニングや、セキュリティに関する技術的なプレゼンテーションなどを用意しています。また、Codelab も使用します。これは、特定のプログラミング タスクを参加者に紹介するインタラクティブなプログラミング チュートリアルです。
特に、ある Codelab では、デベロッパーの皆さまに一般的なウェブ アプリケーションの脆弱性について説明しています。また、ハッカーの視点から考える重要性に基づき、そのような脆弱性がエクスプロイトされる手口についても解説しています。
本日、Google Code University および Google Labs と共同で、「ウェブ アプリケーションのエクスプロイトと防御」と題したこの Codelab をリリースしました。独自のアプリケーションの開発時に、同様の欠陥を特定、修正、回避するために役立ちます。Codelab は、Gruyere をベースとして構築されています。Gruyere は、小規模ながらフル機能を備えたミニブログ作成アプリケーションであり、多くのセキュリティ バグを配置することを目的としています。ラボで扱う脆弱性には、クロスサイト スクリプティング(XSS)、クロスサイト リクエスト フォージェリ(XSRF)、クロスサイト スクリプト インクルージョン(XSSI)、クライアントの状態操作、パス トラバーサル、AJAX と構成の脆弱性などがあります。また、情報漏洩、サービス拒否攻撃、リモートコード実行などが簡単なバグによって引き起こされかねない仕組みについても説明されます。
「十分な人数でチェックすれば、バグをすべて洗い出せる」という格言は、何をチェックすべきかがわかっている場合にのみ当てはまります。そのため Gruyere のセキュリティ バグは、他の多くのアプリケーションのバグと同様に、本物のバグです。Gruyere のソースコードはクリエイティブ・コモンズ ライセンスの下で公開されており、ホワイトボックス ハッキングの演習や、セキュリティ、ソフトウェア工学、一般的なソフトウェア開発に関するコンピュータ サイエンスの授業などでご利用いただけます。
ご利用を開始していただくには、https://google-gruyere.appspot.com/ にアクセスしてください。Codelab を利用するためのインストラクター向けガイドは Google Code University で公開されています。