セキュリティの達人が語るこれからの対策と課題@IT Security Live UP! 詳細レポート(3/3 ページ)

» 2014年03月27日 18時00分 公開
[高橋睦美&宮田健,@IT]
前のページへ 1|2|3       

Webって楽しい、攻撃者にとっても楽しい

 「皆さん、Webっていろんなことができて楽しいですよね。けれど攻撃者にとってもそれは同じで、いろんなことができるんです」――A会場の特別講演「HTML5時代のWeb開発者が知らないと“ガチヤバ”な脆弱性対策」では、@ITでも連載記事を掲載中のネットエージェント サービス事業部 フォレンジック調査グループの長谷川陽介氏がマシンガントークを展開。HTML開発の現場に向けて、セキュリティ上知っておきたいポイントをテンポよく紹介した。

ネットエージェント サービス事業部 フォレンジック調査グループ 長谷川陽介氏

 長谷川氏はまず、Webアプリケーションの時代背景から紹介した。2000年代後半以降の、Webを取り巻く技術革新はめざましい。マルチメディアなどをサポートしたHTML5をはじめ、さまざまな新しい要素が追加され、JavaScriptから操作できる範囲も増え、それが実際のWebサービスやブラウザーに次々と導入されている。しかもそのスピードは速く、「どのブラウザーにどんな機能が実装されているか、開発者にも把握できない状況」(長谷川氏)だ。

 WebブラウザーがHTML5のさまざまな機能を実装し、実行速度の高速化や高機能化が進んだことに伴い、「サーバーサイドで実行されていたアプリケーション、ネイティブアプリとして実行されていた機能が、どんどんブラウザー側で実行されるようになっている」(長谷川氏)。

 そして同様に攻撃する側も、「今まではサーバー側のSQLインジェクションやネイティブアプリのバッファオーバーフローを狙っていたのが、クライアントサイドのWebアプリケーションの脆弱性の攻撃にシフトしている」という。またXSSやCSRFといった、比較的「軽い」と見なされてきたWebアプリケーションの脆弱性の深刻度も、Webアプリ自体の増加やそこで扱うデータの重要性が高まってきた結果、リスクが高まっている。そもそも、用いられるJavaScriptのコードの量自体が増えていることから、「CSRFやオープンリダイレクトなど、これまで軽い問題と見られていた問題の件数も増えていくだろう」(同氏)。

 そんな脆弱性の中から、長谷川氏は特に2つの問題を取り上げて解説した。

DOM Based XSS

 DOM Based XSSは、攻撃者がコントロール可能な文字列を元にHTMLを生成し、レンダリング時に実行されてしまうという脆弱性だ。本来ならばURLなどが入るパラメーターにJavaScriptを埋め込まれ、実行されてしまう恐れがある。JavaScriptの利用シーンやコード量が増えたことが原因となって増加している問題だそうで、「攻撃者にとって非常に有利な問題で、ホントにこれ増えてます」と長谷川氏は警鐘を鳴らす。

 対策は、基本的にはサーバー側のXSS対策と同じで、「HTML生成時にエスケープ処理をちゃんと行うこと」(同氏)。特に、TextNodeの利用を推奨するという。また、古いライブラリを使っていることが脆弱性の原因になることもあるため、その更新も重要だ。

 もしサーバー側で断片的にHTMLを生成して代入している場合には、「任意のサイトと通信しないよう、URLをきっちり固定し、しかもURL生成時は、先頭の文字列がきちんとHTTP/HTTPSで始まっているかをチェックすること」という。

