SlideShare a Scribd company logo
クロスサイトスクリプティング再入門
HASHコンサルティング株式会社
徳丸 浩
twitter id: @ockeghem
XSS脆弱なスクリプトの例
Copyright © 2013 HASH Consulting Corp. 2
<body><?php
echo $_GET['p'];
?></body>
値を「そのまま」表示
p=<script>alert(document.cookie)</script> で参照
なにか、問題でも?
Copyright © 2013 HASH Consulting Corp. 3
典型的なXSSサンプルに対する「素朴な疑問」
• クッキーの値がアラートで表示されても、特に危険性はないよ
うな気がする
• クッキーの値はブラウザのアドオンなどでも表示できるよね
• 任意のJavaScriptが実行されると言っても、ホームページ作
れば任意のJavaScriptが書けるし、見た人のブラウザで実行
されるよね…
Copyright © 2013 HASH Consulting Corp. 4
そもそもの疑問:JavaScriptは危険か?
• 実は、JavaScriptの実行自体は危険ではない
• Webは、未知の(ひょっとすると悪意のある?)サイトを訪問し
ても「悪いこと」が起きないように設計されている
• JavaScriptの「サンドボックス」による保護
– JavaScriptからローカルファイルにアクセスできない
– JavaScriptからクリップボードの値にアクセスできない
– ブラウザにはファイルアップロードの機能があるが、JavaScriptで
任意ファイルをアップロードはできない
– JavaScriptからプリンタに印刷することはできない(印刷ダイアログ
を表示することはできる)
Copyright © 2013 HASH Consulting Corp. 5
では、他のWebサイト上の「個人情報」
にはアクセスできないの?
Copyright © 2013 HASH Consulting Corp. 6
できない
Copyright © 2013 HASH Consulting Corp. 7
ここで、
「タブブラウザは安全なのか」問題
Copyright © 2013 HASH Consulting Corp. 8
タブブラウザに秘密情報のある光景
Copyright © 2013 HASH Consulting Corp. 9
うっかり、罠の仕掛
けてあるページを開
いたら、Gmailの内
容を読み取られな
いのか?
ワナのサイト
試してみよう!
Copyright © 2013 HASH Consulting Corp. 10
Gmailを別タブに開いてHTMLを読み出す罠
Copyright © 2013 HASH Consulting Corp. 11
<html>
<head>
<script>
var newWin = window.open(
'https://mail.google.com/mail/u/0/#inbox', 'subwin');
setTimeout(function() {
alert(newWin.document.documentElement.innerHTML);
}, 3000);
</script>
</head>
<body>
こんにちは
</body>
</html>
新しいWindowを開
いて、そこにGmail
を表示させる
Gmailのロードを待っ
て(3秒想定)、Gmail
のHTMLを表示
別Windowのdocumentにアクセスできない…
Copyright © 2013 HASH Consulting Corp. 12
Error: Permission denied to
access property 'document'
同じドメインだとdocumentにアクセスできる
Copyright © 2013 HASH Consulting Corp. 13
同じドメイン?
Copyright © 2013 HASH Consulting Corp. 14
正確にはドメインではなく ”オリジン”
Copyright © 2013 HASH Consulting Corp. 15
同一生成元ポリシー(Same-Origin Policy; SOP)とは
• オリジン = スキーム、ホスト、ポート番号の組み合わせ
• これらがすべて同じ場合、同一生成元(Same Origin)であると
いう
– http と https は異なるスキーム すなわち別オリジンとなる
• JavaScriptによるプロパティへのアクセス等は同一生成元に
対してのみ許可される
• XMLHttpRequestによるオブジェクトアクセスは、同一生成元
の場合無条件に許可される
– 異なる生成元に対するアクセスは、CORS(Cross-Origin
Resource Sharing)により可能
Copyright © 2013 HASH Consulting Corp. 16
SOPによる保護
Copyright © 2013 HASH Consulting Corp. 17
evil.example.com shop.example.jp
邪悪なサイト 正規サイト
個人情報
個人情報
ワナ 個人情報
ワナ 個人情報
XMLHttpRequest
JavaScript
JavaScript
Cookie
XSSによるJavaScripの注入
Copyright © 2013 HASH Consulting Corp. 18
evil.example.com shop.example.jp
邪悪なサイト 正規サイト(XSS脆弱)
ワナ 脆弱なページ
ワナ
JavaScript
JavaScript
脆弱なページ
JavaScript
JavaScript
①
④
③
②
XSSにより注入されたJSはSOPの保護を回避する
Copyright © 2013 HASH Consulting Corp. 19
evil.example.com shop.example.jp
邪悪なサイト 正規サイト
個人情報
ワナ
ワナ 個人情報
XMLHttpRequest
JavaScript
JavaScript
個人情報 Cookie
同一オリジン
なので、個人
情報等にア
クセス可
iframeを用いたワナのイメージ
Copyright © 2013 HASH Consulting Corp. 20
マル秘激安お得情報!!!
JavaScript
個人情報あり個人情報なし
正規サイトワナサイトと同一オリジン
http://very.evil-site.biz/
XSSによる個人情報アクセス
Copyright © 2013 HASH Consulting Corp. 21
マル秘激安お得情報!!!
http://very.evil-site.biz/
JavaScript
個人情報
正規サイト
JavaScript
注入
なぜJavaScriptを注入されるか?
Copyright © 2013 HASH Consulting Corp. 22
要素内容の場合
Copyright © 2013 HASH Consulting Corp. 23
<div>○○○○○○</div>
要素内容の終端マークは <
< を用いて要素内容を終わらせスクリプトを注入!
<div>○○○○○○<script>alert(1)</script></div>
対策は < を &lt; にエスケープする
& → &amp; エスケープも必須
通常は、 < > & をエスケープしますね
属性値の場合
Copyright © 2013 HASH Consulting Corp. 24
<input value="○○○○○○">
属性値の終端マークは "
" を用いてスクリプトを注入!
<input value="○○○○○○"><script>alert(1)</script>">
対策は " を &quot; にエスケープする
& → &amp; エスケープも必須
通常は、 < > & " をエスケープしますね
JavaScriptの場合
Copyright © 2013 HASH Consulting Corp. 25
init("○○○○○○");
文字列リテラルの終端マークは "
" を用いてスクリプトを注入!
init("○○○○○○");alert(document.cookie);//");
対策は " を ¥" にエスケープする(&quot;ではない)
¥ → ¥¥ エスケープも必須
属性値に書く場合は上記をさらにHTMLエスケープする
これで、おk?
Copyright © 2013 HASH Consulting Corp. 26
No! XSSは色々ややこしい
Copyright © 2013 HASH Consulting Corp. 27
参考文献(1)
Copyright © 2013 HASH Consulting Corp. 28
XSSの基礎を説明して
いますが、DOM base
XSSやAjaxに関する説
明はあまりありません
参考文献(2)
29
http://www.ipa.go.jp/about/technicalwatch/20130129.html
DOM base XSSに関
する体系的な説明とし
て貴重な参考資料です
参考文献(3)
Copyright © 2013 HASH Consulting Corp. 30
ブラウザセキュリティの
「面倒くささ」について、
逃げずに丹念に説明し
ています。上級者およ
び上級者を目指す方向
け
まとめ
• ブラウザには、サンドボックス、同一生成元ポリシー(SOP)などの
保護機能がある
• SOPの保護機能により、正規サイトと「怪しいサイト」はアクセスが
遮断されている
• XSSは、SOPの保護機能の元で、正規サイトの情報に、「怪しいサ
イト」からアクセスできる(これはアプリケーションの脆弱性)
• XSSがあると、ワナサイトを閲覧した利用者の個人情報が漏洩
– あるいは「なりすまし犯行予告」の書き込みをさせることも…
• XSS対策の基本は、「終端」となる記号の文脈に応じたエスケープ
• でも、色々ややこしいので参考文献で勉強を
• みなさん、よく言っておきますが、ウェブアプリの脆弱性の中で、
XSSが一番難しいですよ!
Copyright © 2013 HASH Consulting Corp. 31
Ad

