Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OWASP ZAPのAPIとCLI / 20190830 - Security Testing...
Search
脆弱性診断研究会
August 30, 2019
Technology
3
1.7k
OWASP ZAPのAPIとCLI / 20190830 - Security Testing Workshop
第76回ハンズオンセミナー脆弱性診断ええんやで(^^)
OWASP ZAPのAPIとCLI
2019年8⽉30⽇(⾦)
脆弱性診断研究会
(Security Testing Workshop)
脆弱性診断研究会
August 30, 2019
Tweet
Share
More Decks by 脆弱性診断研究会
See All by 脆弱性診断研究会
20191128 - Security Testing Workshop
security_testing_workshop
3
1.1k
何故「思ってたのと違う」⾒積額が提⽰されるのか / 20190725 - Security Testing Workshop
security_testing_workshop
2
1.2k
OWASP ZAP Maniacs #6
security_testing_workshop
2
2k
Other Decks in Technology
See All in Technology
関東Kaggler会LT: 人狼コンペとLLM量子化について
nejumi
3
600
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
120
地方拠点で エンジニアリングマネージャーってできるの? 〜地方という制約を楽しむオーナーシップとコミュニティ作り〜
1coin
1
230
N=1から解き明かすAWS ソリューションアーキテクトの魅力
kiiwami
0
130
Building Products in the LLM Era
ymatsuwitter
10
5.5k
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
130
Goで作って学ぶWebSocket
ryuichi1208
3
1.6k
OpenID Connect for Identity Assurance の概要と翻訳版のご紹介 / 20250219-BizDay17-OIDC4IDA-Intro
oidfj
0
280
速くて安いWebサイトを作る
nishiharatsubasa
11
13k
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
ソフトウェアエンジニアと仕事するときに知っておいたほうが良いこと / Key points for working with software engineers
pinkumohikan
0
100
偶然 × 行動で人生の可能性を広げよう / Serendipity × Action: Discover Your Possibilities
ar_tama
1
1.1k
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
34
2.5k
Making Projects Easy
brettharned
116
6k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Gamification - CAS2011
davidbonilla
80
5.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
How to Ace a Technical Interview
jacobian
276
23k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
10
1.3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Transcript
第76回ハンズオンセミナー 脆弱性診断ええんやで(^^) OWASP ZAPの APIとCLI 2019年8⽉30⽇(⾦) 脆弱性診断研究会 (Security Testing Workshop)
脆弱性診断研究会とは Webアプリケーションの脆弱性を診断 する⼿法や脆弱性診断ツールの使⽤法 などを研究するコミュニティ。コワー キングスペース茅場町Co-Edo様にて第 1回セミナーを2014年8⽉に開催して 以来2019年8⽉現在で76回のセミナー を実施。 © 2019
脆弱性診断研究会 Security Testing Workshop 2 2019/08/30
⾃⼰紹介 松本 隆則 @nilfigo(ニルフィーゴ、ニルフィ) • 脆弱性診断研究会 主宰 • EGセキュアソリューションズ株式会社 •
OWASP Japan プロモーションチーム • ZAP Evangelist (New!) 3 © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30
ZAP Evangelist https://github.com/zaproxy/zaproxy/wiki/ZapEvangelists • The following people are happy to
give free ZAP talks and/or training in their respective locations • Most ZAP evangelists will travel to give talks or training provided expenses are covered. 4 © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30
アジェンダ • 脆弱性とは? • 脆弱性診断とは? • OWASPってナニ? • OWASP ZAP
ってナニ? • ZAP CLI • ZAP API 5 © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30
脆弱性とは 脆弱性(ぜいじゃくせい)とは、コンピュータのOSやソフトウェアにお いて、プログラムの不具合や設計上のミスが原因となって発生し た情報セキュリティ上の欠陥のことを言います。 • 「総務省 安⼼してインターネットを使うために 国⺠のための情報セキュリティサイト」より引⽤ http://www.soumu.go.jp/main_sosiki/joho_tsusin/security/basic/risk/11.html •
⽂中の強調はスライド作成者による © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 6
脆弱性診断とは ちょい足し異常系テスト © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 7
ちょい⾜し異常系テスト ちょい⾜しする隠し味のひとつが OWASP ZAP © 2019 脆弱性診断研究会 Security Testing Workshop
2019/08/30 8
OWASP ってナニ︖ The O pen W eb A pplication S
ecurity P roject 9 © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30
OWASP ってナニ︖ OWASPとは、Webをはじめとするソフト ウェアのセキュリティ環境の現状、またセ キュアなソフトウェア開発を促進する技術・ プロセスに関する情報共有と普及啓発を⽬的 としたプロフェッショナルの集まる、オープ ンソース・ソフトウェアコミュニティです。 http://blog.owaspjapan.org/ より引⽤
10 © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30
OWASP ZAP ってナニ? • https://www.owasp.org/index.php/OWASP_Zed_Attack_ Proxy_Project • 世界中のエンジニアによって開発されている セキュリティ診断⽤プロキシツール •
ZAP = Zed Attack Proxy プロキシとして動作して、ブラウザとWebアプリケーショ ン間の通信の閲覧および改変が可能 • オープンソース(Apache License 2.0) • 商⽤・⾮商⽤問わず無償で利⽤可能 © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 11
OWASP ZAPの基本設定 nモード • セーフモード • プロテクトモード • 標準モード •
攻撃モード © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 12
OWASP ZAPの基本設定 【重要】プロテクトモード以外は使⽤禁⽌!! なぜなら 管理外のサイトへの診断を実⾏する危険性が⾼い © 2019 脆弱性診断研究会 Security Testing
Workshop 2019/08/30 13
OWASP ZAPの基本設定 nオプション • ローカル・プロキシ • Address、ポート • スパイダー •
動的スキャン © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 14
OWASP ZAPの基本設定 nアドオン • インストール • アップデート nポリシー • スキャンポリシー
© 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 15
ZAP CLI コマンドラインインターフェース (Command Line Interface)で OWASP ZAPを操作 © 2019
脆弱性診断研究会 Security Testing Workshop 2019/08/30 16
コマンドラインオプション 2019/08/30 © 2019 脆弱性診断研究会 Security Testing Workshop 17 HelpCmdline
· zaproxy/zap-core-help Wiki https://github.com/zaproxy/zap-core-help/wiki/HelpCmdline
オススメのオプション • -daemon UIなしで起動 • -dir <dir> 作業ディレクトリ指定 • -newsession
<path> ZAPセッションの保存先指定 • -host <host> ZAPの待受IPアドレス指定 • -port <port> ZAPの待受ポート指定 2019/08/30 © 2019 脆弱性診断研究会 Security Testing Workshop 18
ZAP APIとは? OWASP ZAPを操作するAPI © 2019 脆弱性診断研究会 Security Testing Workshop
2019/08/30 19
ZAP API 事前準備 [ツール] →[オプション] →[API] © 2019 脆弱性診断研究会 Security
Testing Workshop 2019/08/30 20
ZAP API 事前準備① 有効 UI Enabled □Secure Only © 2019
脆弱性診断研究会 Security Testing Workshop 2019/08/30 21
ZAP API 事前準備② すべてのAddressを「有効」に。 © 2019 脆弱性診断研究会 Security Testing Workshop
2019/08/30 22
ZAP API 事前準備③ これら6つの設定はすべて「危険」なので、よく考えてから設定しましょう。 © 2019 脆弱性診断研究会 Security Testing Workshop
2019/08/30 23
ZAP API ⼀覧 OWASP ZAPで[ツール]→[API⼀覧] ↓ OSのデフォルトブラウザでAPIトップページが 表⽰される © 2019
脆弱性診断研究会 Security Testing Workshop 2019/08/30 24
ZAP API UI © 2019 脆弱性診断研究会 Security Testing Workshop 127.0.0.1:57777
(OWASP ZAPのIPアドレス&ポート) 「ローカル API」リンクで⼀覧表⽰ 2019/08/30 25
ZAP API 主なAPI © 2019 脆弱性診断研究会 Security Testing Workshop コンポーネント
概要 ascan 動的スキャン(Active Scanner)の管理/操作 context コンテキスト操作 core ZAPセッション管理、アラート表⽰など pscan 静的スキャン(Passive Scanner)の管理/操作 spider スパイダー(クローリングツール) 2019/08/30 26
ZAP API © 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 27
ZAP API アクセス⽅法 • ブラウザ経由 • curlコマンド © 2019 脆弱性診断研究会
Security Testing Workshop 2019/08/30 28
ZAP APIで脆弱性診断 1. 診断対象登録 2. 診断対象情報収集 3. 脆弱性診断実施 4. 診断結果確認
© 2019 脆弱性診断研究会 Security Testing Workshop 2019/08/30 29
1. 診断対象登録 1. newContext 2. includeInContext 3. contextList © 2019
脆弱性診断研究会 Security Testing Workshop 2019/08/30 30
2. 診断対象情報収集 1. spider © 2019 脆弱性診断研究会 Security Testing Workshop
2019/08/30 31
3. 脆弱性診断実施 1. ascan © 2019 脆弱性診断研究会 Security Testing Workshop
2019/08/30 32
4. 診断結果確認 1. report © 2019 脆弱性診断研究会 Security Testing Workshop
2019/08/30 33