SlideShare a Scribd company logo
脆弱性とセキュリティ
~脆弱性ってなんだろな~
【名前】
安達 智弘(Adachi Tomohiro)
【会社】
株式会社 神戸デジタル・ラボ
セキュリティ事業部
【取り組み】
Webアプリケーションの
脆弱性診断業務に従事。
最近ではクラウドサービスの
セキュリティについて理解を深めている。
自己紹介
【名前】
安達 智弘(Adachi Tomohiro)
【会社】
株式会社 神戸デジタル・ラボ
セキュリティ事業部
【コミュニティ】
・大和セキュリティ
・神戸脆弱性診断の会
自己紹介
本セッションのターゲット
■セキュリティに興味がある方
■これからセキュリティ意識を高めたい方
本セッションの目的
■「脆弱性」に対する理解
■セキュアな開発
本セッションの目的
脆弱性ってヤバい
本日の流れ
1、脆弱性ってなんだろう
2、脆弱性が生まれる原因ってなにか?
3、Webアプリケーションを例にした脆弱性と攻撃
注意事項
・インターネットに繋がっている場合、
絶対に外部に向けて攻撃を実行しないように注意
・本セッションで習得した技術を悪用、または不正に使用しないこと
⁃ 不正アクセス行為の禁止等に関する法律
⁃ http://law.e-gov.go.jp/htmldata/H11/H11HO128.html
本資料の内容を利用して発生したいかなる損害に対しても、弊社および著
作者は一切責任を負いません。
セキュリティってどんなイメージ?
セキュリティについて
サーバー
Webサイト
脆弱性
バグ
バグとは
不具合
(プログラムの誤り)
脆弱性とは・・?
悪用できるバグ
(セキュリティホール)
どうして脆弱性が生まれてしまうの
か?
皆さんアプリ開発をするときに
一番優先していることは何ですか?
Q.
アプリが設計通り
思い描いている形で動くかどう
か
なぜ発生するのか
脆弱なコードを書いても
「エラーは吐かない」ため
気付かない
アプリ開発におけるセキュリティは
後回しになりがち
どう対策しよう?
脆弱性診断
脆弱性診断とは・・
攻撃者の視点から既知の技術を用いて企業のシステムや
ネットワーク、アプリケーションなどを疑似攻撃を試み
ることで、セキュリティ上の問題や脆弱性がないかどう
かのテストを行うこと。
ん・・?
開発中に行うテストで
脆弱性って発見できないの?
テスト工程の目的
【開発工程でのテスト】
• 設計通り動作しているか、機能不備を起こしていない
か等を検証します。
• 主に製品としての品質を保つことを目的とします。
脆弱性診断の目的
【脆弱性診断】
• システムがサイバー攻撃に耐えられるかを検証します。
• 主にセキュリティ上の品質を保つことを目的とします。
脆弱性診断するってなると
なかなか難しい
でもセキュリティを考えず
脆弱性のあるサイトを運用し続ける
と・・
どんな問題があるのか
■ Webサイトの内容を改ざん
■個人情報等、公開していない情報の閲覧
■本人が意図しない処理の実行
■サーバへ侵入する糸口
なぜダメなのか
■個人情報の漏洩
■サービスが停止してしまうリスク
■“安全ではない”というイメージ付着
経済的損失・企業への信頼の低下
なら、どうすればいいのか?
脆弱性を生まないよう
開発を行うことが、一つの対策にな
る
セキュアな開発を行うためには
アプリの脆弱性を知らないといけない
ここからはWEBアプリを例に
脆弱性と攻撃手法について紹介します
HTMLを
簡単におさらいしましょう
HTMLにおける文字の出力
HTMLタグ
HTMLタグ
HTMLにおける文字の出力
タグで囲む
HTMLにおける文字の出力
<p>
(特殊文字)
</p>
(特殊文字)
こんにちは
(ただの文字)
JavaScriptについて
Javascriptの使用方法
タグで囲む
WEBアプリケーションに対して
一体どのような攻撃があるのか
代表的なWEBアプリの脆弱性について
・XSS
(クロス・サイト・スクリプティング)
→コンテンツの改ざん
クロス・サイト・スクリプティングっ
て・・?
攻撃手法その①
XSS(クロス・サイト・スクリプティング)
利用者がサイトへアクセスした際に、
意図しないjavascriptを実行させる
攻撃手法
XSSの原理
POST
XSSの原理
フォームから
入力した文字が出力される
じゃあ、「タグ」を入力するとどうな
る?
XSSの原理
【入力値】
</h2><h1>文字を変えてみる</h1>
※<h>タグは見出しとして出力される
XSSの原理
【結果】
<h>タグが認識されている
XSSの原理
XSSの原理
【入力値】
<script>alert('XSS')</script>
※<script>タグはjavascriptの処理を行う
XSSの原理
【結果】
Javascriptが実行される
XSSの原理
<script>タグが認識され
Javascriptが実行される
XSS攻撃による影響
・フィッシングサイトへの誘導
・コンテンツの改ざん
・Cookieの抜き出し
フィッシングサイトへの利用
XSS攻撃利用例
XSS攻撃利用例
XSS攻撃利用例
Javascriptが埋め込みが可能な場合
Javascriptを使用して
任意のサイトへ
リダイレクトさせることが可能
XSS攻撃利用例
攻撃対象サイト
そっくりのログイン画面を用意する
XSS攻撃利用例
【入力値】
<script>
location.href=‘{URL}’;
</script>
このページへアクセスすると
リダイレクトされる
XSS攻撃利用例
あれ?もう一回ログイン?
→攻撃者にクレデンシャル情報を
送信してしまう
なぜ発生するのか
本来「文字列」として出力されるべき入力値が
HTMLタグとして認識されている
XSSの対策方法について
特殊文字を「ただの文字」として扱う
エスケープ処理
XSSの対策方法について
エスケープ処理は
HTMLエンティティへ変換
を行うことを指す
※XSS対策へ推奨されている文字
XSSの対策方法について
<
(特殊文字)
&lt;
(ただの文字)
置き換え
XSSの対策方法について
【参考 】PHPでの対策例
特殊文字をHTMLエンティティに変換する関数を使用する
(例)PHPの関数
htmlspecialchars($text, ENT_QUOTES, “UTF-8”);
変換対象となる文字列
扱う文字列の文字コード
(指定することを推奨)
変換オプション
この場合はシングルクオートも
変換対象となる(推奨)
XSSの対策方法について
ブラウザでは変換され、
<script>alert(1);</script>
と表示される
XSSの対策方法について
実際に検証してみた
準備したページ
未対策ページとXSS対策ページ
じゃあここに
<script>alert(‘XSS’)</script>
を入力すると、どうなる?
本来あるべき形はこのはず
実行してみるとこうなる
ブラウザ上でソースを比較してみる
未対策だと「タグ」として
認識されている
PHPのソース確認
エスケープ処理
見かけ上は差がない
実行してみるとこうなる
XSS発見のポイント
■特殊文字がどう取り扱われているのか確認する
■html内にタグがそのまま出力されていないか
■ユーザー入力が反映される画面全てが対象
コードに潜む脆弱性
脆弱なコードを書いても
「エラーは吐かない」ため
気付かない
“情報”から脆弱性が
生まれるリスク
攻撃者に与える ”情報” について
攻撃者に与える ”情報” について
攻撃者に与える ”情報” について
攻撃者に与える ”情報” について
攻撃者に与える ”情報” について
攻撃者に与える ”情報” について
攻撃者に与える ”情報” について
■サーバのバージョン情報
■アプリケーションやフレームワークのエラー文
■処理失敗時のエラーメッセージ等
■ソース上にAPIキーをハードコード
表示情報を元に次の攻撃へ繋ぐことが可能
Mix Leap 0214 security
攻撃者に与える ”情報” について
■サーバのバージョン情報
■アプリケーションやフレームワークのエラー文
■処理失敗時のエラーメッセージ等
■ソース上にAPIキーをハードコード
表示情報を元に次の攻撃へ繋ぐことが可能
攻撃者に与える ”情報” について
本日のまとめ
■脆弱性は「悪用できるバグ」のこと
■セキュアな開発が脆弱性への対策になる
■セキュアな開発を行うために
「脆弱性」を知ること
神戸でやっている勉強会があります
「セキュリティ」を
テーマとした勉強会を
不定期で行っています。
お疲れ様でした。
最後までご清聴いただき
ありがとうございました。