More Related Content

What's hot (20)

フリーでできるWebセキュリティ(burp編)
フリーでできるWebセキュリティ(burp編)フリーでできるWebセキュリティ(burp編)
フリーでできるWebセキュリティ(burp編)
abend_cve_9999_0001
 
ウェブアプリケーションセキュリティ超入門
ウェブアプリケーションセキュリティ超入門ウェブアプリケーションセキュリティ超入門
ウェブアプリケーションセキュリティ超入門
Hiroshi Tokumaru
 
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
 
SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)
Tomoaki Uchida
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
 
TLS, HTTP/2演習
TLS, HTTP/2演習TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
 
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE
 
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
Hiroshi Tokumaru
 
実践 NestJS
実践 NestJS実践 NestJS
実践 NestJS
Ayumi Goto
 
組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
infinite_loop
 
若手エンジニアのためのセキュリティ講座
若手エンジニアのためのセキュリティ講座若手エンジニアのためのセキュリティ講座
若手エンジニアのためのセキュリティ講座
Hiroshi Tokumaru
 
130821 owasp zed attack proxyをぶん回せ
130821 owasp zed attack  proxyをぶん回せ 130821 owasp zed attack  proxyをぶん回せ
130821 owasp zed attack proxyをぶん回せ
Minoru Sakai
 
