自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 OWASP Kansai Chapter Leader OWASP Japan Chapter Advisory Board member

Size: px
Start display at page:

Download "自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 OWASP Kansai Chapter Leader OWASP Japan Chapter Advisory Board member"

Transcription

1 HTML5 and Security Part 4 : DOM based XSS HTML5 セキュリティその 4 : DOM based XSS 編 Sep Yosuke HASEGAWA

2 自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 OWASP Kansai Chapter Leader OWASP Japan Chapter Advisory Board member

3 お知らせ Announcement

4 HTML5 Security Report English edition from JPCERT/CC

5 今日の話題 DOM based XSS Today's topic : DOM based XSS

6 DOM based XSS JavaScript で DOM を組み立てるときの XSS location.href = location.hash.substring(1); document.write( document.referrer ); div.innerhtml = xhr.responsetext; サーバ側のHTML 生成には問題なし JavaScriptの利用に合わせて発生も増加

7 DOM based XSS

8 DOM based XSS

9 DOM based XSS ブラウザの XSS フィルタを通過することが多い location.hash 内の実行コードはサーバ側にログが残らない // div.innerhtml = location.hash.substring(1); history.pushstate でアドレスバー書き換え 技術のあるユーザでも XSS に気づきにくい

10 DOM based XSS DOM based XSS は増えている JavaScript の大規模化に伴い増加 サーバ側での対策と原則は同じ HTML 生成時 ( レンダリング時 ) にエスケープ URL 生成時はhttp(s) のみ ライブラリの更新を忘れずに (jqueryとか) CSSやイベントハンドラの動的生成は避ける

