---
title: GitHub_ActionsとZAPによる脆弱性診断の自動化
tags:  #脆弱性診断 #セキュリティ #webアプリケーション #zap #github actions  
author: [ニルフィ](https://www.docswell.com/user/nilfigo)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/VJP6RKLQE8.jpg?width=480
description: GitHub ActionsとZAPを活用した脆弱性診断の自動化について解説します。 CI/CDパイプラインに脆弱性診断を統合して開発プロセスの効率化とセキュリティ向上を両立する方法を、実践的なデモを交えながら紹介します。
published: July 19, 24
canonical: https://www.docswell.com/s/nilfigo/5L1XV8-github_actions_zap
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/VJP6RKLQE8.jpg)

GitHub Actionsと
ZAPによる
脆弱性診断の⾃動化
GMOサイバーセキュリティ byイエラエ株式会社
脆弱性診断研究会
松本隆則
2024年7⽉19⽇(⾦)


# Page. 2

![Page Image](https://bcdn.docswell.com/page/2EV3RVQP7Q.jpg)

はじめに
GitHub ActionsとZAPを活⽤した
脆弱性診断の⾃動化について解説します。
CI/CDパイプラインに脆弱性診断を統合して開発プロ
セスの効率化とセキュリティ向上を両⽴する⽅法を、
実践的なデモを交えながら紹介します。
© 2024 脆弱性診断研究会 Security Testing Workshop
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/57G3MLWQJL.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/4EQ5RY3WJP.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
4


# Page. 5

![Page Image](https://bcdn.docswell.com/page/KJ498W1171.jpg)

本セッションの目的・目標
•
GitHub ActionsとZAPで脆弱性診断を
実⾏する⽅法を知る
•
GitHub ActionsとZAPで脆弱性診断を
実⾏する場合のメリット/デメリットを知る
© 2024 脆弱性診断研究会 Security Testing Workshop
5


# Page. 6

![Page Image](https://bcdn.docswell.com/page/LE1K2YG5JG.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
6


# Page. 7

![Page Image](https://bcdn.docswell.com/page/GEWDRGKWJ2.jpg)

自己紹介
松本 隆則
@nilfigo（ニルフィ）(X(Twitter), Facebook)
•
脆弱性診断研究会 主宰
•
ZAP Evangelist
•
GMOサイバーセキュリティ byイエラエ株式会社
•
セキュリティジェネラリスト
•
•
アセスメントサービス部 診断1課（Webアプリケーション診断）
教育課（兼務）
© 2024 脆弱性診断研究会 Security Testing Workshop
7


# Page. 8

![Page Image](https://bcdn.docswell.com/page/47ZGRLZ2E3.jpg)

脆弱性診断研究会
•
Webアプリケーション脆弱性の診断手法や
脆弱性診断ツールの使用法などを研究するコミュニティ
•
コワーキングスペース茅場町Co-Edo様にて
2014年8月に最初のセミナーを開催（初回参加者：ひとり…）
•
2024年7月現在で90回以上のハンズオンセミナーを実施
© 2024 脆弱性診断研究会 Security Testing Workshop
8


# Page. 9

![Page Image](https://bcdn.docswell.com/page/YJ6YRW867V.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
9


# Page. 10

![Page Image](https://bcdn.docswell.com/page/GJ5G8M95J4.jpg)

小ネタ
OWASPとZAP
© 2024 脆弱性診断研究会 Security Testing Workshop
10


# Page. 11

![Page Image](https://bcdn.docswell.com/page/LE3R8WY575.jpg)

OWASP
The Open
Web
Application Security
Project
↓
The Open
Worldwide Application Security
Project
2023年2月にダブリンで開催されたOWASPのカンファレンス
「Global AppSec 2023」で変更が発表された模様。
© 2024 脆弱性診断研究会 Security Testing Workshop
11


# Page. 12

![Page Image](https://bcdn.docswell.com/page/8EDYMK5YEG.jpg)

ZAP（Zed Attack Proxy）
OWASP ZAP
※
→
ZAP
2023年8月にOWASPからSSP（The Software
Security Project）へZAPプロジェクトが移籍
© 2024 脆弱性診断研究会 Security Testing Workshop
12


# Page. 13

![Page Image](https://bcdn.docswell.com/page/V7P6RKG2J8.jpg)

宣伝：GMOイエラエで働こう！
l
新卒、第⼆新卒、中途 ⼤歓迎！
l
10年前からフルリモートワーク実施！
l
10年前からフルフレックス制！（部署や職種により）
l
⼊社後の研修＋OJTでスキルアップ！
l
社内インターン制度で⾃主的な異動が可能！
© 2024 脆弱性診断研究会 Security Testing Workshop
13


# Page. 14

![Page Image](https://bcdn.docswell.com/page/2JV3RV6XEQ.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
14


# Page. 15

![Page Image](https://bcdn.docswell.com/page/5EG3MLNR7L.jpg)

GitHub Actionsとは
•
GitHubが提供するCI/CD※プラットフォーム。
•
リポジトリ内でコードの品質管理や⾃動テスト、
デプロイなどを⾃動化する仕組み
※継続的インテグレーション/継続的デリバリー
© 2024 脆弱性診断研究会 Security Testing Workshop
15


# Page. 16

![Page Image](https://bcdn.docswell.com/page/4JQ5RYQY7P.jpg)

GitHub Actionsとは
•
⾃動化機能
•
•
•
コードのビルドやテスト、デプロイなどを⾃動化
GitHubとの統合
•
追加の設定なしで利⽤可能
•
pull requestやissueなどと連携して動作
実⾏環境
•
LinuxやWindows、macOSなどの仮想マシンで実⾏可能
© 2024 脆弱性診断研究会 Security Testing Worksho
16


# Page. 17

![Page Image](https://bcdn.docswell.com/page/K7498WNZE1.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
17


# Page. 18

![Page Image](https://bcdn.docswell.com/page/LJ1K2Y5D7G.jpg)

ZAPとは
•
ZAP ＝ Zed Attack Proxy
•
•
脆弱性診断⽤プロキシツール
•
•
https://www.zaproxy.org/
プロキシとして動作して、ブラウザとWebアプリケーション
間の通信の閲覧および改変が可能
オープンソース（Apache License 2.0）
•
商⽤・⾮商⽤問わず無償で利⽤可能
© 2024 脆弱性診断研究会 Security Testing Workshop
18


# Page. 19

![Page Image](https://bcdn.docswell.com/page/GJWDRG5872.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
19


# Page. 20

![Page Image](https://bcdn.docswell.com/page/4EZGRLN9J3.jpg)

自動診断の仕組み
1.
GitHubのリポジトリでソースコードを管理
2.
リポジトリのActionsワークフローに
ZAPのアクションを定義
3.
ソースコードを修正してpushやpull requestなどを実⾏
4.
ワークフローが起動してZAPのアクションが実⾏される
5.
結果がissueとして登録される
© 2024 脆弱性診断研究会 Security Testing Workshop
20


# Page. 21

![Page Image](https://bcdn.docswell.com/page/Y76YRW8DEV.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
21


# Page. 22

![Page Image](https://bcdn.docswell.com/page/G75G8M9874.jpg)

自動診断のデモ
1. 診断対象アプリをローカル環境で動作確認
2. アプリのソースコードを修正してリポジトリに反映
3. Actionsのワークフローが実⾏される
4. issueを確認
© 2024 脆弱性診断研究会 Security Testing Workshop
22


# Page. 23

![Page Image](https://bcdn.docswell.com/page/9J2YK92VJR.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
23


# Page. 24

![Page Image](https://bcdn.docswell.com/page/DEYGN4YQEM.jpg)

メリット
• ソースコードを修正するだけで
脆弱性診断を実施できる
• 結果がissueとして登録されるので、
脆弱性を無視するのが難しくなる
© 2024 脆弱性診断研究会 Security Testing Workshop
24


# Page. 25

![Page Image](https://bcdn.docswell.com/page/VJNGXYP278.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
25


# Page. 26

![Page Image](https://bcdn.docswell.com/page/YE9W8P3DE3.jpg)

デメリット
• 「抜け漏れ」が発⽣する
• ワークフロー完了に時間が掛かる
• 脆弱性の知識や経験が必要となる
• ZAPそのものの知識が必要となる
© 2024 脆弱性診断研究会 Security Testing Workshop
26


# Page. 27

![Page Image](https://bcdn.docswell.com/page/GE8N8DM57D.jpg)

「抜け漏れ」が発生する
クローリング（Spider）と⾃動診断（Active Scan）
それぞれに「抜け漏れ」が発⽣する可能性あり
•
クローリング： 診断対象漏れ
•
⾃動診断：
© 2024 脆弱性診断研究会 Security Testing Workshop
脆弱性指摘漏れ
27


# Page. 28

![Page Image](https://bcdn.docswell.com/page/LELPRM337R.jpg)

ワークフロー完了に時間が掛かる
診断対象アプリの規模が⼤きいと、
クローリングと⾃動診断に多⼤な時間が掛かる。
© 2024 脆弱性診断研究会 Security Testing Workshop
28


# Page. 29

![Page Image](https://bcdn.docswell.com/page/4JM4RYDM7W.jpg)

脆弱性の知識や経験が必要となる
• 検出された脆弱性が本当に存在するのか確認が必要
• 存在する場合、リスクや対応⽅法について判断が必要
•
直ちに修正すべきなのか
•
リスクを許容できるのか
© 2024 脆弱性診断研究会 Security Testing Workshop
29


# Page. 30

![Page Image](https://bcdn.docswell.com/page/PJRWR94L79.jpg)

ZAPそのものの知識が必要となる
効果的にクローリングおよび⾃動診断を実施するためには、
ZAPの仕組みや設定などを把握する必要がある。
© 2024 脆弱性診断研究会 Security Testing Workshop
30


# Page. 31

![Page Image](https://bcdn.docswell.com/page/PEXPRQZ67X.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
31


# Page. 32

![Page Image](https://bcdn.docswell.com/page/3EKDR98GJD.jpg)

まとめ
誰でも⼿軽に脆弱性診断を実⾏できるが完璧ではない。
しかし、何もしないよりはずっとマシ！
© 2024 脆弱性診断研究会 Security Testing Workshop
32


# Page. 33

![Page Image](https://bcdn.docswell.com/page/L73R8W25J5.jpg)

目次
1. 本セッションの⽬的・⽬標
6. ⾃動診断の仕組み
2. ⾃⼰紹介
7. ⾃動診断のデモ
3. ⼩ネタ・宣伝
8. メリット
4. GitHub Actionsとは
9. デメリット
5. ZAPとは
10. まとめ
11. 質疑応答
© 2024 脆弱性診断研究会 Security Testing Workshop
33


