Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
脆弱性診断を通じて見えてくるWebセキュリティ
Search
hasegawayosuke
September 18, 2018
Technology
5k
12
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
脆弱性診断を通じて見えてくるWebセキュリティ
OWASP Day 758 講演資料
hasegawayosuke
September 18, 2018
More Decks by hasegawayosuke
See All by hasegawayosuke
これからのフロントエンドセキュリティ
hasegawayosuke
36
14k
SSRF基礎
hasegawayosuke
26
15k
Node.jsセキュリティ
hasegawayosuke
14
5.5k
プロキシーツールとかを使うときの小技
hasegawayosuke
11
3.6k
All Your REJECT Are Belong To Us - リジェクトする側から -
hasegawayosuke
4
2.8k
あなたのWebアプリケーション OWASP TOP 10に対応できていますか?
hasegawayosuke
0
560
WebアプリをOWASP TOP 10に対応させよう / #shibuyaxss techtalk #10
hasegawayosuke
8
3.1k
Other Decks in Technology
See All in Technology
From Vanilla Kubernetes to a Batteries-Included Platform: Developer Experience at 1,300+ Clusters
yosshi_
0
680
synctest時代のhttptest Go 1.27で変わるHTTPサーバテストの裏側 / go conference2026 synctest and httptest
budougumi0617
1
2.6k
アリアドネの糸と、20年ごとの建て替え ── 長尾真『電子図書館』を、伊勢で読み直す / Rereading Makoto Nagao’s "Electronic Library" in Ise
ykiyota
0
150
2026-09-11 【Snowflake World Tour Tokyo 2026】Snowflakeを起点に、AI Agentが自律稼働し続ける未来へ / Driving AI Agents with Snowflake
civitaspo
0
300
生成AIのテナント制御とシャドーMCP対策 | AIを"止めずに"、情報を守る
yukun
0
140
omasushiというライブラリを作った
polidog
PRO
0
190
AIとペアプロを始める。人とのペアプロをやめる。ペアプロの良さを改めて知る。もっと好きになった。 / Rediscovering Pair Programming
honyanya
1
330
Deploying a Full-Stack Bun-Native Framework on Cloudflare Workers
7nohe
0
130
Where Is JetBrains AI Heading- — Central CLI, Air Alpha, and the Agentic Development Stack
x5gtrn
PRO
0
150
作り直せるコードは迅速に 作り直せないDBは慎重に - AI時代のプロダクトエンジニアが「判断の不可逆性」で開発速度を変える話
kinosuke01
0
300
日経電子版を支えていく Kasane Design System/fec_fukuoka
nikkei_engineer_recruiting
0
670
AIネイティブプロダクトで顧客価値を最大化するプロダクトエンジニアとFDEの協働
righttouch
PRO
0
230
Featured
See All Featured
Skip the Path - Find Your Career Trail
mkilby
1
220
Facilitating Awesome Meetings
lara
57
7.1k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
4
620
Are puppies a ranking factor?
jonoalderson
2
3.9k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
65k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
690
Raft: Consensus for Rubyists
vanstee
141
7.7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
6.2k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
1
2.9k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
560
Transcript
脆弱性診断を通じて 見えてくるWebセキュリティ OWASP Kansai チャプターリーダー はせがわようすけ
長谷川陽介 (はせがわようすけ) (株)セキュアスカイ・テクノロジー 取締役CTO
[email protected]
http://utf-8/jp/ 千葉大学 非常勤講師 OWASP Kansai
チャプターリーダー OWASP Japan ボードメンバー CODE BLUEカンファレンス レビューボードメンバー
OWASP DAY 758 / 2018 #owaspnagoya t OWASP Kansai Chapter
Open Web Application Security Project みんなの力で, ウェブで できたもんの セキュリティを 何とかする活動 …の関西版
OWASP DAY 758 / 2018 #owaspnagoya t OWASP Kansai Chapter
自分たちの直面するWebセキュリティの 問題を自分たちの手で解決したい! 日本で2番目の OWASP Local Chapter 2014年3月から 京都・大阪・神戸 で Local Chapter Meeting (勉強会) を開催 Webセキュリティの悩み事を気楽に相談し情報共有できる 場 スキル、役職、業種、国籍、性別、年齢に関係なし
OWASP DAY 758 / 2018 #owaspnagoya t OWASP Kansai Chapter
Meeting
OWASP DAY 758 / 2018 #owaspnagoya t OWASP Kansai Chapter
Meeting
OWASP DAY 758 / 2018 #owaspnagoya t OWASP Kansai Chapter
Meeting 2018年10月17日 オワスプカンサイナイト 開催予定 卓球バーラウンジパレット 本町店
OWASP DAY 758 / 2018 #owaspnagoya t OWASP Kansai Chapter
Meeting 2018年12月1日 開催予定 テーマ : 経営とセキュリティ」 会場 : アサヒコムホール (大阪中之島フェスティバルタワー)
OWASP DAY 758 / 2018 #owaspnagoya t 今日のテーマ 「脆弱性診断を通じて見えてくる Webセキュリティ」
OWASP DAY 758 / 2018 #owaspnagoya t 世の中のWebサイトには どんな脆弱性が多いのか
OWASP DAY 758 / 2018 #owaspnagoya t IPAへの届け出件数 ソフトウェア等の脆弱性関連情報に関する届け出状況 [2018年第2四半期(4月~6月)]
https://www.ipa.go.jp/files/000068146.pdf
OWASP DAY 758 / 2018 #owaspnagoya t IPAへの届け出件数 生きてるWebサイトで法的に問題がない状態(?)で見つけられた脆 弱性のみ
クロスサイトスクリプティング DNS情報の設定不備 SQLインジェクション ディレクトリ・トラバーサル ファイルの誤った公開 HTTPSの不適切な使用 個人/研究機関が特定の脆弱性を集中的に探すと結果が変わる 必ずしも実際のWebサイトに存在している脆弱性を反映しているわ けではない このへん大丈夫なのかな…
OWASP DAY 758 / 2018 #owaspnagoya t もうちょっと実情に近いデータは ないのかな
OWASP DAY 758 / 2018 #owaspnagoya t 出します!どーん!
脆弱性の見つかった検査案件数の割合(%) 弊社の診断実施案件にて、年間の検査数に対してそれぞれの 脆弱性がみつかった案件数の割合を%で表示 検出数が少ない脆弱性は記載を省略 ▪ 2016年 ▪ 2017年
脆弱性の見つかった検査案件数の割合(%) 弊社の診断実施案件にて、年間の検査数に対してそれぞれの 脆弱性がみつかった案件数の割合を%で表示 検出数が少ない脆弱性は記載を省略 ▪ 2016年 ▪ 2017年 XSS
- 22% 診断案件の22%で見つかっている 対策していても漏れが見つかる - 網羅的に検 査を行う脆弱性診断が効果的 不適切なプロセスの検証 - 12% アプリケーションロジック上の問題 診断案件の12%で見つかっている SQLインジェクション - 5% それほど件数は多くないがリスクは高い コードインジェクション - 1% リモートコード実行、ごくまれに見つかる
OWASP DAY 758 / 2018 #owaspnagoya t 診断の効果をあげるために
OWASP DAY 758 / 2018 #owaspnagoya t 診断の効果をあげるために 診断の効果を最大限に得られるように!
せっかく予算と期間を割いて脆弱性診断を行うのなら、診断の効果を最大 限にあげられるようにしたほうがお得! 診断が行いやすい条件いろいろ 診断のスケジュールが確定している 大量のリクエストを送っても安定稼働する 診断用の環境を用意する オーソドックスなデータフォーマットで通信 これら↑が守られていないと診断の精度が落ちることもあり得る
OWASP DAY 758 / 2018 #owaspnagoya t 診断のスケジュールが確定している 診断会社は限られたリソース(人員)の予定をやりくりして案件を調整 している
各社とも診断まで3ヵ月待ちとか普通にあり得る 開発の遅れで診断が開始できない、リスケになる 無理やり人員をアサインするので物理的に余裕のない状態になる 診断スケジュールを変えられないので開発中のものを診断する 動かない機能があちこちにあって診断できない 通常のバグも多すぎて脆弱性なのかバグなのか判断できない 診断が終わった箇所の挙動が変わる。何のために診断してるのかわからな くなる
OWASP DAY 758 / 2018 #owaspnagoya t 大量のリクエストを送っても安定稼働する 診断では網羅性を上げるため、ツールによって大量のリクエストを送 信する
こういうサイトは診断しにくい 大量にリクエストを送ると挙動が不安定になる レスポンスが遅い ツールをかけるタイミングや速度などの調整はするが、その調整に 相当の時間を取られることも多い 診断用の環境は一時的にしか使わないので、少しだけリソースが潤沢にある とうれしい。DBとかネットワークとか…。
OWASP DAY 758 / 2018 #owaspnagoya t 診断用の環境を用意する 本番環境で診断をせざるを得ない場合、かなり神経をつかう
とある診断員とSQLインジェクション https://www.slideshare.net/zaki4649/sql-35102177 「あれはやってはダメ」「これもやってはダメ」という指定が多いとそのための 調整も大変。 本番ではないが開発が進行している環境だと診断の効率が落ちる 毎日ソフトウェアが追加や更新される 不定期にデプロイが走り、ちょっとずつ仕様が変わる。診断前半で操作した 遷移が、後半では消えていて辿れなくなる 毎朝データが消えてる、デフォルト値に戻ってる
OWASP DAY 758 / 2018 #owaspnagoya t オーソドックスなデータフォーマットで通信 複雑なデータフォーマットは専用のパーサーやスタブを実装する必 要がある
こういうフォーマットだと苦労する パラメータが1つだけの普通のPOSTかと思ったら、パラメータの中身が URLエンコードされたJSONで、中身がぎっしり詰まってる 送信パラメータから署名を生成して都度埋め込むAPI MessagePack SSTtechlog 12 MessagePack/JSON変換HTTPプロキシの紹介 https://www.securesky-tech.com/column/techlog/12.html スマホアプリで独自暗号化、証明書のピニング 通信を解いた専用環境を提供してもらわないと相当難しい
OWASP DAY 758 / 2018 #owaspnagoya t それ以外にも診断の効率が落ちるケース B2B用途のAPIで仕様が非公開、業界独自用語、APIのユースケー スや用途が不明
一度しか操作できない操作(初回ログイン時の設定など)が多い ログイン遷移で外部SSO挟んで多数サイトのリダイレクトを経由す る 診断を通じて物理的な影響が出る ECサイトの診断で実際に商品が届く 電話やFAXが鳴る SOCやIDS/IPSが検知してしまう
OWASP DAY 758 / 2018 #owaspnagoya t 診断の効果をあげるためにできること 「そうは言っても開発スケジュールも厳しいし、診断会社が柔軟に対 応してよ」
➡ まったくその通りではあるんですが、後工程に押し付けあいするのではなく、 いっしょに少しでもいいサービスを出せるよう開発側も診断側も協力していき たい 診断を阻害する要因が少なければ少ないほど、より丁寧で精度の高い診断 サービスを提供できる
OWASP DAY 758 / 2018 #owaspnagoya t WAFと診断
OWASP DAY 758 / 2018 #owaspnagoya t WAFと診断 Web Applicatino
Firewallと診断では目的・性格が違う 診断 - 脆弱性を探す - 「シングルクォートを入れるとエラーが表示される」 WAF - 攻撃を防ぐ - 「データベースから実際にデータを抜き出す」 WAFで防げないタイプの脆弱性も多い アプリケーションの仕様に基づいた脆弱性など
OWASP DAY 758 / 2018 #owaspnagoya t 安全なアプリケーション開発のために
OWASP DAY 758 / 2018 #owaspnagoya t 安全なアプリケーション開発のために 安全な設計
使用する暗号やハッシュの強度 パスワードリマインダの画面遷移 権限周りの設計ミス その他、仕様に起因するもの 安全な実装 SQLインジェクション対策 XSS対策 バッファオーバーフロー その他、実装に起因するもの
OWASP DAY 758 / 2018 #owaspnagoya t 安全なアプリケーション開発のために 設計、実装とも世の中の標準を知っておく 例:
MD-5やSHA-1はもう使い物にならない パスワードリマインダは時限付き SQLインジェクション対策にはプリペアードステートメント HTML生成には自動エスケープされるテンプレートエンジン
OWASP DAY 758 / 2018 #owaspnagoya t 「脆弱性」の定義 脆弱性はただのバグ 脆弱性はバグの一種です。
一般的なバグは「できるはずのことができな い」というものですが、脆弱性は「できないは ずのことができる」というバグです。もっと言 うと、「できてはいけないことができる」という ことです EGセキュアソリューションズ 徳丸浩さん
OWASP DAY 758 / 2018 #owaspnagoya t 脆弱性はただのバグ バグの少ないプログラム =
脆弱性も少ない 脆弱性を減らすにはバグを減らせばいい まずはプログラムの品質をあげよう! セキュリティだけにフォーカスするのは本当は間違い そのうえでセキュリティに特化した対応を! コードの品質を上げる = 安全になる デザインレビュー コードレビュー テストを書く 最後に脆弱性検査
OWASP DAY 758 / 2018 #owaspnagoya t コードの品質を上げる PHP7で堅牢なコードを書く -
例外処理、表明プログラミング、契約による設計 和田卓人(t_wada)さん スライド https://speakerdeck.com/twada/php-conference-2016-revised 動画 https://www.youtube.com/watch?v=54jHDHvcYAo 開発者なら絶対に見ておいたほうがいい
OWASP DAY 758 / 2018 #owaspnagoya t 質問?
[email protected]
@hasegawayosuke
http://utf-8.jp/