とある診断員とAWS
とある診断員とAWSとある診断員とAWS
とある診断員とAWS
zaki4649
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
 
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
 
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
toshi_pp
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
 
フリーでできるWebセキュリティ(burp編)
フリーでできるWebセキュリティ(burp編)フリーでできるWebセキュリティ(burp編)
フリーでできるWebセキュリティ(burp編)
abend_cve_9999_0001
 
ウェブアプリケーションセキュリティ超入門
ウェブアプリケーションセキュリティ超入門ウェブアプリケーションセキュリティ超入門
ウェブアプリケーションセキュリティ超入門
Hiroshi Tokumaru
 
SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)SQLアンチパターン(インデックスショットガン)
SQLアンチパターン(インデックスショットガン)
Tomoaki Uchida
 
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるなテスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
 
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato KinugawaCODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE 2014 : バグハンターの愉しみ by キヌガワマサト Masato Kinugawa
CODE BLUE
 
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
ウェブ・セキュリティ基礎試験(徳丸基礎試験)の模擬試験問題
Hiroshi Tokumaru
 
組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術組織にテストを書く文化を根付かせる戦略と戦術
組織にテストを書く文化を根付かせる戦略と戦術
Takuto Wada
 
ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装ソーシャルゲーム案件におけるDB分割のPHP実装
ソーシャルゲーム案件におけるDB分割のPHP実装
infinite_loop
 
若手エンジニアのためのセキュリティ講座
若手エンジニアのためのセキュリティ講座若手エンジニアのためのセキュリティ講座
若手エンジニアのためのセキュリティ講座
Hiroshi Tokumaru
 
130821 owasp zed attack proxyをぶん回せ
130821 owasp zed attack  proxyをぶん回せ 130821 owasp zed attack  proxyをぶん回せ
130821 owasp zed attack proxyをぶん回せ
Minoru Sakai
 
とある診断員とAWS
とある診断員とAWSとある診断員とAWS
とある診断員とAWS
zaki4649
 
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
 
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
今こそ知りたいSpring Batch(Spring Fest 2020講演資料)
NTT DATA Technology & Innovation
 
Redisの特徴と活用方法について
Redisの特徴と活用方法についてRedisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
 
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くしたNginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
NginxとLuaを用いた動的なリバースプロキシでデプロイを 100 倍速くした
toshi_pp
 
インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方インフラエンジニアの綺麗で優しい手順書の書き方
インフラエンジニアの綺麗で優しい手順書の書き方
Shohei Koyama
 

Viewers also liked (6)

CSPの話〜FxOSチューン☆〜
CSPの話〜FxOSチューン☆〜CSPの話〜FxOSチューン☆〜
CSPの話〜FxOSチューン☆〜
Yu Yagihashi
 
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
Kousuke Ebihara
 
CSP Lv.2の話
CSP Lv.2の話CSP Lv.2の話
CSP Lv.2の話
Yu Yagihashi
 
Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤
Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤
Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤
Recruit Lifestyle Co., Ltd.
 
Setとして活動しはじめた話
Setとして活動しはじめた話Setとして活動しはじめた話
Setとして活動しはじめた話
Recruit Lifestyle Co., Ltd.
 
Rlsにおけるプロダクト プロジェクトマネジメント
Rlsにおけるプロダクト プロジェクトマネジメントRlsにおけるプロダクト プロジェクトマネジメント
Rlsにおけるプロダクト プロジェクトマネジメント
Recruit Lifestyle Co., Ltd.
 
CSPの話〜FxOSチューン☆〜
CSPの話〜FxOSチューン☆〜CSPの話〜FxOSチューン☆〜
CSPの話〜FxOSチューン☆〜
Yu Yagihashi
 
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
XML と PHP のイケナイ関係 (セキュリティ的な意味で) -Introduction of XXE attack and XML Bomb with...
Kousuke Ebihara
 
Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤
Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤
Step functionsとaws batchでオーケストレートするイベントドリブンな機械学習基盤
Recruit Lifestyle Co., Ltd.
 
Rlsにおけるプロダクト プロジェクトマネジメント
Rlsにおけるプロダクト プロジェクトマネジメントRlsにおけるプロダクト プロジェクトマネジメント
Rlsにおけるプロダクト プロジェクトマネジメント
Recruit Lifestyle Co., Ltd.
 
Ad

Similar to XSS再入門 (16)

体系的に学ばないXSSの話
体系的に学ばないXSSの話体系的に学ばないXSSの話
体系的に学ばないXSSの話
Yutaka Maehira
 
20190208 脆弱性と共生するには
20190208 脆弱性と共生するには20190208 脆弱性と共生するには
20190208 脆弱性と共生するには
OWASP Nagoya
 
安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014
Hiroshi Tokumaru
 
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
OWASP Nagoya
 
WordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったこと
WordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったことWordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったこと
WordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったこと
勇一 大山
 
20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」
20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」
20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」
Hiromu Shioya
 
(A7)cross site scripting
(A7)cross site scripting(A7)cross site scripting
(A7)cross site scripting
OWASP Nagoya
 
20121112 jaws-ug sapporo8
20121112 jaws-ug sapporo820121112 jaws-ug sapporo8
20121112 jaws-ug sapporo8
Hirokazu Ouchi
 
Webアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいかWebアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいか
Hiroshi Tokumaru
 
Webセキュリティ入門(xss)
Webセキュリティ入門(xss)Webセキュリティ入門(xss)
Webセキュリティ入門(xss)
KageShiron
 
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
Amazon Web Services Japan
 
X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~
X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~
X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~
Masato Kinugawa
 
20150221 めとべや東京-プライベートコード共有サービス
20150221 めとべや東京-プライベートコード共有サービス20150221 めとべや東京-プライベートコード共有サービス
20150221 めとべや東京-プライベートコード共有サービス
Takayoshi Tanaka
 
Web技術ではじめようAR/VRアプリ開発
Web技術ではじめようAR/VRアプリ開発Web技術ではじめようAR/VRアプリ開発
Web技術ではじめようAR/VRアプリ開発
Takashi Yoshinaga
 
ガラケーで楽しむオレJSの勧め
ガラケーで楽しむオレJSの勧めガラケーで楽しむオレJSの勧め
ガラケーで楽しむオレJSの勧め
Hiroshi Tokumaru
 
