サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―

Slides:



Advertisements
Similar presentations
情報セキュリティ読本 情報セキュリティ読本 – プレゼンテーション資料 - 1 情報セキュリティ読本 - IT 時代の危機管理入門 - プレゼンテーション資料 (第 1 章 IT (情報技術)に潜む危険)
Advertisements

サイバーセキュリティ演習 ― Web セキュリティ基礎 & 実践 ― 3. 不正スクリプトの実行対策.
Garoon on cybozu.com 2015年6月版 新機能 Copyright © 2015 Cybozu.
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
1 PHP プログラムの実行(まと め) 担当 岡村耕二 月曜日 2限 平成 22 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明 准教授等による以前の講義資料をもとにしています。
TCP / IP の基礎 ネットワーク管理者入門. インターネットを支える技術 ISO の 7 階層プロトコルと TCP / IP の実装 階層機能関連する TCP / IP プロ トコル アプリケーション層電子メールやファイルの転送 といった、具体的なアプリ ケーションが使用する規約 TELNET.
情報セキュリティ 第11回:2005年6月24日(金)   . 2 本日学ぶこと サーバサイドセキュリティ  Webサーバのセキュリティ 暗号化通信(SSL/TLS),ユーザ認証,アクセス 制御  不正な入力への対応 SQL インジェクション クロスサイトスクリプティング バッファオーバーラン.
サイバーセキュリティ演習 ― Web セキュリティ基礎 & 実践 ― 9. 偽リクエストによるサービスの不正利用対策.
OWL-Sを用いたWebアプリケーションの検査と生成
サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―
DB(データベース)のおはなし 作成者:小野正広 DBと言っても、  ドラゴンボール ではないですぞ! 3/1/2017.
サイボウズ ガルーン バージョン 4.2 機能紹介ガイド 管理権限とアクセス権 第2版
サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―
下藤 弘丞 SecureWeblogの構築.
らくらく学校連絡網 スライドショーで見る操作ガイド -7- 出欠確認付きメール escで中断、リターンキーで進みます
休講掲示板の電子化 鵜川研究室 菊地洲人 (あらかじめチラシを配る) 情報数理4年の菊地です。 これから私の研究内容の発表を始めます。
Knowledge Suite(ナレッジスイート) ファーストステップガイド (管理者向け)
Lync 会議 Lync 会議に参加する Lync 2013 クイック リファレンス Lync 会議のスケジュール
サイボウズ ガルーン バージョン4.0 機能紹介ガイド 管理権限とアクセス権 第1版
Zeusの動作解析 S08a1053 橋本 寛史.
Digital Network And Communication
CG作品展示サイト”Fragments” ~ 『閲覧しやすさ』と『デザイン性』を両立させた Webデザイン~
ネット時代のセキュリティ2(脅威の例) 2SK 情報機器工学.
情報セキュリティ読本 三訂版 - IT時代の危機管理入門 -
サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―
Phenixサーバ クラックまとめ.
「コンピュータと情報システム」 07章 インターネットとセキュリティ
稚内北星学園大学 情報メディア学部 助教授 安藤 友晴
情報セキュリティ読本 - IT時代の危機管理入門 -
Vulnerability of Cross-Site Scripting
タグライブラリとJSP J2EE I 第10回 /
個体識別番号を登録しないとSNSを使えなくする
セッション管理 J2EE I 第9回 /
【トップページ-TOPICSの登録・編集】
サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―
平成22年度に実施を予定するインターネットを 用いた研修システムによる研修 ライブ配信受講手順書
タグライブラリとJSP J2EE II 第2回 2004年10月7日 (木).
HTTPプロトコル J2EE I 第7回 /
EBSCOhost 詳細検索 チュートリアル support.ebsco.com.
サーバ構成と運用 ここから私林がサーバ構成と運用について話します.
サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―
情報セキュリティ読本 四訂版 - IT時代の危機管理入門 -
岡村耕二 サイバーセキュリティ Web セキュリティ 岡村耕二 情報ネットワーク.
マイクロソフト Access での SQL 演習 第1回 SQL問い合わせ(クエリ)
第8章 Web技術とセキュリティ   岡本 好未.
管理画面操作マニュアル <サイト管理(1)> 基本設定 第9版 改訂 株式会社アクア 1.
第2回 SQL インジェクション その攻撃と対処 NECラーニング 山崎 明子.
Linux リテラシ 2006 第4回 ネットワーク CIS RAT.
セキュリティ(6) 05A2013 大川内 斉.
インターネットにおける真に プライベートなネットワークの構築
セキュリティ(2) 05A2013 大川内 斉.
スマートデバイスのビジネス活用を支援する法人向けファイル共有サービス
Webセキュリティ 情報工学専攻 1年 赤木里騎 P226~241.
発注者側サイト操作説明書 作成日:2004年6月 Ver1.0 初版 改 訂:2005年9月 Ver1.2 株式会社 コニファ.
PC用マイページマニュアル 本マニュアルでは、PC用マイページの 基本的なご利用方法をご案内いたします。
調達見積回答 [インストラクタ・ノートがここに表示されます(ある場合)].
7-0.SWORD Client for WEKO インストールマニュアル Version 2.2
すべて読む Microsoft SharePoint ニュース
情報システム1及び演習 第一回 データベースの概要.
管理画面操作マニュアル <メールマガジン配信> 第5版 改訂 株式会社アクア 1.
サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―
ログイン(システム利用規約合意) [インストラクタ・ノートがここに表示されます(ある場合)].
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
予約システムのご案内 予約システムのご案内 予約システムのご案内 予約システムのご案内
BCP対応システムについて 横浜ゴム㈱ グローバル調達本部.
データベース第3回目 意味ごとにテーブルを分ける
PC用マイページマニュアル 本マニュアルでは、PC用マイページの 基本的なご利用方法をご案内いたします。
サーバーレス キャンペーンインフラご提案 特徴 料金 初期費用 0円 月額 120,000円 初期費用 0円 月額 380,000円
地理情報コンテンツ・データベースコンテンツ新規作成
モバイル用マイページマニュアル 本マニュアルでは モバイル用マイページ(スマートフォン用) の基本的なご利用方法をご案内いたします。
Presentation transcript:

