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
Django のセキュリティリリースを見る
Search
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
1k
コンペを気楽に開催しよーぜ!@関西Kaggler会
nyk510
0
1.5k
3分でMLアプリを作る 〜推論コードにちょっとのStreamlitを添えて〜
nyk510
1
1.2k
硬派で真面目なグラフを描く
nyk510
0
570
CORSをちゃんと理解する atmaバックエンド勉強会#4
nyk510
0
470
pythonで気軽にパッケージを作るのは良いという話。
nyk510
14
9.9k
RestAPIのページネーション atma バックエンド勉強会 #3
nyk510
1
1.1k
AWS CPU Credit を完全に理解する
nyk510
0
520
atmaCup#8 Opening
nyk510
0
330
Other Decks in Technology
See All in Technology
[RSJ26] Hierarchy-Aware Multimodal Retrieval-Augmented Generation for Embodied Question Answering
keio_smilab
PRO
1
170
AI活用の現在地、 ちゃんと見えてますか?/XPfest-2026
visional_engineering_and_design
0
130
本番に近いテストをもっと手軽に - Postmanで広がるAPIテストの世界 / Expanding the World of API Testing with Postman
yokawasa
1
240
現場に行くだけでは足りない——プロダクトエンジニアが業務の流れを捉える観点と、その鍛え方
takumiengineering
0
210
プロダクトエンジニアに必要な「いい感じ」に作る能力 〜たくさん作れる時代に、どこまで作るかの決め方〜
jnishime_dresscode
2
1.2k
Hub & Spoke 環境のネットワークルーティングを分解してみる
tsuyataku
1
520
Claude Codeの体系的な理解と知識のフック
oikon48
10
6.6k
『止めない』を設計する — 制約の中で、事業の根幹を支える判断
hiroyaterui
0
140
Amazon S3 Tablesに全部任せてみた結果——コンパクション/スナップショット管理は本当に手放せるか
shigeruoda
0
310
指示待ちから変化に応じるClaude Codeへ!~環境からAgentへの帰り道を作る~
gotalab555
9
1.8k
いま、生成AIにKaggleをどこまで 任せられるか — ROGIIコンペでの進め方とTips
k951286
2
1.3k
データエンジニアの困りごとをDevinと一緒に解消する
10xinc
2
770
Featured
See All Featured
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
1.9k
Tell your own story through comics
letsgokoyo
1
1.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.6k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
430
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
How to train your dragon (web standard)
notwaldorf
97
6.8k
Amusing Abliteration
ianozsvald
1
280
The Curious Case for Waylosing
cassininazir
1
490
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
430
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
460
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を作らずメールせよとのこと • 公にセキュリティの不備が知られるとまずいのでそうなってる