11 DOM based XSS HTML 生成時にエスケープ div.innerhtml = s.replace( /&/g, "&" ).replace( /</g, "<" ).replace( />/g, ">" ).replace( /"/g, """ ).replace( /'/g, "&#x27;" ); むしろ textnode を使おう! div.appendchild( document.createtextelement( s ) );

12 DOM based XSS URL 生成時は http(s) のみ // bad code div.innerhtml = '<a href="' + url + '">' + url + '</a>'; if( url.match( /^https?: / // ) ){ var elm = docuement.createelement( "a" ); elm.appendchild( document.createtextnode( url ) ); elm.setattribute( "href", url ); div.appendchild( elm ); }

13 DOM based XSS URL 生成時は http(s) のみ リダイレクト時はオープンリダイレクタを発生させないよう同一ホストに制限 var base = location.origin + "/"; if( url.substring( 0, base.length ) == base ){ location.href = url; }

14 ここまで DOM based XSS の 基本です Basics of DbXSS so far

15 Mutation-based XSS

16 Mutation-based XSS : mxss DOM based XSS の一種 innerhtml / outerhtml の参照により元の DOM 構造とは異なる HTML 文字列が返されることにより XSS が発生 element1.innerhtml = element2.innerhtml; HTMLElement innerhtml String innerhtml HTMLElement 異なる HTML

17 Mutation-based XSS : mxss DOM based XSS の一種 innerhtml / outerhtml の参照により元の DOM 構造とは異なる HTML 文字列が返されることにより XSS が発生 The innerhtml Apocalypse How mxss attacks change everything we believed to know so far mxss Attacks: Attacking well-secured Web-Applications by using innerhtml Mutations mxss The Spanner

18 Mutation-based XSS : mxss <!-- IE8 --> <div id="div1"> <input type="text" value="``onmouseover=alert(1)"> </div> <div id="div2"></div>... div2.innerhtml = div1.innerhtml; <div id="div2"> <INPUT value=``onmouseover=alert(1) type=text> </div>

19 Mutation-based XSS : mxss <input type="text" value="``onmouseover=alert(1)"> <INPUT value=``onmouseover=alert(1) type=text> <listing><img src=1 onerror=alert(1)></listing> <LISTING><img src=1 onerror=alert(1)></listing> <style/></style><img src=1 onerror=alert(1)></style> <STYLE></style><img src=1 onerror=alert(1)></style> <title><img src=1 onerror=alert(1)></title> <TITLE><img src=1 onerror=alert(1)></title>

20 Mutation-based XSS : mxss mxss innerhtml/outerhtml を参照したときに本来の DOM 構造とは異なる文字列が取得される IE 以外でも発生し得る (CDATA 要素の参照など ) 対策 攻撃者がコントロール可能な要素の innerhtml / outerhtml を参照しない 文字列ではなく DOM 操作で

21 ここまでのまとめ DOM based XSS JS 上で発生する XSS Mutation-based XSS JS 上で innerhtml/outerhtml を参照したときに発生する XSS 対策 文字列操作ではなく DOM 操作で createelement / textcontent

22 DOM 操作めんどうくさい! Manipulating DOM is messy!

23 DOM 操作めんどうくさい ( 例 ) [ ] var xhr = new XMLHttpRequest(); xhr.open( "GET", " true ); xhr.onload = function(){ }; "<a href=' 新製品 </a>", "<a href=' お知らせ </a>", "<img src=# onerror=alert(1)>" var items = JSON.parse( xhr.responsetext ); var elm = document.getelementbyid( "div" ); for( var i = 0; i < items.length; i++ ){ elm.innerhtml += "<div class='item'>" + items[ i ] + "</div>"; } ここ DOM 操作で作るのしんどい

24 DOM 操作めんどうくさい tostatichtml IE8+ 安全な HTML 文字列を返す お手軽 div.innerhtml = tostatichtml( s ); "<script>alert(1)</script>" "" "<img src=# onerror=alert(1)>" "<img src=#>" "<a href='javascript:alert(1)'>link</a>" "<a>link</a>"

25 DOM 操作めんどうくさい IE 以外はどうするか 第 4 回 次に, ブラウザ側の機能を使って HTML をパースする方法です これは createhtmldocument を使うとよいでしょう createhtmldocument は HTML5 仕様で標準化されており, 安定して使うことができます IE でも IE9 以降でサポートされています HTML パース処理を行い, 新たなドキュメントを作ったら, あとはすべての DOM ノードと Attribute を列挙して, 許可したタグと属性以外をすべて除去すれば完了です 危険性が理解されにくいネイティブアプリ内 XSS(2): フロントエンド Web 戦略室 gihyo.jp 技術評論社

26 ブラウザの機能を使って HTML をパース DOMParser / createhtmldocument ブラウザ内蔵の HTML パーサ 現在表示している document に影響を与えずに DOM ツリーを構築可能 Opera 12 を除く

27 ブラウザの機能を使って HTML をパース DOMParser var s = xhr.responsetext; var parser = new DOMParser(); var doc = parser.parsefromstring( s, "text/html" ); var elm = doc.body; createhtmldocument var s = xhr.responsetext; var elm = document.implementation.createhtmldocument("").body; elm.innerhtml = s; 文字列をパースし DOM ノードを構築可能 DOM ノードから必要な要素 属性を切り出す

28 ブラウザの機能を使って HTML をパース DOMParser createhtmldocument は現在表示している document に影響を与えない var s = "<img src=# onerror=alert(1)>"; // 発火しない!! var parser = new DOMParser(); var doc = parser.parsefromstring( s, "text/html" );c createcontextualfragment はブラウザによって発火する

29 ノードから必要な要素 属性を切り出す DOMParser createhtmldocument で HTMLElement を生成 生成された HTMLElement の要素 属性を列挙して安全なものだけを抽出 a div img class title href class class alt src

30 文字列と HTMLElement 作成した HTMLElement を文字列に変換しないこと // bad code. var parser = new DOMParser(); var doc = parser.parsefromstring( s, "text/html" ); div.innerhtml = doc.body.innerhtml; HTMLElement div. innerhtml String doc.body. innerhtml HTMLElement

31 文字列と HTMLElement HTMLElement から文字列への変換は mxss を引き起こす ( 可能性がある ) // bad code. IE では mxss となる var s = "<listing><img src=1 onerror=alert(1)></listing>"; var parser = new DOMParser(); var doc = parser.parsefromstring( s, "text/html" ); div.innerhtml = doc.body.innerhtml;

32 文字列と HTMLElement こういうコードはダメ // bad code. tostatichtml モト キを作りたい if( window.tostatichtml ){ return tostatichtml( s ); }else{ var parser = new Parser(); var doc = parser.parsefromstring( s, "text/html" ); var newnode = sanitize( doc.body ); return newnode.innerhtml; }

33 文字列と HTMLElement 書くならこういう感じ // tostatichtml モト キを作りたい if( window.tostatichtml ){ var div = document.createelement("div"); div.innerhtml = tostatichtml( s ); return div.childnodes; }else{ var parser = new Parser(); var doc = parser.parsefromstring( s, "text/html" ); var newnode = sanitize( doc.body ); return newnode.childnodes; // HTMLElement }

34 RickDOM

35 RickDOM 簡単かつ安全に使えるライブラリ var rickdom = new RickDOM(); var elms = rickdom.build( "<img src=# onerror=alert(1)>" ); for( var i = 0; i < elms.length; i++ ){ div.appendchild( elms[ i ] ); } 独自の許可ルールの設定も可能 var rickdom = new RickDOM(); rickdom.allowings = { img: { src: { pattern : "^https?: / /", flag: "i" } } }; var elms = rickdom.build( "<img src=# onerror=alert(1)>" );

36 よくわかんない 不安だ Anxious

37 sandboxed iframe sandbox な iframe を応用 <iframe id="iframe" sandbox seamless style="border-width:0px"></iframe>... document.getelementbyid("iframe").srcdoc = xhr.responsetext; sandbox 属性により JS を禁止 (XSS を防ぐ )

38 sandboxed iframe sandbox な iframe を応用 <iframe id="iframe" sandbox seamless style="border-width:0px"></iframe>... document.getelementbyid("iframe").srcdoc = xhr.responsetext; sandbox 属性により JS を禁止 (XSS を防ぐ ) seamless 属性により親フレームの CSS を継承 コンテンツは srcdoc 属性に直接設定 HTMLElement なら contentdocument 経由で

39 sandboxed iframe "/page" などのリンクの許可 <iframe id="iframe" sandbox="allow-top-navigation" seamless style="border-width:0px"></iframe>... document.getelementbyid( "iframe" ).srcdoc = '<base href=" target="_parent">' + '<a href="/page">next</a>'; allow-top-navigation で親 frame 内でのページ遷移を許可

40 まとめ DOM based XSS,mXSS 文字列で操作しない DOM 経由で操作 リンクはhttp(s) のみ 文字列から DOM の構築 DOMParser API が便利 sandboxed iframe DOM baed XSS の予防に便利

41 質問タイム Question?

42 Question? 質問 @hasegawayosuke

自己紹介 長谷川陽介 ( はせがわようすけ ( 株 ) セキュアスカイ テクノロジー常勤技術顧問 セキュリティキャンプ講師 (2008 年 ~) OWASP Kansai チャプターリーダー OWASP Japan ボードメンバー CODE BLUE カンファレ

自己紹介 長谷川陽介 ( はせがわようすけ ( 株 ) セキュアスカイ テクノロジー常勤技術顧問 セキュリティキャンプ講師 (2008 年 ~) OWASP Kansai チャプターリーダー OWASP Japan ボードメンバー CODE BLUE カンファレ PHP デベロッパーのための JavaScript セキュリティ入門 ( 株 ) セキュアスカイ テクノロジー 常勤技術顧問 長谷川陽介 PHP カンファレンス福岡 2016 自己紹介 長谷川陽介 ( はせがわようすけ / @hasegawayosuke) ( 株 ) セキュアスカイ テクノロジー常勤技術顧問 セキュリティキャンプ講師 (2008 年 ~) OWASP Kansai チャプターリーダー

More information

自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 OWASP Kansai Chapter Leader OWASP Japan Chapter Advisory Board member

自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問  OWASP Kansai Chapter Leader OWASP Japan Chapter Advisory Board member HTML5 のセキュリティ もうちょい詳しく HTML5 セキュリティその 3 : JavaScript API Jun 6 2014 Yosuke HASEGAWA 自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 http://utf-8.jp/ OWASP Kansai Chapter Leader OWASP Japan Chapter Advisory

More information

自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 セキュリティ キャンプ Webセキュリティクラス OWASP Kansai Chapter Leader OWASP Japan board member

自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 セキュリティ キャンプ Webセキュリティクラス OWASP Kansai Chapter Leader OWASP Japan board member HTML5 時代の Web セキュリティ May 10 2014 Yosuke HASEGAWA 自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 セキュリティ キャンプ Webセキュリティクラス OWASP Kansai Chapter Leader OWASP Japan board member http://utf-8.jp/ 宣伝 セキュリティ

More information

自己紹介 XSS のほうから来ました author of jjencode, aaencode

自己紹介 XSS のほうから来ました  author of jjencode, aaencode ぼくたちの愛した IE8 はせがわようすけ @hasegawayosuke 自己紹介 はせがわようすけ @hasegawayosuke XSS のほうから来ました http://utf-8.jp/ author of jjencode, aaencode さよなら Internet Explorer 8 Internet Explorer 8 タイムライン 2005-06 年 Ajax Web 2.0

More information

Yosuke Secure Sky Technology Inc. Technical Advisor OWASP Kansai Chapter Leader OWASP Japan Chapter board member CODE BLUE Re

Yosuke Secure Sky Technology Inc. Technical Advisor OWASP Kansai Chapter Leader OWASP Japan Chapter board member CODE BLUE Re ELECTRON Build cross platform desktop XSS It s easier than you think Secure Sky Technology Inc. Yosuke HASEGAWA Yosuke HASEGAWA @hasegawayosuke Secure Sky Technology Inc. Technical Advisor OWASP Kansai

More information

自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 Microsoft MVP for Consumer Security Oct

自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 Microsoft MVP for Consumer Security Oct Bypass SOP in a time of HTML5 Jan 29 2014 Yosuke HASEGAWA 自己紹介 はせがわようすけ ネットエージェント株式会社 株式会社セキュアスカイ テクノロジー技術顧問 Microsoft MVP for Consumer Security Oct 2005 - http://utf-8.jp/ お知らせ HTML5 調査報告 from JPCERT/CC

More information

JavaScript 演習 2 1

JavaScript 演習 2 1 JavaScript 演習 2 1 本日の内容 演習問題 1の解答例 前回の続き document.getelementbyid 関数 演習問題 4 イベント処理 基本的なフォーム テキストボックスの入力値の取得 演習問題 5 演習問題 1 prompt メソッドと document.write メソッドを用いて, ユーザから入力されたテキストと文字の色に応じて, 表示内容を変化させる JavaScript

More information

JavaScript の使い方

JavaScript の使い方 JavaScript Release10.5 JavaScript NXJ JavaScript JavaScript JavaScript 2 JavaScript JavaScript JavaScript NXJ JavaScript 1: JavaScript 2: JavaScript 3: JavaScript 4: 1 1: JavaScript JavaScript NXJ Static

More information

自己紹介 はせがわようすけ OWASP Kansai チャプターリーダー OWASP Japan アドバイザリボードメンバー 株式会社セキュアスカイ テクノロジー常勤技術顧問 CODE BLUE Security Conference Review board member セキュリティキャンプ講師

自己紹介 はせがわようすけ OWASP Kansai チャプターリーダー OWASP Japan アドバイザリボードメンバー 株式会社セキュアスカイ テクノロジー常勤技術顧問 CODE BLUE Security Conference Review board member セキュリティキャンプ講師 タイトル未定 - #ssmpjp ( ハセガワナイト ) - はせがわようすけ 自己紹介 はせがわようすけ OWASP Kansai チャプターリーダー OWASP Japan アドバイザリボードメンバー 株式会社セキュアスカイ テクノロジー常勤技術顧問 CODE BLUE Security Conference Review board member セキュリティキャンプ講師 (Web クラス /

More information

JavaScript演習

JavaScript演習 JavaScript 演習 2 1 本日の内容 prompt 関数 演習 1 演習 2 document.getelementbyid 関数 演習 3 イベント処理 基本的なフォーム テキストボックスの入力値の取得 演習 4 IE における JavaScript のデバッグ方法 1. ツール インターネットオプションメニューを実行 2. 詳細設定タブの スクリプトエラーごとに通知を表示する をチェック

More information

2.2 Reflected XSS 攻撃攻撃者の用意した悪意のあるリンクとターゲットサーバが同じホストである場合の Reflected XSS 攻撃を, 本稿では Reflected XSS 攻撃と呼ぶ. 例えば, サーバ A の target.php に Reflected XSS 脆弱性があった

2.2 Reflected XSS 攻撃攻撃者の用意した悪意のあるリンクとターゲットサーバが同じホストである場合の Reflected XSS 攻撃を, 本稿では Reflected XSS 攻撃と呼ぶ. 例えば, サーバ A の target.php に Reflected XSS 脆弱性があった Busting Frame Busting 機能を備えた Click Jacking 攻撃と same-origin reflected XSS 攻撃 マルチメディア, 分散, 協調とモバイル (DICOMO2016) シンポジウム 平成 28 年 7 月 田邉杏奈 1 寺本健悟 2 齊藤泰一 1 概要 : Web アプリケーション上における攻撃手法の一つとして Click Jacking 攻撃がある.Click

More information

コンテンツメディアプログラミング実習2

コンテンツメディアプログラミング実習2 CMP 実習 2 JavaScript + 地図を使ってみよう 中村, 宮下, 斉藤, 菊池 1 必要な知識 JavaScript の基本 HTMLのどの部品なのかを指定する方法 その部品にイベントを埋め込む方法 それを JavaScript で記述する方法 2 要素をどうやって取得する? DOM とは Document Object Model HTML や XML の各要素についてアプリケーションから利用するための

More information

SmartBrowser_document_build30_update.pptx

SmartBrowser_document_build30_update.pptx SmartBrowser Update for ios / Version 1.3.1 build30 2017 年 8 月 株式会社ブルーテック 更新内容 - 概要 ios Version 1.3.1 build28 の更新内容について 1. 設定をQRから読み込み更新する機能 2.URLをQRから読み込み画面遷移する機能 3.WEBページのローカルファイル保存と外部インテントからの起動 4.JQuery-LoadImageライブラリの組み込み

More information

JavaScript演習

JavaScript演習 JavaScript 演習 2 山口研究室後期博士課程 3 年玉川奨 ( たまがわすすむ ) 居室 :24-604 / 23-620 mail : [email protected] 1 前回の補足説明 + 復習 IE における JavaScript のデバッグ方法 prompt 関数 演習問題 1 IE における JavaScript のデバッグ方法 1. ツール インターネットオプションメニューを実行

More information

AJAXを使用した高い対話性を誇るポートレットの構築

AJAXを使用した高い対話性を誇るポートレットの構築 Oracle Application Server Portal テクニカル ノート AJAX 2006 7 概要 Web Web Web UI Web Web Web Web Ajax Asynchronous JavaScript and XML Ajax Ajax 1 API JSR 168 Web Java JSR 168 JavaScript AJAX: 画面の背後にあるテクノロジ Web

More information

paper.pdf

paper.pdf Cop: Web 1,a) 1,b) GUI, UI,,., GUI, Java Swing., Web HTML CSS,. CSS,, CSS,.,, HTML CSS Cop. Cop, JavaScript,,. Cop, Web,. Web, HTML, CSS, JavaScript, 1., GUI, Web., HTML CSS (UI), JavaScript, Web GUI.

More information

第 8 回の内容 クライアントサイド処理 JavaScript の基礎

第 8 回の内容 クライアントサイド処理 JavaScript の基礎 第 8 回の内容 クライアントサイド処理 JavaScript の基礎 クライアントサイド処理 クライアントサイド / サーバサイド クライアントサイド サーバサイド Web ブラウザ Web サーバ 動的な Web ページ Web ブラウザ Web サーバ Web ブラウザ Web サーバ リソース生成 描画 描画 リソース生成 再描画 描画 再描画 描画 リソース生成 再描画 動的な Web ページとページ遷移

More information

untitled

untitled Ajax Web Ajax http://www.openspc2.org/javascript/ajax/ajax_stu dy/index.html Life is beautiful Ajax http://satoshi.blogs.com/life/2005/06/ajax.html Ajax Ajax Asynchronous JavaScript + XML JavaScript XML

More information

untitled

untitled JavaScript HP JavaScript JavaScript Web JavaScript Web JavaScript JavaScript JavaScript HTML HTML HTML JavaScript 1. JavaScript ON/OFF 2. JavaScript 3. 4. 5. 6. 7. 8. 9. 10. if 11. if 12. switch 13. 14.

More information

第7回 Javascript入門

第7回 Javascript入門 Slide URL https://vu5.sfc.keio.ac.jp/slide/ Web 情報システム構成法第 8 回 JavaScript 入門 萩野達也 ([email protected]) 1 Web ページの構成要素 直交技術を組み合わせる 内容 スタイル ( 表現方法 ) プログラミング スタイル プログラミング JavaScript CSS Web ページ Web 文書

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 情報システム基礎演習 B 2016/01/28 (Thurs.) テーマ 4 JavaScript による電卓 Web アプリを作成しましょう 健山智子 ([email protected]) 広島工業大学情報学部知的情報システム学科知的情報可視化戦略研究室 (ival) 講義のアウトライン 2 1. グループの決定 : 1. 5 人での 6 グループ ( ランダム

More information

プロキシ Pac ファイルとそのサンプルについて

プロキシ Pac ファイルとそのサンプルについて プロキシ Pac ファイルとそのサンプルについて 目次 質問 : 質問 : プロキシ Pac ファイルとは何ですか 例を挙げてください 環境 : Cisco Web セキュリティアプライアンス 注 : このナレッジベース記事では シスコによる保守およびサポートの対象でないソフトウェアを参照しています 情報は 利便性のために無償で提供されています さらにサポートが必要な場合は ソフトウェアベンダーに連絡してください

More information

第7回 Javascript入門

第7回 Javascript入門 Slide URL https://vu5.sfc.keio.ac.jp/slide/ Web 情報システム構成法第 9 回 JavaScript 入門 (2) 萩野達也 ([email protected]) 1 JavaScript 入門 ( 前回 ) オブジェクト指向について JavaScriptの誕生プロトタイプベースのオブジェクト指向 言語 構文および制御構造 代入条件文繰り返し関数

More information

9 WEB監視

9  WEB監視 2018/10/31 02:15 1/8 9 WEB 監視 9 WEB 監視 9.1 目標 Zabbix ウェブ監視は以下を目標に開発されています : ウェブアプリケーションのパフォーマンスの監視 ウェブアプリケーションの可用性の監視 HTTPとHTTPSのサポート 複数ステップで構成される複雑なシナリオ (HTTP 要求 ) のサポート 2010/08/08 08:16 Kumi 9.2 概要 Zabbix

More information

Web±ÜÍ÷¤Î³Ú¤·¤µ¤ò¹â¤á¤ëWeb¥Ú¡¼¥¸²Äݲ½¥·¥¹¥Æ¥à

Web±ÜÍ÷¤Î³Ú¤·¤µ¤ò¹â¤á¤ëWeb¥Ú¡¼¥¸²Äݲ½¥·¥¹¥Æ¥à Web Web 2 3 1 PC, Web, Web. Web,., Web., Web HTML, HTML., Web, Web.,,., Web, Web., Web, Web., Web, Web. 2 1 6 1.1.................................................. 6 1.2.................................................

More information

Microsoft Word - Webシステム/Webアプリケーション セキュリティ要件書 docx

Microsoft Word - Webシステム/Webアプリケーション セキュリティ要件書 docx Web システム /Web アプリケーションセキュリティ要件書 OWASP Edition November 1, 2013 Copyright 2002- The Open Web Application Security Project (OWASP). All Rights Reserved. Permission is granted to copy, distribute, and/or

More information

Drive-by Download 攻撃に おけるRIG Exploit Kitの 解析回避手法の調査

Drive-by Download 攻撃に おけるRIG Exploit Kitの 解析回避手法の調査 高対話型クライアントハニーポット StarC の開発と Drive-by Download 攻撃のトラフィックデータの解析 明治大学総合数理学部小池倫太郎 Drive-by Download攻撃 概要 Webサイトを使ったWebブラウザに対する攻撃 悪性Webサイトへ誘導された脆弱なWebブラウザに対して そのブラ ウザの脆弱性を突くようなコードを送り込んで制御を奪い マルウェ アをダウンロード 実行させる

More information

WEBシステムのセキュリティ技術

WEBシステムのセキュリティ技術 WEB システムの セキュリティ技術 棚橋沙弥香 目次 今回は 開発者が気をつけるべきセキュリティ対策として 以下の内容について まとめました SQLインジェクション クロスサイトスクリプティング OSコマンドインジェクション ディレクトリ トラバーサル HTTPヘッダ インジェクション メールヘッダ インジェクション SQL インジェクションとは 1 データベースと連動した Web サイトで データベースへの問い合わせや操作を行うプログラムにパラメータとして

More information

vuejs_meetup.key

vuejs_meetup.key Rails Vue.js Vue.js Meetup 2015-01-28 @kazupon About Me @kazupon CUUSOO SYSTEM Vue.js Plugin vue-i18n: https://github.com/kazupon/vue-i18n vue-validator: https://github.com/kazupon/vue-validator Vue.js

More information

HTTP 404 への対処

HTTP 404 への対処 Sitecore CMS 6 HTTP 404 への対処 Rev: 2010-12-10 Sitecore CMS 6 HTTP 404 への対処 Sitecore を使用して HTTP 404 Page Not Found 状態に対処するための開発者向けガイド 目次 Chapter 1 イントロダクション... 3 Chapter 2 HTTP 404 Page Not Found 状態... 4

More information

Web プログラミング 1 JavaScript (4) (4 章 ) 2013/7/17( 水 ) 日時 講義内容 4/10 ( 水 ) ガイダンス Web (1 章 ) 4/17 ( 水 ) HTML+CSS (1) (2 章 ) 4/24 ( 水 ) HTML+CSS (2) (2 章 ) 5

Web プログラミング 1 JavaScript (4) (4 章 ) 2013/7/17( 水 ) 日時 講義内容 4/10 ( 水 ) ガイダンス Web (1 章 ) 4/17 ( 水 ) HTML+CSS (1) (2 章 ) 4/24 ( 水 ) HTML+CSS (2) (2 章 ) 5 Web プログラミング 1 JavaScript (4) (4 章 ) 2013/7/17( 水 ) 日時 講義内容 4/10 ( 水 ) ガイダンス Web (1 章 ) 4/17 ( 水 ) HTML+CSS (1) (2 章 ) 4/24 ( 水 ) HTML+CSS (2) (2 章 ) 5/8 ( 水 ) HTML+CSS (3) (2 章 ) 5/15 ( 水 ) HTML+CSS (4)

More information

◎phpapi.indd

◎phpapi.indd PHP や HTML の知識がなくても大丈夫 PHP や HTML の基本も学べる FileMaker データベースを Web に公開したい FileMaker を使って動的な Web サイトを作りたい FileMaker しか知らない人が Web アプリケーションを作れるようになる! はじめに まず 本書を手に取ってくださりありがとうございます 本書はある程度 FileMaker Pro の扱いに慣れ

More information

SGML HTML XML Markup Language Web HTML HTML SGML Standard Generalized Markup Language Markup Language DTD Document Type Definition XML SGML Markup Language HTML XML HTML XML JavaScript JAVA CGI HTML Web

More information

第7回 Javascript入門

第7回 Javascript入門 Slide URL https://vu5.sfc.keio.ac.jp/slide/ Web 情報システム構成法第 9 回 JavaScript 入門 (2) 萩野達也 ([email protected]) 1 JavaScript 入門 ( 前回 ) オブジェクト指向について JavaScriptの誕生プロトタイプベースのオブジェクト指向 言語 構文および制御構造 代入条件文繰り返し関数

More information

HOW DO I WebBrowser コントロールで HTML5 を 使用するには ここでは以下の手順で説明します Video 要素を使用する Silverlight と JavaScript の間でやり取りする Canvas 要素を使用する Video 要素を使用する 1. Visual Stu

HOW DO I WebBrowser コントロールで HTML5 を 使用するには ここでは以下の手順で説明します Video 要素を使用する Silverlight と JavaScript の間でやり取りする Canvas 要素を使用する Video 要素を使用する 1. Visual Stu HOW DO I WebBrowser コントロールで HTML5 を 使用するには ここでは以下の手順で説明します Video 要素を使用する Silverlight と JavaScript の間でやり取りする Canvas 要素を使用する Video 要素を使用する 1. Visual Studio で "Windows Phone ゕプリケーション " プロジェクトテンプレートを使って "HTML5BrowserFeatures"

More information

実験 5 CGI プログラミング 1 目的 動的にWebページを作成する手法の一つであるCGIについてプログラミングを通じて基本的な仕組みを学ぶ 2 実験 実験 1 Webサーバの設定確認と起動 (1)/etc/httpd/conf にある httpd.conf ファイルの cgi-bin に関する

実験 5 CGI プログラミング 1 目的 動的にWebページを作成する手法の一つであるCGIについてプログラミングを通じて基本的な仕組みを学ぶ 2 実験 実験 1 Webサーバの設定確認と起動 (1)/etc/httpd/conf にある httpd.conf ファイルの cgi-bin に関する 実験 5 CGI プログラミング 1 目的 動的にWebページを作成する手法の一つであるCGIについてプログラミングを通じて基本的な仕組みを学ぶ 2 実験 実験 1 Webサーバの設定確認と起動 (1)/etc/httpd/conf にある httpd.conf ファイルの cgi-bin に関する次の項目を調べよ このとき CGIプログラムを置く場所 ( CGI 実行ディレクトリ) と そこに置いたCGIプログラムが呼び出されるURLを確認せよ

More information

JavaScript 1.! DOM Ajax Shelley Powers,, JavaScript David Flanagan, JavaScript 2

JavaScript 1.! DOM Ajax Shelley Powers,, JavaScript David Flanagan, JavaScript 2 JavaScript (2) 1 JavaScript 1.! 1. 2. 3. DOM 4. 2. 3. Ajax Shelley Powers,, JavaScript David Flanagan, JavaScript 2 (1) var a; a = 8; a = 3 + 4; a = 8 3; a = 8 * 2; a = 8 / 2; a = 8 % 3; 1 a++; ++a; (++

More information

Drive-by Download RIG Exploit Kit

Drive-by Download RIG Exploit Kit 2017 StarC Drive-by Download 1 1 2 2 2.1 Drive-by Download.................................... 2 2.2 RIG Exploit Kit......................................... 2 2.3.............................................

More information

C:\Apache Software Foundation\Apache2.2\htdocs\sample\login.html サンプルプログラム passworddisc.php <head><title> ログイン </title></head> $user=$_post['user']; $

C:\Apache Software Foundation\Apache2.2\htdocs\sample\login.html サンプルプログラム passworddisc.php <head><title> ログイン </title></head> $user=$_post['user']; $ PHP を利用すると 動的に Web ページを生成することが出来る 予め HTML ファイルを準備しておき その内で必要に応じてスクリプトを記載することで Web アプリケーションを容易に開発することが出来る Java に比べて 比較的にサーバーの設定などが 簡単である ホームページから PHP 応用演習ソースプログラム をダウンロードして C:\Apache Software Foundation\Apache2.2\htdocs\sample\

More information

JavaScript Web JavaScript BitArrow BitArrow ( 4 ) Web VBA JavaScript JavaScript JavaScript Web Ajax(Asynchronous JavaScript + XML) Web. JavaScr

JavaScript Web JavaScript BitArrow BitArrow ( 4 ) Web VBA JavaScript JavaScript JavaScript Web Ajax(Asynchronous JavaScript + XML) Web. JavaScr BitArrow JavaScript 1 2 2 3 4 JavaScript BitArrow 4 BitArrow BitArrow,, JavaScript,, Report of JavaScript Lessons on BitArrow, Online Programming Learning Environment Manabe Hiroki 1 Nagashima Kazuhei

More information

1 1 1............................ 1 2 jquery........................ 2 3................ 3 4................... 3 2 4 1..............................

1 1 1............................ 1 2 jquery........................ 2 3................ 3 4................... 3 2 4 1.............................. 1 1 1............................ 1 2 jquery........................ 2 3................ 3 4................... 3 2 4 1.............................. 4 2.............................. 6 3...........................

More information

cssnitelp47_hasegawa_v02.key

cssnitelp47_hasegawa_v02.key 本当に利用は必要か デザイナーにとっての jquery と JavaScript フレームワーク HIROMU HASEGAWA " " show hide

More information

技術メモ-クリックジャッキング対策- X-FRAME-OPTIONSについて

技術メモ-クリックジャッキング対策- X-FRAME-OPTIONSについて JPCERT-ED-2009-0001 JPCERT/CC 技術メモ - クリックジャッキング対策 ~ X-FRAME-OPTIONS について ~ 第二版 :2009-03-04 (Ver. 2.0) 初版 :2009-03-03 (Ver. 1.0) 執筆者 : 常見敦史 小宮山功一朗本文書の掲載 URL:http://www.jpcert.or.jp/ed/2009/ed090001.pdf

More information

Microsoft PowerPoint _3a-SEO.pptx

Microsoft PowerPoint _3a-SEO.pptx 3.Web の使いやすさ 検索エンジン最適化 Web アクセシビリティ 1 検索エンジンのシェア 2018 年 5 月現在の世界シェア (%) モバイル にはタブレット端末も含む デスクトップ モバイル Google 70.0 81.3 Baidu ( 百度 ) 17.2 12.7 Bing ( マイクロソフト ) 7.6 0.8 Yahoo! 3.6 0.8 その他 1.6 4.4 出典: http://netmarketshare.com/

More information

商用監視ソフトウェアユーザの Zabbix 移行へ朗報 Zabbix Event Viewer のご紹介 【本邦初公開】

商用監視ソフトウェアユーザの Zabbix 移行へ朗報 Zabbix Event Viewer のご紹介 【本邦初公開】 Zabbix フロントエンドをより使いやすく Premija Viewer for Zabbix のご紹介 オープンソースカンファレンス 2017.Enterprise 2017/12/08 SRA OSS, Inc. 日本支社 マーケティング部 OSS 技術グループ 1 アジェンダ 1. Premija Viewer for Zabbix ができるまで 2. Premija Viewer for

More information

Lotus Domino XML活用の基礎!

Lotus Domino XML活用の基礎! IBM Software Group Lotus Domino XML 2 Agenda Domino XML Domino XML Lotus Domino Web XML Lotus Domino Web XML XML 3 Domino XML Language (DXL) XML Lotus Domino Lotus Notes/Domino R5 Lotus Notes/Domino 6.x

More information

07_経営論集2010 小松先生.indd

07_経営論集2010 小松先生.indd 19 1 2009 105 123 Web Web Web Web World Wide Web WWW OS 1990 WWW Web HTML CSS JavaScript Web 1 WWW 2 Web Web 3 Web 4 HTML5 5 Web Web 3 1970 WWW HTML Web WWW WWW WWW WWW WWW 105 Web WWW 2 Web 1 1 NTT NTT

More information

SOC Report

SOC Report HTTP Status Code Pollution N T T コ ミ ュ ニ ケ ー シ ョ ン ズ株式会社 ソリューションサービス部 第四エンジニアリング部門 セ キ ュ リ テ ィ オ ペ レ ー シ ョ ン担当 2012 年 06 月 15 日 Ver. 1.0 1. 調査概要... 3 1.1. 調査概要... 3 2. HTTP RESPONSE の STATUS CODE 汚染...

More information