オープンリダイレクト

 同氏がもう1つ指摘した脆弱性は、オープンリダイレクトだ。本来はWebサイト内でのリダイレクト機能だが、任意のサイト――例えばフィッシングサイトやSEOポイズニングなど――にジャンプさせられる恐れがある。「これによってサイト自体に被害が生じるわけではないが、『おかしなところに飛ばされた』と、ユーザーからの信頼を損なうことになってしまう」(長谷川氏)。

 この問題は、Webブラウザーによって微妙に挙動が異なる点にも注意が必要だ。WebKitなど一部のブラウザーでは、javascriptスキームが指定可能で「XSSそのものになってしまう」(長谷川氏)恐れがある。

 対策としては、転送先URLを確認すればいい……ということになるが、「これが実は難しい。URLの表記方法にはさまざまなバリエーションがあって、それらを漏れなくチェックするのは難しい。転送先URLを固定のリストとして持っておき、それ以外にジャンプする余地をなくすのがいいでしょう」(長谷川氏)。

 このように、新たに考慮すべき脆弱性もあるが、一方で「明るい話もある。使いこなすことで、アプリをよりセキュアにできる機能もある」と、長谷川氏。具体的には幾つか活用可能なレスポンスヘッダーがあるという。

 例えば「X-XSS-Protection」は、最近のWebブラウザーに実装されているXSS保護機能を制御するオプションだ。ただ、たまに誤検知があるのが玉に瑕。このエラー表示を出したくないがために、ユーザーに対し「このオプションを無効にしてほしい」と呼び掛けるWebサイトもあるというが、「それはやめてほしい」と長谷川氏は釘を刺す。もしエラーが表示された場合は、本当にそのページにXSSがないかどうかしっかり検査した上で、ページ側でヘッダーの設定を変えてほしいとした。

 また「X-Content-Type-Options」は、「HTMLではないコンテンツはHTML扱いしない」というルールを厳密に扱うためのオプションだ。これを有効にすれば、XSSなどの攻撃を受ける可能性を低くすることができる。「ほとんど副作用がないので、ぜひ付けておくといいと思う」(同氏)。

 「X-Frame-Options」は、クリックジャッキング対策を実現するもの。また「Content-Security-Policy」は、画像やスクリプトを指定したソースからしか読み込めなくするオプションで、これもXSS撲滅に有効だ。ただ、事前に読み込み可能なソースを列挙しておく必要があるため、例えばサードパーティの広告などを表示するサイトでは運用が非常に煩雑になる可能性がある。他に、ダウンロード時の「開く」ボタンを非表示として誤操作を未然に防ぐ「X-Download-Options」、HTTPS通信を強制する「Strict-Transport-Security」なども紹介した。

 HTML5時代のWebアプリケーションの脆弱性をめぐっては、まだまだ紹介しきれないトピックも存在する。2013年末にJPCERT/CCから公開された「HTML5を利用したWebアプリケーションのセキュリティ問題に関する調査報告書」などの文書も参考になるだろう。

【関連記事】

HTML5時代の「新しいセキュリティ・エチケット」

http://www.itmedia.co.jp/keywords/html5_sec.html


情報セキュリティ人材不足って本当?

ラック セキュリティ教育担当 長谷川長一氏

 Bトラックでは「情報セキュリティ人材が足りないってホント?」と題し、ラックのセキュリティ教育担当、長谷川長一氏が講演を行った。常にいわれ続けている「IT人材不足」の実体と、それを解消するために、ITの現場にいる私たちが今できることを中心に、示唆に富む指摘が行われた。

 まず長谷川氏は、不足しているという「情報セキュリティ人材」がどのような姿なのかを確認する。内閣官房情報セキュリティセンター(NISC)が2012年4月に発表した、「情報セキュリティ人材の育成に関する基礎調査」の報告書を見ると、2万2000人の人材不足だけでなく、現在ITの業務に担当している技術者の内、「スキル不十分」が14万人いるという結果が出ている。人材の量だけでなく、質のミスマッチも発生しているのが現状だ。

【関連記事】

情報セキュリティ分野の人材不足が鮮明に、「スキル不十分」も14万人

http://www.itmedia.co.jp/enterprise/articles/1204/27/news083.html


 さらにその人材の像としては、同じくNISCが2011年7月に発表した情報セキュリティ人材育成プログラムによると、高度化、多様化するセキュリティリスクに対応できる「ハイブリット型人材」、そして多くの要素を横断的に見ることができる「問題発見、解決型人材」が望まれていることが分かる。

情報セキュリティ人材育成プログラムに書かれた、望まれる情報セキュリティ人材

【関連リンク】

NISC「情報セキュリティ人材育成プログラム」 2011年7月8日

http://www.nisc.go.jp/active/kihon/pdf/jinzai2011.pdf


「王道」を通らないセキュリティの第一人者たち

 経済産業省は、上記のようなセキュリティ人材を育成するために、「情報セキュリティ人材の育成指標等の策定事業」を発表している。人材を育成するための「キャリアパスモデル」を作り、どのようにスキルアップしていくか、そのために役に立つ教育を提示している。

【関連リンク】

経済産業省「情報セキュリティ人材の育成指標等の策定事業」2013年7月

http://www.meti.go.jp/policy/it_policy/jinzai/24freport5.pdf


 この策定事業には、講演者である長谷川氏も参加した。しかし長谷川氏は、「これを見てどのようなことができるか」という点については悩ましいという。

 「例えば、セキュリティのこの分野ならこの人が詳しい、という名前はすぐに出てくるが、新卒学生がその人のスキル取得の方法を実践して、その人と同じレベルになれるかというと悩む。誰にでもできることではない」と長谷川氏は述べる。キャリアパス作りというと、大学や高専で情報工学を学んで、実戦経験を積む……という王道が目に浮かぶが、「(セキュリティに詳しい人で)王道を歩んだ人が一人もいなかった」(長谷川氏)。

 長谷川氏は現状を「多様化」と述べる。いろんな分野から最終的にセキュリティにやってきて、これまでの知識がセキュリティに生きている、という状況ではないかとした。「自分も経営学を学び、リスク分析をやってきた。MBAを取ろうと思っていたのに、なぜかセキュリティをやっている」(長谷川氏)。ただし、これまでこのような育成指標がセキュリティ分野に存在していなかったため、ぜひ参考にはしてほしいと長谷川氏は述べる。

