新春特別企画

OWASP ZAPではじめる2016年のウェブアプリケーションセキュリティ

この記事を読むのに必要な時間:およそ 3.5 分

新年明けましておめでとうございます。昨年は年金機構への標的型攻撃による個人情報の漏えいを筆頭に,セキュリティに関する報道が毎日のように世間を騒がしていました。特にウェブにおいてはHTTP.sysの脆弱性やFlashの脆弱性などが発見されたり,継続して標的型攻撃やパスワードリスト攻撃などの攻撃も繰り返されています。

ウェブの普及に伴い,攻撃を受ける可能性のあるインタフェースが増加し,その攻撃対象も企業から個人まで幅広くなりつつあります。これらの攻撃による情報漏えいやインシデント等の発生から身を守る術,すなわち情報セキュリティを身につけ,自らの情報を自らの手で守り抜くことが求められています。全ての人にとって情報セキュリティへの理解を深めることは課題であると言えます。

OWASPとは

このような背景の下,ウェブアプリケーションを作成する開発者や,ウェブアプリケーションに関わる意思決定を行う方々に対し,セキュリティに関する十分な情報を行き渡らせることを目的とし活動をしているのがOWASPです。OWASPは「The Open Web Application Security Project」の略称で,グローバルにチャプター(支部)を展開するオープンコミュニティです。具体的には各チャプターにおけるローカルチャプターミーティング(勉強会)やAppSecConference(グローバルカンファレンス)の開催,セキュリティに関わるドキュメントやツールの作成・公開などを行っています。

日本においては,本稿執筆時点でOWASP Kansai(大阪,京都,神戸)OWASP Kyushu(福岡)OWASP Sendai(仙台)そして主に首都圏から全国をサポートするOWASP Japanという4つのローカルチャプターが設立されています。各チャプターでは,3ヵ月に1回程度のローカルチャプターミーティングというカジュアルな勉強会を開催しています。また,2014年には日本初のAppSecConferenceを開催し,各国のセキュリティ有識者が東京に集いコミュニケーションをとりました。さらに,英語ドキュメントの翻訳や日本独自のドキュメント作成を行っています。これらの活動を通じて,幅広い層の方々のウェブアプリケーションセキュリティに関する理解を深化し,知識の底上げを図っています。

OWASPプロジェクトとは

OWASPプロジェクトは,ウェブアプリケーションセキュリティに関連するドキュメントやツールの作成に関する活動です。OWASPプロジェクトを通じて,ウェブアプリケーションのライフサイクルの各工程において活用可能なドキュメントやツールが成果物としてリリースされています。これらの成果物を活用することで,セキュリティ専任者に加え開発者,ITアーキテクト,プロジェクトマネジャーなどさまざまな立場の方々が効果的・効率的にウェブアプリケーションのセキュリティを高めることができます。OWASPプロジェクトは,その内容がウェブアプリケーションセキュリティから逸脱していない限り,誰もが自由に立ち上げることができます。また,遂行しているどのプロジェクトにも自由に参加することができます。このようにOWASPコミュニティにおける活動のほとんどは,さまざまな方のコラボレーションで成り立っており,多種多様な知見が結集されています。もちろん本稿も多くの方のコラボレーションにより作成しました。

OWASP ZAPの概要

OWASPプロジェクトには大小さまざまなプロジェクトが存在していますが,OWASPコミュニティからフラッグシッププロジェクト(最も重要なプロジェクト群)として位置付けられているのが,OWASP Zed Attack Proxy(以降「OWASP ZAP」)です。OWASP ZAPは,IPAテクニカルウォッチウェブサイトにおける脆弱性検査手法の紹介において,使いやすく検知制度が高く効率性が非常に高い初級者向けのツールという評価を受けています。OWASP ZAPは無料で使えるオープンソースのウェブアプリケーション脆弱性診断ツールでありGithub上にソースコードが公開されています。そのためプロジェクトに参加しなくてもPull Requestで要望を伝えることができますし,もちろんプロジェクトに参加して開発に貢献することもできます。

