Open1

ウェブ・セキュリティ基礎試験(徳丸基礎試験)①

445445

徳丸基礎試験勉強まとめ①

「体系的に学ぶ 安全なWebアプリケーションの作り方 第2版」の1章と2章を自分なりにまとめる
アドバイスや間違い指摘など歓迎です

1章「Webアプリケーションの脆弱性とは」

1.1 脆弱性とは、「悪用できるバグ」

悪用とは?

他人の個人情報などを勝手に閲覧できる、別ユーザーに成りすましできるなど

本書の目的は?

脆弱性のない安全なWebアプリ開発方法を説明

1.2 脆弱性があるとなぜ駄目なのか

なにがだめ?

経済的損失、法的な要求、攻撃インフラ(ボットネットワークなど)構築に加担してしまう

法的な要求って?

  • 用語1「個人情報保護法」
    個人情報の保護に関する法律

  • 用語2「個人情報取扱事業者」
    個人情報データベースを事業に用いている事業者

  • 用語3「安全管理措置」
    個人情報取扱事業者は安全管理措置を講じる義務がある(個人情報保護法第二十条)
    義務なので、これをやらないと法律違反

攻撃インフラ(ボットネットワークなど)って?

  • 用語1「攻撃インフラ」
    他のWebサーバーを攻撃する多数のPCたち

  • 用語2「ボット」
    マルウェアの一種。
    ボットに感染したPCは、攻撃者PCから指令を受けて一斉に攻撃(DDoSやスパム送信など)する

  • 用語3「ボットネットワーク」
    攻撃インフラの一種

脆弱性のあるWebサイトを攻撃者が改ざんし、ボット感染する仕組みを仕掛ける
そのWebサイトを利用したPCがボットに感染してネットワークが拡大する

1.3 脆弱性が生まれる理由

脆弱性発生原因は?

  • バグによるもの
    SQLインジェクションやXSSなど

  • チェック機能の不足によるもの
    ディレクトリトラバーサルなど

1.4 セキュリティバグとセキュリティ機能

バグと機能って何が違うの?

  • セキュリティバグの例
    フォームの入力項目に意図しない文字が入って、個人情報が閲覧できる状態になる

  • セキュリティ機能の例
    HTTPSによる暗号化

1.5 本書の構成

割愛

1.6 セキュリティガイドラインとの対応

セキュリティガイドラインって?

2章「実習環境のセットアップ」

2.1 実習環境の概要

なにを使うの?

  • VirtualBox
    仮想マシンの上で攻撃対象用マシン(Webサーバー)構築
    ブラウザから実際に攻撃してセキュリティの理解を深めます

  • Linux(Debian)
    攻撃対象用マシンのOS

  • Apache
    攻撃対象用マシンのWebサーバー

  • nginx
    攻撃対象用マシンのリバースプロキシ

  • PHP
    Webサーバー内のPHPコードを処理

  • Tomcat
    Webサーバー内のJava Servletコードを処理

  • MariaDB
    攻撃対象用マシンのデータベースサーバー

  • Postfix
    攻撃対象用マシンのメールサーバー

  • Firefox
    攻撃実行者(ブラウザ)

  • OWASP ZAP
    脆弱性診断ツール

  • FoxyProxy-Standard
    プロキシを切り替えるFirefoxアドオン
    これでFirefoxのプロキシをOWASP ZAPに変更してhttp通信などを閲覧&操作する

下記割愛

2.2 Firefoxのインストール
2.3 VirtualBoxのインストール
2.4 仮想マシンのインストールと動作確認
2.5 OWASP ZAPのインストール
2.6 Firefoxの拡張FoxyProxy-Standardのインストール
2.7 OWASP ZAPを使ってみる
2.8 Webメールの確認