全く実感のない「情報セキュリティ人材の超売り手市場」

 次に長谷川氏は、この情報セキュリティ人材不足の現状を、セキュリティの現場にいるものとして「売り手市場と思われがちだがそんなことは全くなく、逆にネットワークインフラや開発の仕事、商談が減ったという印象ではないか?」と問い掛ける。売り手市場どころか、自分自身が生き残るために何をすべきか、多くのエンジニアが模索しているのではないだろうか。

 長谷川氏は、今後必要となる情報セキュリティ人材として、「外部で通用する実践的スキルを持った人材」ではないかと述べる。長谷川氏は「知識や技術がある、大規模案件に関わったことがある、経験年数が長いというのは、スキルの指標として正しいわけではない。実践的なスキルとは、持っている知識を生かして、状況に応じて合理的な判断ができる人材」とした。

 今後、情報セキュリティ人材はますます多様化するだろうと長谷川氏は述べる。「セキュリティエンジニア、という定義も1つだけでは表現できないだろう。セキュリティを専業とするラックにおいても、社内では20の分類がある。その分、教育の仕方も各分野に合わせ、複数存在すべきだろう」。

セキュリティ実践教育は社内から社外へ

 これらのことを総合すると、これまで企業内で行われてきたようなOJTや独学だけではカバーができないことが分かるだろう。「独学は孤独な学習であるだけでなく、独善的な学習でもある。全く違うことを学んでしまっているかもしれない。また、OJTは社内のレベルを超えられないという問題もある上に、ふさわしい人がトレーナーになっているのかも確認しなくてはならない」(長谷川氏)

 この点について長谷川氏は、徐々に実践的な教育の試みが広がってきていると述べる。「例えばコンテストやインターンシップ、PBL(Project Based Learning)などが広がっている。例えば、セキュリティキャンプやSECCON、Hardeningだ」(長谷川氏)。これらの活動は、社内教育の限界を超え、チャレンジできる体系的な実践教育の場として、サイバー犯罪捜査技術向上に役立っているといえる。長谷川氏は「このような場を見本とし、ヒント、アイデアを取り入れてほしい」とした。

【関連記事】

セキュリティ・キャンプ中央大会2013レポート:僕らのセキュリティ5日間戦争

http://www.atmarkit.co.jp/ait/articles/1308/26/news020.html

優勝は会津若松市のITエンジニア集団:管理を無茶振りされたサーバを守り抜け! Hardening One Remix開催

http://www.atmarkit.co.jp/ait/articles/1307/17/news092.html

川口洋のセキュリティ・プライベート・アイズ(40)実録、「Hardening Zero」の舞台裏

http://www.atmarkit.co.jp/fsecurity/column/kawaguchi/040a.html


 長谷川氏は、「実践的な人材育成はまだこれからだ。グローバル化で世界を目指そうという声もあるが、その前に『社外に出そう』ということから始め、チャレンジできる場を与えてみては」と述べる。

 さらに長谷川氏は「せっかく育てた人材を、しっかり生かす環境も作らないといけないし、“セキュリティ人材を生かす環境を作れる人”も作らないといけない」とも指摘する。「育てたい人、教育したい人を作ることも重要。その体制を作って初めて、情報セキュリティ人材不足の問題が解決するのではないかと思う」(長谷川氏)。

「福島の今」を伝える地道な取り組み

 セミナーでは最後に「コミュニティセッション」という時間を設け、ベンダーなどの枠にとらわれずに活動しているコミュニティの姿も紹介した。

「エフスタ!! TOKYO」の影山哲也氏

 東京会場では、福島県をベースに活動しているコミュニティ「エフスタ!!」の東京支部に当たる「エフスタ!! TOKYO」の影山哲也氏が登場。3回目の「3月11日」を前に、「あの日、何が起こったのか」「今、福島はどうなっているのか」を紹介した。

 エフスタ!!は、「ITを楽しもう」というコンセプトで活動しているコミュニティだ。2010年から、Windowsやデータベース、あるいはセキュリティなど、その時々に応じてさまざまなテーマで勉強会を定期的に開催してきた。特に今は「子供たちへのIT教育」に力を入れていきたいという。「世界を変える技術者を育て、ひいては『福島から未来のITを作る』ことができれば」と影山氏は述べる。

 影山氏はこの講演で、「震災を風化させてはいけない」という思いと「それでも前に進まなければ」という思いの間で揺れ動いてきたという率直な気持ちも吐露。また、メディアによる報道と地元の実情との間に違和感を感じたことをきっかけに、「福島の今」を伝える場として「エフスタ!!TOKYO」を開催するに至った経緯も説明した。

 さらに、2013年5月に自ら取材して撮影してきた写真と共に、飯舘村や相馬市、新地町や南相馬市、浪江町の現状を紹介。その上で、「皆さんがどう感じたか、何を考えたか」を大事にして欲しいと呼び掛けた。

 元々福島県の中でも中心部にある郡山市を拠点としてきたエフスタ!!だが、今後は、福島市や会津若松市、あるいは宮城県仙台市など他の地域のコミュニティとも連携し、活動を広げていくという。また4月12日には「エフスタ!!春のITまつり」を開催する他、子供たちに向けたIT教育活動などに取り組んでいくという。