サイバーセキュリティ演習 ― Webセキュリティ基礎&実践― 11. 総合演習(1)

講義内容 1. 2*. Webサイトの仕組みとWebプログラミング基礎 3.4.5*. 不正スクリプトの実行対策 6.7*. データベースの不正操作対策 8*. システムの不正操作対策とHTTPレスポンスの改竄対策 9*. 偽リクエストによるサービスの不正利用対策 10*. セッションIDの 不正取得対策 11. 総合演習(1) 12*. 公開ディレクトリの不正横断対策と認証認可制御の欠落 による不正アクセス対策とエラーメッセージからの情報 漏えい対策 13. 総合演習(2) 14. 総合演習(3) 15. 学期末試験 ※*はレポートがある回になります。

本日の内容 以下の脆弱性における検査の総合演習 クロスサイトスクリプティング(XSS) SQLインジェクション クロスサイトリクエストフォージェリ (CSRF) OSコマンドインジェクション セッションの管理不備

クロスサイトスクリプティング(XSS) 攻撃者が悪意のあるスクリプトを脆弱性のあるWebサイトに 直接(格納型)または第三者のWebサイト(反射型)に埋め 込み、利用者がそのスクリプトを実行してしまう脆弱性

XSSの攻撃手口 HTMLの文法上特別な意味を持つ特殊文字がそのまま使 えることを利用して、スクリプトタグを入力フォームや URLに組み込む。 脆弱性箇所を特定する。 入力フォームに<script>の文字を入れてみる。 脆弱性箇所となるURL上のパラメータ名を確認する。 不正スクリプトおよび罠のURLを考える http://localhost/Web/Scenario102/VulSoft/enquete.ph p?page=2&sex=0&old=1&company=&xss=1&trouble=1 &content=&name= <script>alert(‘Hello’)</script> 不正スクリプトや罠のURLを投稿する 脆弱性のあるWebサイトの入力フォームなど(格納型) 第三者のWebサイトである掲示板のURL欄など(反射型)

SQLインジェクション 悪意のあるSQLを注入(インジェクション) により、Webアプリケーションが意図しない SQL文を実行してしまうことで、データベー スを不正に操作されてしまう脆弱性