体系的に学ばないXSSの話
体系的に学ばないXSSの話体系的に学ばないXSSの話
体系的に学ばないXSSの話
Yutaka Maehira
 
20190208 脆弱性と共生するには
20190208 脆弱性と共生するには20190208 脆弱性と共生するには
20190208 脆弱性と共生するには
OWASP Nagoya
 
安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014安全なPHPアプリケーションの作り方2014
安全なPHPアプリケーションの作り方2014
Hiroshi Tokumaru
 
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
20181117-一般的な脆弱性の概要・対策を知り、ZAPで見つけてみよう!
OWASP Nagoya
 
WordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったこと
WordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったことWordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったこと
WordPressサイトを(場当たり的に)モバイル対応した際に調べたこと・やったこと
勇一 大山
 
20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」
20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」
20090218 第5回「PhpによるWebアプリケーションのセキュリティ入門」
Hiromu Shioya
 
(A7)cross site scripting
(A7)cross site scripting(A7)cross site scripting
(A7)cross site scripting
OWASP Nagoya
 
20121112 jaws-ug sapporo8
20121112 jaws-ug sapporo820121112 jaws-ug sapporo8
20121112 jaws-ug sapporo8
Hirokazu Ouchi
 
Webアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいかWebアプリでパスワード保護はどこまでやればいいか
Webアプリでパスワード保護はどこまでやればいいか
Hiroshi Tokumaru
 
Webセキュリティ入門(xss)
Webセキュリティ入門(xss)Webセキュリティ入門(xss)
Webセキュリティ入門(xss)
KageShiron
 
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
Amazon Web Services Japan
 
X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~
X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~
X-XSS-Nightmare: 1; mode=attack ~XSSフィルターを利用したXSS攻撃~
Masato Kinugawa
 
20150221 めとべや東京-プライベートコード共有サービス
20150221 めとべや東京-プライベートコード共有サービス20150221 めとべや東京-プライベートコード共有サービス
20150221 めとべや東京-プライベートコード共有サービス
Takayoshi Tanaka
 
Web技術ではじめようAR/VRアプリ開発
Web技術ではじめようAR/VRアプリ開発Web技術ではじめようAR/VRアプリ開発
Web技術ではじめようAR/VRアプリ開発
Takashi Yoshinaga
 
ガラケーで楽しむオレJSの勧め
ガラケーで楽しむオレJSの勧めガラケーで楽しむオレJSの勧め
ガラケーで楽しむオレJSの勧め
Hiroshi Tokumaru
 
Ad

More from Hiroshi Tokumaru (20)

SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
 
ウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説するウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説する
Hiroshi Tokumaru
 
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
Hiroshi Tokumaru
 
SQLインジェクション再考
SQLインジェクション再考SQLインジェクション再考
SQLインジェクション再考
Hiroshi Tokumaru
 
徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入する徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入する
Hiroshi Tokumaru
 
introduction to unsafe deserialization part1
introduction to unsafe deserialization part1introduction to unsafe deserialization part1
introduction to unsafe deserialization part1
Hiroshi Tokumaru
 
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
Hiroshi Tokumaru
 
XXE、SSRF、安全でないデシリアライゼーション入門
XXE、SSRF、安全でないデシリアライゼーション入門XXE、SSRF、安全でないデシリアライゼーション入門
XXE、SSRF、安全でないデシリアライゼーション入門
Hiroshi Tokumaru
 
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
Hiroshi Tokumaru
 
Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門
Hiroshi Tokumaru
 
秀スクリプトの話
秀スクリプトの話秀スクリプトの話
秀スクリプトの話
Hiroshi Tokumaru
 
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみようデバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
Hiroshi Tokumaru
 
ウェブセキュリティの常識
ウェブセキュリティの常識ウェブセキュリティの常識
ウェブセキュリティの常識
Hiroshi Tokumaru
 
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
Hiroshi Tokumaru
 