OWASP ZAPの特徴としてZAP Evangelistという制度が挙げられます。ZAP Evangelistは,OWASP ZAPを普及させ,ひいては,「ウェブをたしかなもの」にするという大きな目標の達成を目的に活動しています。具体的には,OWASP ZAPの更新情報の発信や,OWASP ZAPの使い方に関するハンズオン・トレーニングの提供を行っています。OWASP ZAPのプロジェクトリーダーであるSimon Bennettsさんに申請,要件を満たしている場合にZAP Evangelistの認定を受けることができます。日本では,境さん,亀田さん(本稿に執筆協力していただきました)がZAP Evangelistとして認定されています。ハンズオン・トレーニングの提供や,OWASP ZAPのツールの日本語化,また日本語の運用マニュアルの執筆など,日本におけるOWASP ZAPの認知度や馴染みやすさを向上させる活動を率先しておられます。

OWASP ZAPの利用用途

OWASP ZAPの利用用途は大きく以下の2点に分けられますが,特に2の開発者に利用していただくことを意識して作られています。

  1. セキュリティ専任者がウェブアプリケーション脆弱性診断を実施する
  2. 開発者が開発時に簡易的なウェブアプリケーション脆弱性診断を実施する

ITの普及に伴いビジネスのスピードは加速する中で,システム開発においてもプロトタイピングやアジャイルなどのスピード感を意識した開発モデルが流行しています。このような状況下で,セキュリティのチェックに時間を要してしまうことはビジネスチャンスを逃すことにも繋がりかねません。そのため,要件定義や設計・開発工程からセキュリティを意識しておき,セキュアなシステムを構築することが重要視されています。

また,特に大規模なシステムにおいてはウォーターフォールモデルが依然として採用されていることが多く,システムリリース直前の脆弱性診断工程において,広範囲に亘る改修が必要な脆弱性が検出されることも残念ながらあります。その際には,大きな手戻りによるスケジュール遅延やコスト超過が発生してしまいます。そのため,手戻りを未然に防ぐために,開発工程においていかに脆弱性を排除するかが重要です。

開発工程において脆弱性を排除する方法論はセキュアコーディングをはじめさまざまあり,OWASPコミュニティからも成果物として公開されています。その中でOWASP ZAPを用いると,開発者が作ってしまった脆弱性を自ら発見し改修することを通じて,後工程に脆弱性を持ち越さずに済みます。

このような背景により,OWASP ZAPは必ずしもセキュリティ専任者ではない開発者の方でも簡単に利用できるように,日本語への対応やアイコン表示など馴染みやすく,理解しやすいインタフェースを有しています。もちろんセキュリティ専任者においても利用できるように玄人好みにカスタマイズ可能な機能も有しています。

著者プロフィール

仲田翔一(なかたしょういち)

OWASP Japan

OWASP Japan Promotion Team Leaderとしてセキュリティ専任者以外にもセキュリティの考え方を広める活動をしている。本業では主にITやセキュリティを中心としたコンサルティング業務に携わる。OWASPコミュニティとの関わりは,OWASP勉強会でのスピーカーにはじまり,国際カンファレンスの運営メンバーを経て今に至る。CISSP,PMP。

Twitter:@shonantoka


亀田勇歩(かめだゆうほ)

OWASP Japan

2014年に脆弱性診断ツールであるOWASP ZAPのエヴァンジェリストとして日本人で初めて登録される。Webアプリケーション開発の経験を活かし,OWASP Japanをはじめさまざまな勉強会でスピーカーを務め,Webセキュリティの啓発活動に取り組んでいる。本業ではWebアプリケーション脆弱性診断,プラットフォーム脆弱性診断,SOC/CSIRTに携わる。

Twitter:@YuhoKameda

バックナンバー

新春特別企画

バックナンバー一覧

コメント

コメントの記入