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
OPENLOGI Company Profile for engineer
hr01
1
23k
「それはhowなんよ〜」のガイドライン #orestudy
77web
9
2.3k
10分でわかるfreeeのQA
freee
1
11k
開発現場とセキュリティ担当をつなぐ脅威モデリング
cloudace
0
130
7,000名規模の 人材サービス企業における プロダクト戦略・戦術と課題 / Product strategy, tactics and challenges for a 7,000-employee staffing company
techtekt
0
210
バックエンド留学した話/Backend study abroad story
kaonavi
0
130
Vision Language Modelを活用した メルカリの類似画像レコメンドの性能改善
yadayuki
9
1.3k
FinOps_Demo
tkhresk
0
110
ペアプログラミングにQAが加わった!職能を超えたモブプログラミングの事例と学び
tonionagauzzi
1
160
数百台のオンプレミスのサーバーをEKSに移行した話
yukiteraoka
0
770
Startups On Rails 2025 @ Tropical on Rails
irinanazarova
0
180
Tirez profit de Messenger pour améliorer votre architecture
tucksaun
1
200
Featured
See All Featured
Unsuck your backbone
ammeep
670
57k
Raft: Consensus for Rubyists
vanstee
137
6.9k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3.1k
Music & Morning Musume
bryan
46
6.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
We Have a Design System, Now What?
morganepeng
51
7.5k
Product Roadmaps are Hard
iamctodd
PRO
52
11k
Bash Introduction
62gerente
611
210k
Rails Girls Zürich Keynote
gr2m
94
13k
Making the Leap to Tech Lead
cromwellryan
133
9.2k
Java REST API Framework Comparison - PWX 2021
mraible
29
8.5k
Gamification - CAS2011
davidbonilla
81
5.2k
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