SQLインジェクションの攻撃手口 WHERE句の条件が必ずTRUE(真)になるようにSQL 文を変更する。 脆弱性箇所を特定する。 URL上のパラメータにシングルクォート(’)を入れてみる。 脆弱性箇所となるURL上のパラメータ名を確認する。 不正なリテラルを含むURLを考える。 http://localhost/Web/Scenario108/VulSoft/bank.php?pa ge=2&id=yamada&password=‘ or ‘a’=‘a’ -- 不正なリテラルを含むURLを入力し実行する 脆弱性WebサイトのURL欄など

クロスサイトリクエストフォージェリ(CSRF) 攻撃者が第三者のWebサイトに悪意のあるリクエストを 埋め込み、脆弱性のあるWebサイトにログイン中の利用 者にそのリクエストを実行させるサイト横断型の脆弱性

CSRFの攻撃手口 正規のリクエストを識別する仕組みが無い箇所を特定し て、不正なパラメータをURLに組み込む。 脆弱性箇所を特定する。 トークンが利用されていない箇所を探す。 脆弱性箇所となるURL上のパラメータ名を確認する。 不正なパラメータを含むURLを考える。 http://localhost/Web/Scenario113/VulSoft/sns.php?pag e=4&public=1 不正なパラメータを含むURLを第三者のWebサイトに投 稿する 掲示板のURL欄など

OSコマンドインジェクション 悪意のあるOSコマンドを注入(インジェクション)し、 Webアプリケーションが意図しないOSコマンドを実行して しまうことで、システムを不正に操作されてしまう脆弱性

OSコマンドインジェクションの攻撃手口 一度に複数の機能を実行できるシェル機能を使って、 正規のOSコマンドに不正のOSコマンドを追加する 脆弱性箇所を特定する。 入力フォームに&(アンパサンド)を入れてみる。 脆弱性箇所となる入力フォームを確認する。 不正なOSコマンドを考える。 例: & dir /b c:\ 不正なコマンドを入力し実行する 脆弱性Webサイトの入力フォームなど

セッションの管理不備 セッションIDが規則性を有するため、推測されてし まう脆弱性

セッションID推測の攻撃手口 ログインを繰り返しセッションIDの規則性を推測する 脆弱性箇所を特定する。 ログインを繰り返す。 例:日+時+月+分+年+秒

演習テーマ 脆弱性検査 「グループウェア」のリンクをクリックしましょう。

演習の進め方 Webサイトの挙動を把握する 脆弱性となる箇所を特定する

1.Webサイトの挙動を把握する グループウェアにログイン し、4つのメニューの挙動 を確認しましょう。 グループウェアのメ ニュー。 IDは「yamada」、パ スーワードは 「P@ssword」 グループウェアのメ ニュー。 会議室予約 スケジュール管理 メールフォーム 休暇申請

2.脆弱性となる箇所を特定する グループウェアには5つの脆弱性があります。 誰が最も早く脆弱性箇所を特定できるか競いましょ う。 クロスサイトスクリプティング(XSS) SQLインジェクション クロスサイトリクエストフォージェリ(CSRF) OSコマンドインジェクション セッションの管理不備 誰が最も早く脆弱性箇所を特定できるか競いましょ う。 なお、セッションの管理不備に関しては四者一択の演 習問題になります。

補足事項 「グループウェアに内在する脆弱性を発見しました。」が 表示されたらOKです。 OSコマンド・インジェクション攻撃の方法には、ネット ワークの疎通を確認するコマンドであるpingコマンドを使 用してください。 例えば、自分自身のIPアドレスに対してpingパケットを20回 送信するには、 「/windows/system32/ping 127.0.0.1 –n 20」と指定しま す。 「Hint」や「検査方法の例示および解説」は見ずに自力で 脆弱性を特定するように心がけましょう。 過去のパワーポイントの講義資料は見てもよいです。

まずは、セッション管理不備の演習問題を解きましょう

会議室予約 脆弱性を特定しましょ う。 脆弱性の種類は何でしょ うか? 脆弱性の箇所はどこで しょうか? 制限時間10分

スケジュール管理 脆弱性を特定しましょう。 脆弱性の種類は何でしょ うか? 脆弱性の箇所はどこで しょうか? 制限時間10分

