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
0
90
Django のセキュリティリリースを見る
Yamaguchi Takahiro
December 21, 2022
Tweet
Share
More Decks by Yamaguchi Takahiro
See All by Yamaguchi Takahiro
コンペを気楽に開催しよーぜ!@関西Kaggler会
nyk510
0
1.2k
3分でMLアプリを作る 〜推論コードにちょっとのStreamlitを添えて〜
nyk510
1
1.1k
硬派で真面目なグラフを描く
nyk510
0
510
CORSをちゃんと理解する atmaバックエンド勉強会#4
nyk510
0
400
pythonで気軽にパッケージを作るのは良いという話。
nyk510
14
9.6k
RestAPIのページネーション atma バックエンド勉強会 #3
nyk510
1
950
AWS CPU Credit を完全に理解する
nyk510
0
450
atmaCup#8 Opening
nyk510
0
260
オンサイトデータコンペの魅力: 関わる全員が楽しいコンペ設計のための取り組み
nyk510
3
5.4k
Other Decks in Technology
See All in Technology
NewSQLや分散データベースを支えるRaftの仕組み - 仕組みを理解して知る得意不得意
hacomono
PRO
3
230
QuickSight SPICE の効果的な運用戦略~S3 + Athena 構成での実践ノウハウ~/quicksight-spice-s3-athena-best-practices
emiki
0
280
推し書籍📚 / Books and a QA Engineer
ak1210
0
130
Delegating the chores of authenticating users to Keycloak
ahus1
0
180
SREの次のキャリアの道しるべ 〜SREがマネジメントレイヤーに挑戦して、 気づいたこととTips〜
coconala_engineer
1
4.1k
VS CodeとGitHub Copilotで爆速開発!アップデートの波に乗るおさらい会 / Rapid Development with VS Code and GitHub Copilot: Catch the Latest Wave
yamachu
2
430
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
820
ABEMAの本番環境負荷試験への挑戦
mk2taiga
5
1.2k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
5
39k
AIエージェントが書くのなら直接CloudFormationを書かせればいいじゃないですか何故AWS CDKを使う必要があるのさ
watany
18
7.4k
大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化
plaidtech
PRO
0
360
OpenTelemetryセマンティック規約の恩恵とMackerel APMにおける活用例 / SRE NEXT 2025
mackerelio
3
1.9k
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
83
9.1k
Making Projects Easy
brettharned
116
6.3k
Site-Speed That Sticks
csswizardry
10
700
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Gamification - CAS2011
davidbonilla
81
5.4k
Code Review Best Practice
trishagee
69
19k
Designing for humans not robots
tammielis
253
25k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Faster Mobile Websites
deanohume
308
31k
Reflections from 52 weeks, 52 projects
jeffersonlam
351
21k
The Cost Of JavaScript in 2023
addyosmani
51
8.6k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
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を作らずメールせよとのこと • 公にセキュリティの不備が知られるとまずいのでそうなってる