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
Django のセキュリティリリースを見る
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Yamaguchi Takahiro
December 21, 2022
Technology
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Django のセキュリティリリースを見る
Yamaguchi Takahiro
December 21, 2022
More Decks by Yamaguchi Takahiro
See All by Yamaguchi Takahiro
関西Kaggler会_不確実性最適化ゲーム入門
nyk510
1
1.3k
コンペを気楽に開催しよーぜ!@関西Kaggler会
nyk510
0
1.5k
3分でMLアプリを作る 〜推論コードにちょっとのStreamlitを添えて〜
nyk510
1
1.2k
硬派で真面目なグラフを描く
nyk510
0
590
CORSをちゃんと理解する atmaバックエンド勉強会#4
nyk510
0
480
pythonで気軽にパッケージを作るのは良いという話。
nyk510
14
10k
RestAPIのページネーション atma バックエンド勉強会 #3
nyk510
1
1.1k
AWS CPU Credit を完全に理解する
nyk510
0
540
atmaCup#8 Opening
nyk510
0
340
Other Decks in Technology
See All in Technology
In-Context Learning再入門。ICLの勾配降下的解釈の研究動向を追ってみる。
dai08srhg
1
800
AI Agent 時代のデータ基盤: ClickHouse で実現する 超高速分析とコスト削減の両立
jozono
0
230
仕様と現実の間で落とし所を探るリモートMCPの認証・認可 — Sansanの認証基盤における課題と実践
sansantech
PRO
2
240
FinOpsを導入してマルチプロダクトのコスト最適化を実現する
kworkdev
PRO
0
140
MCPでAIが自分で調べに行く
cdataj
0
140
ライフワーク「猫でもわかるDirectConnect」
kentapapa
0
310
公共システムAdventCalendar2026
toru_kubota
0
300
TSKaigi Sendai 2026 - tsgo時代のTypeScript Playgroundはどう動くか
teamlab
PRO
0
120
Shared Signals Framework 仕様解説
oidfj
0
350
思考過程から秘密が漏れる:Amazon Bedrock上のKimi K3を5つの方法で攻めたら、25回中22回漏洩した話
yama3133
1
110
PostgreSQL オプティマイザ統計の秘密
nori_shinoda
1
460
AWSを利用する上で知っておきたい名前解決の話 2026
nagisa53
5
3.4k
Featured
See All Featured
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
300
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.6k
Into the Great Unknown - MozCon
thekraken
41
2.8k
Abbi's Birthday
coloredviolet
5
11k
Mind Mapping
helmedeiros
1
440
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
290
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
1
300
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.7k
Product Roadmaps are Hard
iamctodd
55
13k
Navigating Weather and Climate Data
rabernat
0
590
Transcript
Django のセキュリティリリー スを見る 2022/10/26 nyk510
Djangoはすごい! が頼り過ぎてる…? • Djangoはフルスタックフレームワークでセキュリティについては心配ない、と思っている • ただ実際にはたまにセキュリティインシデントが見つかってパッチが配布されている • 具体的な中身とかどうやって開発されているとか知らない…おんぶにだっこ
今日の目的 • 今も残っている不具合を知る • どういう方法で配布されているかの仕組みをしる
Djangoのバージョン管理方法 • githubで管理されている • 新しいバージョンができるとリリースのための tag が切られ公式サイトで通知される • リリース一覧は https://docs.djangoproject.com/en/4.1/releases/
から見ることができる
最近のセキュリティ系のリリース Django 4.0.8 release notes https://docs.djangoproject.com/en/4.1/releases/4.0.8/ から拝借 (2022-10-16)
最近のセキュリティ系のリリース Django 4.0.8 release notes https://docs.djangoproject.com/en/4.1/releases/4.0.8/ から拝借 (2022-10-16) リリースページにセキュリティ issue
であることがそのレベルと共に表記され る - 高: リモートコード実行・ SQLインジェクション - 中: XSS・CSRFなどの攻撃系 - 低: レアケースな設定の問題・未検証のリダイレクト問題等 名前はCVE + わかりやすい説明と共に表記される。 (国際化された URL における潜在的なサービス拒否の脆弱性 )
CVEとは? 情報セキュリティのおける脆弱性やインシデントに ついて固有の名前をつけて管理するデータベース 昔は各種の団体やベンダーが独自報告して散逸して いることを問題視して作られた に作成せずCVEに統一されることで脆弱性の比較検 討が容易になった(トノコト) https://www.cve.org/
Django 4.0.8 に該当するページを調べるには? CVE から始まるIDで調べると出てくる • https://www.cve.org/CVERecord?id=CVE -2022-41323 先程よりも包括的な内容が記載されている •
django4.0.8以外でも修正されたことがわか る 内容と参照すべきリンクが記載されている • 今回の場合だとリリースがどこに影響があっ たかや、どこで修正がされたか (commit) な ども記載がある。
どういう内容だった? CVEのページに当該修正の commit log がある: https://github.com/django/django/commit/5 b6b257fa7ec37ff27965358800c67e2dd11c9 24 修正内容は1行 (というより10文字ぐらい)・
re.escape を追加するところ
どういう内容だった? • 言語指定に正規表現が受け付けられていた • 内部に正規表現で意味がある単語が利用さ れるとクラッシュする ◦ 例えば `e(` などをリクエストされたと
き [re.error: missing ), unterminated subpattern at position 1] となる • これによりDDos攻撃などに弱くなる
番外編: もしセキュリティ関連のミスを見つけたら? • Djangoのissueを作らずメールせよとのこと • 公にセキュリティの不備が知られるとまずいのでそうなってる