Git Product home page Git Product logo

webapppentestguidelines's Introduction

Webアプリケーション脆弱性診断ガイドライン 第1.1版

by 脆弱性診断士スキルマッププロジェクト

脆弱性診断士スキルマッププロジェクトについて

特定非営利活動法人日本ネットワークセキュリティ協会の日本セキュリティオペレーション事業者協議会のセキュリティオペレーションガイドラインWG(WG1)と、OWASP Japan主催の共同ワーキンググループである 「脆弱性診断士スキルマッププロジェクト (代表 上野宣)」では、脆弱性診断を行う個人の技術的な能力を具体的にすべく、脆弱性診断を行う技術者(以下、脆弱性診断士)のスキルマップとシラバスを整備しています。

Webアプリケーション脆弱性診断ガイドラインについて

Webアプリケーションの脆弱性診断は、自動診断ツールを使った脆弱性診断だけでは十分な診断結果が得られないと本WGでは考えており、そのため手動診断補助ツールを使った手動診断を併用することが望ましいとしている。 しかし、手動診断は脆弱性診断士の経験やスキルによる診断能力の差違がある。そこで本WGでは、最低限必要な診断項目や手順を定義することで、一定レベルの手動診断による脆弱性診断を行うことができる「Webアプリケーション脆弱性診断ガイドライン」(以下、本ガイドライン)を作成し公開した。

本ガイドラインは「脆弱性診断士」における「脆弱性診断士(Webアプリケーション)」区分における「Silver」ランクで要求される内容としている。

ガイドラインを使いこなすためのリンク集

開発系

JavaScriptセキュリティの基礎知識

はせがわようすけさんがJavaScriptに関連するセキュリティ上の問題について解説されている記事です。XSS、CSRFなどの受動的攻撃の手法や対策、Webアプリケーションを考える上にて必要となる基礎技術であるURLとオリジンについて学ぶことができます。また、本連載の後半ではDOM-based XSSに関して深い解説をされており、脆弱性を生まないための実装方法などについても記載されています。

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

OWASP Japanの成果物の一つとして公開されている安全なWebアプリケーションの開発に必要なセキュリティ要件がまとめられている資料です。Webシステム/Webアプリケーションに関して一般的に盛り込むべきだと考えられるセキュリティ要件について記載されています。要求仕様やRFPの作成なども利用でき、脆弱性などに対する対策方法やセキュリティ対策として考慮しておくべきことについて学ぶことができます。

もいちどイチから! HTTP基礎訓練中

対話形式で分かりやすく、おさえておくべき HTTPやWebの技術、典型的な脆弱性、ツールの簡単な使い方などについて解説しています。初心者の方はもちろん、Webセキュリティを復習したい方に有用な情報です。

書籍

  • 体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践(徳丸浩)
  • Webセキュリティ担当者のための脆弱性診断スタートガイド 上野宣が教える情報漏えいを防ぐ技術(上野宣)

脆弱性系

安全なウェブサイトの作り方

Webサイト開発者や運営者が適切なセキュリティを考慮したWebサイトを作成できることを目的としてIPAより公開されている資料です。メジャーなWebアプリケーションの脆弱性に関する脆弱性の概要、発生しうる脅威、一般的な対策方法などが記載されています。また、ウェブサイト全体の安全性を向上させるための方策や具体的な実装例などを伴ったウェブアプリケーションに脆弱性を作りこんでしまった「失敗例」についても解説されています。

なぜ自社で脆弱性診断を行うべきなのか

Webアプリケーションの脆弱性診断における自動診断と手動診断のそれぞれの特徴や、診断業務のやり方について記載されています。また、脆弱性診断を自社で行うことによるメリットについて、コストや品質の面から解説がされています。

星野君のWebアプリほのぼの改造計画

会社の「Web担当」に配属された星野君が、Webアプリケーション開発業務の中で様々なセキュリティの問題に直面し、解決をしていく日常が対話形式で描かれています。Webアプリケーションの開発において、作りこまれやすい問題の原因や対策について学ぶことができます。

BurpSuiteJapan Burp Suite ハンズオントレーニング資料

HTTP基礎入門

Burp Suite導入・操作

Burp Suite実践編

Burp Suite回答編

Burp Suite Japan User Groupより公開されているBurp Suiteを用いて脆弱性診断を学ぶことを目的として開催されたハンズオントレーニングの資料です。 HTTPに関する基礎知識やBurp Suiteの基本的な操作方法についても解説されており、Burp Suiteを用いてXSSやSQLインジェクションの脆弱性を検出する方法を学ぶことができるでしょう。

ツール系

Burp Suite Startup マニュアル

Burp Suite Japan User Groupにより公開されている資料です。Webアプリケーションのセキュリティ診断で活用されるプロキシツール「Burp Suite」における、インストール方法から診断をする上で必要な設定や各種機能の利用方法について、図や実際の画面キャプチャを用いて説明されています。初めて「Burp Suite」を使用される方におすすめの資料です。

OWASP ZAP マニュアル Ver.2.1.0版

OWASP Japanにより公開されている資料です。Webアプリケーションのセキュリティ診断で活用されるプロキシツール「OWASP ZAP」における、インストール方法から診断をする上で必要な設定や各種機能の利用方法について、図や実際の画面キャプチャを用いて説明されています。初めて「OWASP ZAP」を使用される方や、ツールの各機能について参照したい方におすすめの資料です。

ZAP Handbook in Japanese

ZAP Evangelistとして活動されているYuhoKamedaさんが、OWASP ZAP関連の日本語資料について解説しているサイトです。ZAPを使って診断を行うための解説や、OWASP Top10の脆弱性をZAPを使って見つける診断方法を日本語で公開しています。

脱初心者

Mozilla Developer Network

Webブラウザのセキュリティに関する仕様や、HTML/CSS/JavaScriptの仕様についての詳細が掲載されています。特定の機能の動作、利用方法など、診断の中で生じた疑問を解消するのに有用です。

Slack: sec-testing.slack.com

セキュリティテストを行う人たちのためのSlack

OWASP Cheat Sheet

OWASPが提供するセキュリティテストやセキュア開発に有用なチートシートです。診断の中で随時参照するのはもちろん、自学自習やトレーニングにも有用です。

OWASP Testing Guide

OWASPが提供するセキュリティテストに関するガイドラインです。セキュリティテストが備えるべき診断項目や手順などが紹介されています。

HTML5 を利用した Web アプリケーションのセキュリティ問題. に関する調査報告書

JPCERT/CC発行のHTML5セキュリティに関する調査報告書です。HTML5特有のテスト観点の整理や、開発時に気をつけるべき事項が紹介されています。(一部古くなっている記述もあります。)

webapppentestguidelines's People

Contributors

ueno1000 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.