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
脆弱性検知ツールVulsの導入をしてから半年経ってみて
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
adachi.ryo
October 05, 2017
Technology
28k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
脆弱性検知ツールVulsの導入をしてから半年経ってみて
adachi.ryo
October 05, 2017
More Decks by adachi.ryo
See All by adachi.ryo
横断SREがSRE社内留学制度 / Enablingになぜ踏み切ったのか
rvirus0817
0
610
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
4.9k
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
5.6k
Findy Team+のSOC2取得までの道のり
rvirus0817
0
5.1k
FindyにおけるTakumi活用と脆弱性管理のこれから
rvirus0817
0
5.6k
技術的負債で信頼性が限界だったWordPress運用をShifterで完全復活させた話
rvirus0817
2
8.5k
Amazon Security Lakeを活用したセキュリティログの集約とAIによる可視化の最前線
rvirus0817
0
530
TechBull Membersの開発進捗どうですか!?
rvirus0817
0
2k
クラウド脆弱性の傾向とShisho Cloudの活用
rvirus0817
0
320
Other Decks in Technology
See All in Technology
ボトムアップ文化が強い組織で セキュリティをどう根付かせていくかの現在進行形の話 / Making Security Stick in a Bottom-Up Organization
yamaguchitk333
0
220
【CEDEC2026】専門性の高いデフォルメチームが挑んだ人材育成戦略 〜Cygames Academiaの企画から実施まで〜
cygames
PRO
0
600
Head First モブプログラミング / Head First Mobprogramming
takaking22
10
12k
Flutterをカメラで動かしたかった話
sony
1
140
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
4.9k
強化学習「理論」入門
enakai00
3
3.6k
カートの信頼性を担保するWireMockを使ったe2eテスト
ykagano
0
250
【CEDEC2026】ゲームシナリオライターを支援するAIツール開発の実践 ― 設計とプロンプトの工夫 ―
cygames
PRO
1
830
【CEDEC2026】『ウマ娘 プリティーダービー』 英語版のキャラクターの方言や口調をローカライズするための創造的アプローチ
cygames
PRO
2
580
ガバメント AI 源内を地方自治体は活用できるのか可能性と課題、期待について
takeda_h
1
400
生成 AI の基礎 〜 サンプル実装で学ぶ基本原理
enakai00
7
4.4k
AIコーディングの次。コードレビューと理解負荷を解消して組織の開発生産性を高める
moongift
PRO
2
2.5k
Featured
See All Featured
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
430
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
360
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Darren the Foodie - Storyboard
khoart
PRO
3
3.6k
It's Worth the Effort
3n
188
29k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
sira's awesome portfolio website redesign presentation
elsirapls
0
320
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.3k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
GitHub's CSS Performance
jonrohan
1033
470k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
Transcript
੬ऑੑݕπʔϧVulsͷಋೖΛ ͔ͯ͠ΒܦͬͯΈͯ Adachi Ryo/SRE
ΞδΣϯμ ▸ ࣗݾհɺࢲ͕ೖࣾ͢Δલ ▸ SREνʔϜʹͳ͔ͬͯΒ ▸ SREνʔϜͷओͳۀɺར༻͍ͯ͠Δٕज़ ▸ VulsͱɺͿͬͪΌ͚੬ऑੑରԠͬͯ… ▸
VulsߏਤɺΠϯετʔϧํ๏ ▸ con fi g.tomlɺVulsίϚϯυ ▸ Vuls repo Vuls v0.4.0 ▸ ·ͱΊ
ࣗݾհ ▸ Adachi Ryo ▸ @adachin0817 ▸ 2017/05~ ▸ ܦݧ
ࣾSE͔ΒϗεςΟϯάɺ ΞυςΫͷΠϯϑϥΤϯδχΞ ▸ झຯ HIPHOP
ࢲ͕ೖࣾ͢Δલ ▸ Πϯϑϥϝϯόʔ͕͍ΔͷʹνʔϜͱͯ͠׆ಈͯ͠ͳ͔ͬͨ ▸ ͲΜͳϛυϧΣΞͬͯΔͳͲϝϯόʔ͕Ѳ͍ͯ͠ͳ͍ ▸ ΠϯϑϥϦϙδτϦ͕ͳ͍ ▸ infrastructure as
codeͬͯͳ͍ ▸ खಈͰΠϯετʔϧ͔aws cliͰཧ͍ͯ͠Δ ▸ ଐਓԽ͍ͯ͠Δ
SREνʔϜ ͱͯ͠ಈ͜͏ʂʂ
(28ষ) SREͷΛՃ͢Δํ๏: ৽ਓ͔ΒΦϯίʔϧ୲ ɺͦͯͦ͠ͷઌ
SREͷఆٛ ▸ αΠτͷ৴པੑΛอূ͢Δ(αΠτ৴པੑΤϯδχΞ) ▸ ӡ༻ۀͱαΠτͷ৴པੑ্ͷ2ͭͷׂΛ୲͏ ▸ ੵۃతʹίʔυΛهड़ ▸ ӡ༻ΛΫϥυࣗಈԽʹஔ͖͑Δ
SREʹٻΊΒΕΔͷ ᶃ ▸ Πϯϑϥٕज़ TCP/IPɺHTTPͳͲͷωοτϫʔΫϓϩτίϧʹ͍ͭͯͷ ͔ࣝΒɺύϑΥʔϚϯεվળɺϛυϧΣΞͷػೳࣝ ▸ ΞϓϦέʔγϣϯٕज़
Կ͔͠Βͷϓϩάϥϛϯάݴޠࣝ ʢPHPɺPythonɺRubyͳͲʣ ͪΖΜΠϯϑϥϓϩϏδϣχϯά
SREʹٻΊΒΕΔͷ ᶄ ▸ ηΩϡϦςΟࣝ ࠷ݶͷηΩϡϦςΟࣝඞਢ ▸ ίϛϡχέʔγϣϯೳྗ ϝϯόʔ։ൃνʔϜͱͷڞ༗
ڠྗ͠ͳ͕Β։ൃΛߦ͏ͨΊ
SREΤϯδχΞϦϯάʹՃ͑ͯಛΛൃش͢Δ ▸ ༏ΕͨϦόʔεΤϯδχΞϦϯάͷεΩϧΛ࣋ͭ →γεςϜͷಈ࡞Λཧղ͢Δ ▸ ౷ܭతʹߟ͑Δೳྗ͕ඞཁ →ੳൺֱΛ͏·͘ߦ͑ΔΑ͏ʹ܇࿅͢Δ ▸
ྟػԠมʹߦಈ →ࠜຊతͳݪҼΛൃݟʂ
SREڭҭํ๏
SREνʔϜʹͳ͔ͬͯΒ ▸ োରԠϝϯόʔશһͰ ▸ infrastructure as codeඞਢ ▸ wikiͷॻ͖ํͳͲڭ͑Δ ▸
ேձΛ࢝Ίͨ ɾࡢԿΛͬͨͷ͔ ɾࠓԿΛΔͷ͔ ɾԿʹͦΜͳʹϋϚ͍ͬͯΔͷ͔ ɾڞ༗ࣄ߲ ▸ શϓϩδΣΫτରԠͰ͖ΔΑ͏ʹ
SREνʔϜͷओͳۀ ▸ αʔόɺϛυϧΣΞͷՄ༻ੑͷҡ࣋ɾ্ ▸ αʔόɺϛυϧΣΞͷύϑΥʔϚϯεͷ্ ▸ ϩάऩू/ՄࢹԽɺੳج൫ͷߏஙɺӡ༻(Redash) ▸ αʔόϓϩϏδϣχϯά(Terraform,Ansible) ▸
ηΩϡϦςΟ/੬ऑੑͷ୲อ(Vuls) ▸ ։ൃڥͳͲͷϝϯς(Vagrant,docker) ▸ 24࣌ؒࢹରԠ(zabbix) ▸ DevOpsνʔϜͱͯ͠ۀվળ
VULSͬͯ·͔͢?
ҧ͍·͢
VULSͱ ▸ ʮVULnerability Scannerʯͷུ ▸ ϑϡʔνϟʔΞʔΩςΫτͷਆށࢯɺྛࢯʹΑΔ։ൃ ▸ Linuxαʔόʹଘࡏ͢Δ੬ऑੑΛεΩϟϯ ▸ OSύοέʔδཧର֎ͷϛυϧΣΞΛεΩϟϯ
▸ ΤʔδΣϯτϨεΞʔΩςΫνϟ(SSH) ▸ ઃఆϑΝΠϧͷςϯϓϨʔτࣗಈੜ ▸ EmailSlackͳͲ௨ՄೳʢຊޠͰͷϨϙʔτՄೳʣ
ͿͬͪΌ͚੬ऑੑରԠͬͯ… ▸ ωοτϝʔϧͰใΛಘΔ(ݟಀ͕ͪ͠ɺ͔Βͷ์ஔ) ▸ αʔό͕ϨΨγʔͳͷ͋ΓɺରԠ͠ͳ͍͍ͯ͘ͱ͔… ▸ ଞʹ੬ऑੑ͋ΔͷͰͱશαʔόௐࠪ͠ͳ͍ͱ͍͚ͳ͍ (ࠓߋযΓ) ▸ ੬ऑੑ༰Λ֬ೝ͢Δ͚ͩͰ͘ͳΔ
▸ ຯͳ࡞ۀ
JVN ੬ऑੑϨϙʔτ @JVNJP
ͪͳΈʹ ▸ ੬ऑੑରࡦใσʔλϕʔεJVN iPediaͷొঢ়گ [2017 ୈ2࢛ظʢ4݄ʙ6݄ʣ70,996݅ʂ
ߏਤ ▸ 2017/05~ ▸ CentOS 6.9 ▸ Zabbix3.0.10 ▸ Vuls
v0.3.0 ▸ Go v1.8.3
Πϯετʔϧ ํ๏ʂʁ
Πϯετʔϧํ๏ ▸ ؆୯ͳͷͰׂѪ͍͖ͤͯͨͩ͞·͢ ▸ ࢀߟࢲͷϒϩάͰ ▸ https://blog.adachin.me/archives/5540 ▸ εΩϟϯ͍ͨ͠αʔόͰࣄલʹઃఆ͓ͯ͘͜͠ͱ
ɾvulsϢʔβ( ͳΜͰ)NOPASSʹsudoersݖݶΛ͚ͭΔ ɾyum-plugin-changelog͕ೖ͍ͬͯΔ͜ͱ ▸ ↑͜͜ΒΜAnsibleԽ͓͖ͯ͘͠
CONFIG.TOML
VULSίϚϯυ ▸ vulsσΟΫγϣφϦ(࠷৽੬ऑੑใߋ৽) $ go-cve-dictionary fetchnvd -last2y $
go-cve-dictionary fetchjvn -latest ▸ vuls dryrun $ vuls con fi gtest ▸ vuls εΩϟϯ $ vuls scan ▸ ݁ՌΛαʔόͰ֬ೝ $ vuls tui ▸ ݁ՌΛslackʹ௨ $ vuls report -format-short-text -format-json -cvedb-path=$PWD/cve.sqlite3 -ovaldb- path=$PWD/oval.sqlite3 --lang=ja -to-slack -cvss-over=7
ఆظతʹ࣮ߦ͍ͨ͠߹ ▸ cronʹࠐΊOK ▸ scan࣌ʹϩά͕resultsԼʹཷ·ΔͷͰআ(5ੈ)
VULS REPO ▸ Web UI Load Error
VULS ΧελϚʔ αϙʔτʹฉ͍ͯΈͨ (2िؒϋϚͬͨͨΊ)
VULS SLACK ▸ ͳʹΒେܕόʔδϣϯ ग़Δ͔Β Ξοϓͯ͠ࢼͯ͘͠Εͱʂ
2017/08/25 V0.4.0 RELEASE!
VULS UPDATE TO 0.4.0 ▸ 2017/8/28 ▸ $ vuls -v
vuls v0.4.0 0ba490c ▸ $ go version go version go1.9 linux/amd64 ▸ Ξοϓσʔτ͠·ͨ͠ʂ
VULS V0.4.0 ▸ εΩϟϯਫ਼େ෯্ ▸ ϨϙʔτͷใྔΞοϓ(?͕ݮΔ) ▸ fast(sudoͳ͠ɺ αʔόෛՙͷεΩϟϯϞʔυ)
σϑΥϧτ
VULS REPO V0.4.0 ▸ 0.4.0͔Βweb αʔόΛ࣋ͨͳͯ͘ OKʹʂ ▸
goͷhttpύοέʔδͰ ಈ͘(μΠδΣετೝূ) ▸ Port 5111
VULS REPO ▸ ՄࢹԽ͢Δ͜ͱͰ੬ऑੑ͕Ͳͷ͘Β͍͋Δͷ͔அͰ͖Δ
VULS ੬ऑੑΞοϓσʔτϑϩʔਤ
VULS/ZABBIX SERVER 1ϲ݄ͷύϑΥʔϚϯε
Ͳ͜·Ͱ੬ऑੑରԠ͢Δͷ͔ ▸ ਖ਼ͯ͢Ξοϓσʔτ͢Δͷՙ͕ॏ͍… (Kernel࠶ىಈͱ͔)→ଟ͍ͷͰߜΔඞཁ͕͋Δ ▸ ୈࡾऀ͕߈ܸͦ͢͠͏ͳαʔό (LBͿΒԼ͕ͬͯΔͷϚετ) ▸
੬ऑੑ0ͱ͍ͬͯະͷͷ͋Δ ▸ Ͱ੬ऑੑͪΌΜͱΞοϓσʔτ͢Δํ͕҆৺
·ͱΊ ▸ Vulsͷಋೖ؆୯ͰӡӦָͪΜʂ ▸ Vulsͷ͓͔͛Ͱ੬ऑੑରԠΛΕͳ͍ʂ ▸ vuls scan࣌ʹෛՙͳ͍ʂVulsઐ༻αʔό͍Βͳ͍! ▸ ͜Ε͔ΒVulsඞਢʂ
ߦ͖·͠ΐ͏ʂʂʂ
͝ਗ਼ௌ ͋Γ͕ͱ͏ ͍͟͝·ͨ͠!