ウェブセキュリティの最近の話題早分かり
ウェブセキュリティの最近の話題早分かりウェブセキュリティの最近の話題早分かり
ウェブセキュリティの最近の話題早分かり
Hiroshi Tokumaru
 
セキュリティの都市伝説を暴く
セキュリティの都市伝説を暴くセキュリティの都市伝説を暴く
セキュリティの都市伝説を暴く
Hiroshi Tokumaru
 
安全なPHPアプリケーションの作り方2016
安全なPHPアプリケーションの作り方2016安全なPHPアプリケーションの作り方2016
安全なPHPアプリケーションの作り方2016
Hiroshi Tokumaru
 
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼうCMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
Hiroshi Tokumaru
 
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
Hiroshi Tokumaru
 
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
Hiroshi Tokumaru
 
SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021SPAセキュリティ入門~PHP Conference Japan 2021
SPAセキュリティ入門~PHP Conference Japan 2021
Hiroshi Tokumaru
 
ウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説するウェブセキュリティのありがちな誤解を解説する
ウェブセキュリティのありがちな誤解を解説する
Hiroshi Tokumaru
 
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
脅威分析の手法によりウェブサーバーにウイルス対策ソフトが必要かを検証する
Hiroshi Tokumaru
 
SQLインジェクション再考
SQLインジェクション再考SQLインジェクション再考
SQLインジェクション再考
Hiroshi Tokumaru
 
徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入する徳丸本VMに脆弱なWordPressを導入する
徳丸本VMに脆弱なWordPressを導入する
Hiroshi Tokumaru
 
introduction to unsafe deserialization part1
introduction to unsafe deserialization part1introduction to unsafe deserialization part1
introduction to unsafe deserialization part1
Hiroshi Tokumaru
 
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
SSRF対策としてAmazonから発表されたIMDSv2の効果と破り方
Hiroshi Tokumaru
 
XXE、SSRF、安全でないデシリアライゼーション入門
XXE、SSRF、安全でないデシリアライゼーション入門XXE、SSRF、安全でないデシリアライゼーション入門
XXE、SSRF、安全でないデシリアライゼーション入門
Hiroshi Tokumaru
 
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
オニギリペイのセキュリティ事故に学ぶ安全なサービスの構築法 (PHPカンファレンス2019)
Hiroshi Tokumaru
 
Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門Railsエンジニアのためのウェブセキュリティ入門
Railsエンジニアのためのウェブセキュリティ入門
Hiroshi Tokumaru
 
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみようデバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
デバッガでWordPress本体やプラグインの脆弱性を追いかけてみよう
Hiroshi Tokumaru
 
ウェブセキュリティの常識
ウェブセキュリティの常識ウェブセキュリティの常識
ウェブセキュリティの常識
Hiroshi Tokumaru
 
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
著名PHPアプリの脆弱性に学ぶセキュアコーディングの原則
Hiroshi Tokumaru
 
ウェブセキュリティの最近の話題早分かり
ウェブセキュリティの最近の話題早分かりウェブセキュリティの最近の話題早分かり
ウェブセキュリティの最近の話題早分かり
Hiroshi Tokumaru
 
セキュリティの都市伝説を暴く
セキュリティの都市伝説を暴くセキュリティの都市伝説を暴く
セキュリティの都市伝説を暴く
Hiroshi Tokumaru
 
安全なPHPアプリケーションの作り方2016
安全なPHPアプリケーションの作り方2016安全なPHPアプリケーションの作り方2016
安全なPHPアプリケーションの作り方2016
Hiroshi Tokumaru
 
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼうCMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
CMS四天王への攻撃デモを通じて、WordPressの効果的な防御法を学ぼう
Hiroshi Tokumaru
 
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
脆弱性は誰のせい? PHP、MySQL、Joomla! の責任やいかに
Hiroshi Tokumaru
 
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
『例えば、PHPを避ける』以降PHPはどれだけ安全になったか
Hiroshi Tokumaru
 

XSS再入門