CTFはとんでもないものを盗んでいきました、私の時間です……

 一方大阪では、3月1〜2日に開催されたセキュリティコンテスト、「SECCON」で2位という成績を収めたチーム「EpsilonDelta(イプシロンデルタ)」の矢倉大夢氏、小池悠生氏、山崎啓太郎氏の3名が登場。CTFとはどういったものなのか、参加者目線で解説するとともに、SECCON全国大会で出題された問題をどのように解いていったかを解説した。

 EpsilonDeltaは6名の学生で結成されたCTFチームだ。バイナリ解析やリバースエンジニアリング、Webアプリケーションなど、それぞれ「得意技」を持った面々がそろっている。

 「昼休みに1問解いておいてSkypeに投げて、後は別のメンバーが解いたり、また重要な大会があるときには学校の部室に泊まり込んだり」(矢倉氏)しながら、日本国内のCTFはもちろん、「NocON Name CTF」「Codegate CTF」といった海外のCTF大会にも積極的に参加し、腕を磨いてきた。数えてみれば、2013年はのべ約30大会に参加。「気がついたら24時間ずっと、何も食べずに問題を解いていたなんてこともある」という。

SECCONと期末試験のわずかな間に登壇していただいたEpsilonDeltaのメンバー。「CTFはわれわれの時間を奪い、ついでにわれわれの成績も奪っているような状態(笑)」(矢倉氏)という

 このセッションでは、直前に行われたSECCON全国大会の問題の「ライトアップ(Write Up)」も行ってもらった。ライトアップとは、競技終了後にどうやって問題を解いたかを発表する作業のこと。「自分用のメモ」という意味合いもあるが、互いにそれを参照することによって「こんな解き方があるのか」「こんなツールがあるのか」といった気付きを得ることができる。

 小池氏は、問題サーバーに用意されたプログラムのソースコードの中から「FLAG(=キーワード)」を取り出しすまでの試行錯誤の過程を解説した。同氏が取り組んだ問題は、普通ならば「Metasploit」というツールを使って解くのが定石。しかし準備不足でその使い方に慣れていなかったことから苦戦し、悩んだ末、「Metasploitにできてオレにできないわけがない!」と開眼。手でシェルコードを書いて問題に取り組むことにしたが、その作業に予想以上の時間を費やしたそうだ。「これが敗因の1つ」と小池氏は振り返る。

 山崎氏が紹介したのは、Webアプリケーションに関する問題だ。いわゆるクロスサイトスクリプティングやSQLインジェクションといった手法を使って、問題サーバー上で稼働しているWebアプリの入力フォームやURLにさまざまな入力値を与え、各ステージの「FLAG」を得ていく。仮説に基づいてさまざまな入力値を試し、返ってきた情報を基に絞り込んでさらに試していく……という作業の繰り返しだ。またその後、得点を独占するため、他チームのSSH接続を切断してしまう妨害行為の自動化などにも取り組んだそうだ。

 「単純に面白いのでやっている」という矢倉氏だが、CTFには実利的なメリットもあるという。

 「競技用のシステムは本当のシステムとかけ離れている、と思う人もいるかもしれないが、その脆弱性がどれほどの脅威につながるかが分かり、攻撃に気を配るようになる。また、Webの知識だけでなく、バイナリやシェルコマンドなどコンピューターに関する幅広い知識を身に付けられるのもメリットだと思う」と小池氏。手軽に始められるので、興味があればぜひCTFに参加し、ゆくゆくはDEFCONも目指してほしいと会場に呼び掛けた。

【関連記事】

「SECCON全国大会2013」リポート:日本最大のセキュリティコンテスト、その頂点に立ったのは?

http://www.atmarkit.co.jp/ait/articles/1403/18/news005.html

最初の支援対象はCTFチーム「EpsilonDelta」:来たれ、次世代の「すごうで」――ラックが若手技術者支援プログラム

http://www.atmarkit.co.jp/ait/articles/1312/27/news075.html


前のページへ 1|2|3       

Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。