メールフォーム 脆弱性を特定しましょう。 脆弱性の種類は何でしょ うか? 脆弱性の箇所はどこで しょうか? 制限時間10分

休暇申請 脆弱性を特定しましょ う。 脆弱性の種類は何でしょ うか? 脆弱性の箇所はどこで しょうか? 制限時間10分

検査方法の例示および解説 ログインページ 会議室予約 スケジュール管理 メールフォーム 休暇申請 セッションの管理不備 クロスサイトスクリプティング(XSS) スケジュール管理 SQLインジェクション メールフォーム OSコマンドインジェクション 休暇申請 クロスサイトリクエストフォージェリ(CSRF)

ログインページ セッション管理の不備 ログイン後に遷移するグ ループウェアメニュー画面 のソースを表示してみま しょう。 <input type="hidden" name="session_id" value="セッションID" /> ログインの繰り返しにより、 セッションIDの規則性が分 かります。 ユーザID + ログインした 年月日時分秒を反転した値

会議室予約 XSS(格納型) タイトルの入力欄に下記の スクリプトを入力して会議 室予約を登録してみましょ う。 <script>alert("test");</scri pt> 会議室予約画面へアクセス するたびにアラートが表示 されるようになります。

スケジュール管理 SQLインジェクション URL欄に下記の不正リテラ ルを含むURLを指定してア クセスしてみましょう。 http://localhost/Web/Sc enario131/VulSoft/group ware.php?page=4&dat e=2015/12/11' or 'a'='a 他のユーザや日付のスケ ジュールが表示されま す。

メールフォーム OSコマンドインジェク ション メール作成時の件名入力欄 に下記の不正OSコマンド を追記してメールを送信し てみましょう。 &/windows/system32/pi ng 127.0.0.1 -n 20 メール送信処理に遅延 が発生します。

休暇申請 CSRF 掲示板のURL欄に下記の 不正リクエストを含む URLを投稿し、リンクか らアクセスをしてみま しょう。 http://localhost/Web /Scenario131/VulSoft /groupware.php?pa ge=8&holiday_id=1& delete 意図しない休暇申請情 報の削除が行われます。

対策済み検査演習の挙動確認 「対策済み検査演習の挙動確認」のリンクにアクセ スし、脆弱性対策が施されていることを確認しま しょう。 セッションの管理不備 クロスサイトスクリプティング(XSS) SQLインジェクション OSコマンドインジェクション クロスサイトリクエストフォージェリ(CSRF)

ログインページ セッション管理の不備 ログイン後に遷移するグ ループウェアメニュー画面 のソースを表示してみま しょう。 <input type="hidden" name="session_id" value="セッションID" /> 疑似乱数になっていること を確認しましょう。

会議室予約 XSS(格納型) タイトルの入力欄に下記の スクリプトを入力して会議 室予約を登録してみましょ う。 <script>alert("test");</scri pt> エスケープ処理により通常 の文字列として表示される ことを確認しましょう。

スケジュール管理 SQLインジェクション URL欄に下記の不正リテラ ルを含むURLを指定してア クセスしてみましょう。 http://localhost/Web/Sc enario131/VulSoft/group ware.safe.php?page=4 &date=2015/12/11' or 'a'='a URLが少し違うので注意 他のユーザや日付のスケ ジュールが表示されない ことを確認しましょう。

メールフォーム OSコマンドインジェク ション メール作成時の件名入力欄 に下記の不正OSコマンド を追記してメールを送信し てみましょう。 &/windows/system32/pi ng 127.0.0.1 -n 20 メール送信処理に遅延 が発生しないことを確 認しましょう。

休暇申請 CSRF 掲示板のURL欄に下記の不 正リクエストを含むURLを 投稿し、リンクからアク セスをしてみましょう。 http://localhost/Web/S cenario131/VulSoft/gr oupware.safe.php?pa ge=8&holiday_id=1&d elete URLが少し違うので注意 休暇申請情報の削除が行 われないことを確認しま しょう。

時間が余るようであれば、これまでのレ ポート課題をやりましょう。 https://moodle.artsci.kyushu-u.ac.jp/course/view.php?id=2661