More Related Content

PPTX
20200214 the seminar of information security
PDF
脆弱性ハンドリングと耐える設計 -Vulnerability Response-
PPTX
なぜ私たちはシステムを侵害から守れないのか?~広く知って欲しい不都合なこと~
PDF
2019 0917 nw-jaws_f-secure3min
PPTX
とあるセキュリティ会社のIoTセキュリティチームの日常(ErrataはDescription参照)
PDF
「グローバルプラットフォーマー問題」なにそれ?おいしいの?
PDF
脆弱性とセキュリティの話 ホワイトハッカーが少し喋ります
PPTX
20200214 the seminar of information security with sample answer
20200214 the seminar of information security
脆弱性ハンドリングと耐える設計 -Vulnerability Response-
なぜ私たちはシステムを侵害から守れないのか?~広く知って欲しい不都合なこと~
2019 0917 nw-jaws_f-secure3min
とあるセキュリティ会社のIoTセキュリティチームの日常(ErrataはDescription参照)
「グローバルプラットフォーマー問題」なにそれ?おいしいの?
脆弱性とセキュリティの話 ホワイトハッカーが少し喋ります
20200214 the seminar of information security with sample answer

What's hot (19)

PDF
マルウェア流入対策のもうひと工夫~プロが厳選!低予算でもできる効果あるセキュリティ施策~
PDF
天職の就き方 〜 ぼくらが旅に出る理由 Part 2 #ssmjp 1501
PDF
第32回Websig会議「クラウドは○○を共有するサービス」
PDF
個人情報の観点から見るサイトセキュリティの重要性
PDF
2014年10月江戸前セキュリティ勉強会資料 -セキュリティ技術者になるには-
PDF
Mini hardening 参加記
PDF
IoTセキュリティガイドラインの検討
PDF
~2018年Webセキュリティ最前線セミナー~ 今や従来通りの対策ではWebセキュリティが万全ではないこれだけの理由
PDF
「IoTのセキュリティを考える~OWASP IoT Top10~」
PDF
IoTセキュリティ・インシデント事例・警鐘の検討
PDF
ランサムウェアのおはなし
PDF
見えないから恐ろしい!標的型サイバー攻撃の脅威
PDF
MITRE ATT&CKマッピングのペストプラクティスでたよ
PDF
(ISC)2 secure japan 2021 自動車のサイバーセキュリティアプローチ
PDF
DDoS対処の戦術と戦略
PDF
改めて考える適材適所のDDoS対策~まだDDoSで消耗しているの?~
PDF
2019 1107 fin-jaws_5min
PPTX
脆弱性診断研究会 第34回セミナー資料
マルウェア流入対策のもうひと工夫~プロが厳選!低予算でもできる効果あるセキュリティ施策~
天職の就き方 〜 ぼくらが旅に出る理由 Part 2 #ssmjp 1501
第32回Websig会議「クラウドは○○を共有するサービス」
個人情報の観点から見るサイトセキュリティの重要性
2014年10月江戸前セキュリティ勉強会資料 -セキュリティ技術者になるには-
Mini hardening 参加記
IoTセキュリティガイドラインの検討
~2018年Webセキュリティ最前線セミナー~ 今や従来通りの対策ではWebセキュリティが万全ではないこれだけの理由
「IoTのセキュリティを考える~OWASP IoT Top10~」
IoTセキュリティ・インシデント事例・警鐘の検討
ランサムウェアのおはなし
見えないから恐ろしい!標的型サイバー攻撃の脅威
MITRE ATT&CKマッピングのペストプラクティスでたよ
(ISC)2 secure japan 2021 自動車のサイバーセキュリティアプローチ
DDoS対処の戦術と戦略
改めて考える適材適所のDDoS対策~まだDDoSで消耗しているの?~
2019 1107 fin-jaws_5min
脆弱性診断研究会 第34回セミナー資料
Ad

Similar to Mix Leap 0214 security (20)

PPTX
20180224 azure securitycenter
PDF
なぜ今、セキュリティ人材の育成がこんなにも叫ばれているのだろうか?
PPTX
「教養としてのサイバーセキュリティ」講座
PDF
ソースで学ぶ脆弱性診断 - SmartTechGeeks #2
PDF
~外注から内製へ~ なぜ今、セキュリティ人材の育成がこんなにも叫ばれているのだろうか?
PDF
シンプルに考えよう Zero Trust Network
PPTX
テレワーク時代のセキュリティ対策とは?情報漏洩やデータ損失を防ぐ「Druva inSync」
PDF
セキュリティ管理 入門セミナ
PPTX
0325できる?どうやる!word pressのセキュリティ運用
PPTX
Security measures
PPTX
ざっくり学ぼうあぶないWebアプリの脆弱性
PDF
[Japan Tech summit 2017] CLD 023
PDF
Webアプリケーション脆弱性診断について
PDF
Certified network defender
PDF
CND(認定ネットワークディフェンダー / Certified Network Defender)公式トレーニングのご紹介
PDF
【セミナー講演資料】CND(認定ネットワークディフェンダー)公式トレーニング紹介
PPT
セキュリティ業務の内製とチームメンバー育成
PDF
[AWS Summit 2012] スポンサーセッション#5 Securing your journey to the cloud - 企業システムのAW...
PDF
”もと”中の人が語り尽くすSoftLayerセキュリティー(2016/10/13更新版)
PDF
デブサミ2013【15-C-8】セキュリティ要求仕様モデルプランで日本は変わるか?(百瀬昌幸氏)
20180224 azure securitycenter
なぜ今、セキュリティ人材の育成がこんなにも叫ばれているのだろうか?
「教養としてのサイバーセキュリティ」講座
ソースで学ぶ脆弱性診断 - SmartTechGeeks #2
~外注から内製へ~ なぜ今、セキュリティ人材の育成がこんなにも叫ばれているのだろうか?
シンプルに考えよう Zero Trust Network
テレワーク時代のセキュリティ対策とは?情報漏洩やデータ損失を防ぐ「Druva inSync」
セキュリティ管理 入門セミナ
0325できる?どうやる!word pressのセキュリティ運用
Security measures
ざっくり学ぼうあぶないWebアプリの脆弱性
[Japan Tech summit 2017] CLD 023
Webアプリケーション脆弱性診断について
Certified network defender
CND(認定ネットワークディフェンダー / Certified Network Defender)公式トレーニングのご紹介
【セミナー講演資料】CND(認定ネットワークディフェンダー)公式トレーニング紹介
セキュリティ業務の内製とチームメンバー育成
[AWS Summit 2012] スポンサーセッション#5 Securing your journey to the cloud - 企業システムのAW...
”もと”中の人が語り尽くすSoftLayerセキュリティー(2016/10/13更新版)
デブサミ2013【15-C-8】セキュリティ要求仕様モデルプランで日本は変わるか?(百瀬昌幸氏)
Ad

Mix Leap 0214 security