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
トレーニングコースLFD121-JP「セキュアソフトウェア開発」のご紹介
Search
Linux Foundation Japan
PRO
March 07, 2023
Technology
0
320
トレーニングコースLFD121-JP「セキュアソフトウェア開発」のご紹介
Linux Foundation 柴田次一氏
2023年2月28日開催 第1回 OSSセキュリティMeetup 講演資料
Linux Foundation Japan
PRO
March 07, 2023
Tweet
Share
More Decks by Linux Foundation Japan
See All by Linux Foundation Japan
SOSS Community Day North America 2024 セッション報告
lfj
PRO
0
190
SOSS Community Day Report
lfj
PRO
0
120
OpenSSF Overview - Improve the Security of Open Source Software for All
lfj
PRO
0
160
Secure OSS Community Day North America イベントレポート
lfj
PRO
0
150
イベントレポート OpenSSF Day Vancouver
lfj
PRO
0
190
OpenSSF Day / OSS NAにおけるSBOM、SLSAの動向
lfj
PRO
0
380
Open Source Summit NA / OpenSSF Day報告
lfj
PRO
0
220
AGL Japan Meetup BoF
lfj
PRO
0
120
Automotive Grade Linux (AGL) Meetup Japan - AGL All Member Meeting (AMM) in Berlin March 2023 Report -
lfj
PRO
0
290
Other Decks in Technology
See All in Technology
CTOから見た事業開発とプロダクト開発 / My Perspective on Business and Product Development as CTO
keisuke69
4
960
サービス開発を前に進めるために 新米リードエンジニアが 取り組んだこと / Steps Taken by a Novice Lead Engineer to Advance Service Development
nologyance
0
180
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
0
480
ここがすごいよ! AWS Systems Manager!
saichan11
0
1.8k
Azure AI ことはじめ
tsubakimoto_s
0
130
ゆめみのアクセシビリティの現在地と今後
ryokatsuse
3
290
コンテナ・K8s研修 - 後半 Kubernetes 基礎&ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
1
120
AutomatedLabを使って内部ペンテストを勉強しよう! -やられ社内ネットワークの自動構築-
n_etupirka
1
610
楽しくGoを学び合う、LayerXの勉強会文化 / LayerX's study culture of having fun and learning Go together
ar_tama
2
350
テストケースの自動生成に生成AIの導入を試みた話と生成AIによる今後の期待
shift_evolve
0
190
データ分析基盤を作ってみよう~設計編~
nrinetcom
PRO
1
110
Datadog Cloud SIEMを使ってAWS環境の脅威を可視化した話/lifeistech-datadog-cloud-siem
gidajun
0
480
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
360
22k
Bash Introduction
62gerente
607
210k
WebSockets: Embracing the real-time Web
robhawkes
59
7.2k
10 Git Anti Patterns You Should be Aware of
lemiorhan
652
58k
Debugging Ruby Performance
tmm1
71
11k
What the flash - Photography Introduction
edds
65
11k
It's Worth the Effort
3n
181
27k
The Cost Of JavaScript in 2023
addyosmani
31
4.7k
StorybookのUI Testing Handbookを読んだ
zakiyama
15
4.9k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.5k
Optimising Largest Contentful Paint
csswizardry
18
2.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
662
120k
Transcript
トレーニングコース LFD121-JP 「セキュア ソフトウェア開発」 のご紹介 28, Feb 2023 Linux Foundation
Tsuigkazu Shibata
https://openssf.org/training/courses/
• LFD121はセキュアなソフト開発のためのHOWTOを 説明したソフト開発者向けのコース • 全てオンラインで提供される • セキュアなソフト開発の基本に絞っている • 所要時間 約14-18時間
• OpenSSF BestPractice WGの成果 https://openssf.org/training/courses/
https://training.linuxfoundation.org/training/developing-secure-software-lfd121-jp/
David A Wheeler Linux Foundation, Director of Open Source Supply
Chain Security. バージニア州フェアファック スにあるジョージ・メイソン 大学(GMU)でセキュアソフ トウェアの開発の大学院課 程を指導。
LFD121-JP セキュア ソフトウェア開発の構成 第1部 要件、設計、再利用 第2部 実装 第3部 検証と より専門的なトピック
第1部 要件、設計、再利用 • セキュリティの基本 ◦ セキュリティとは何か CIAトライアド ▪ セキュリティ要件 セキュリティ目標 ◦ プライバシーとは、法規制、米国、欧州
GDPR • セキュア設計の原則 ◦ S&S論文で示されるセキュア設計の原則 (Jerome H. Saltzer & Michael D. Schroeder) • 外部ソフトウェア利用 ◦ ソフトウェア再利用の基本 ◦ OSS選択時の評価 ◦ 再利用可能なソフトウェアのダウンロード ◦ 再利用ソフトのupdate適用 ◦ ソフトウェア利用方法の update CIAトライアド 機密性: Confidentiality 完全性: Integrity 可用性: Availability
第2部 実装 • 入力検証 ◦ 入力検証はどうあるべきか、 allow listing/good listing vs deny
listing/bad listing ◦ 数値とテキスト、unicode エンコーディング、正規表現でのチェックと ReDOS脆弱性 ◦ 内部形式変換(deserialization), CSV • データの安全な処理 ◦ デフォルトのクレデンシャルは NG、ハードコードされたクレデンシャルもダメ ◦ バッファオーバフロー、メモリの2重解放、解放後使用、解放漏れ • 他のプログラムの呼び出し ◦ SQLインジェクションの例、 OSコマンドインジェクション、エラーリターンなど • 出力の送出 ◦ クロスサイトスクリプティング
第3部 検証と より専門的なトピック • 検証 ◦ ソフトウェアの問題を検知するツール類:静的解析(コードスキャナ、 ReDOS解析、暗号やパスワードのハード コード検知)、動的解析(テストカバレッジ、ファズテスト、アドレスサニタイザ) • 脅威モデリング
◦ STRIDE • 暗号 ◦ AES ◦ 使ってはいけないもの MD4, SHA-0 ◦ SHA-2(SHA-256, SHA-512), SHA-3 は広く使われている ◦ Git のSHA‐1 の今後は? ◦ RSA • その他トピック ◦ 脆弱性レポートの受信からCVEの取得、アップデートの公開までのプロセス ◦ CICDパイプラインを含む開発配付環境の堅牢化
本コースについて • 要件、設計から開発、検証に至るソフト開発の場面で必要な最低限のセキュリティ 上の知識を習得することが可能。 • e-Learning コースなので時間のある時に自由に受講可能。また適宜問題が設定 されていて知識の確認が可能。 • 開発チームに適用することで、チーム全体の知識・スキルの底上げが可能。
• さらにここで得た知識を元に、OpenSSF で実施する必要があるセキュリティ強化の 活動を検討するベースにもなる。
オープンソースでの展開 • David wheeler のGithub Repoにはオリジナルのテキストが公開済み。 • 日本語テキストは今後このRepoにマージする予定。 • 日本語テキストの翻訳上の問題や英語のテキストの課題については
Github上で コメントや変更提案を提供可能。 https://github.com/ossf/secure-sw-dev-fundamentals
今後、可能なこと • トレーニングコースについては OpenSSF Best Practice WG にて議論可能。 • トレーニングコースの内容についてコントリビューションすることも可。
◦ 日本語版の翻訳上の問題等について ◦ 英語版の課題について ◦ オープンソースの標準的なプロセスで実施 • 興味がある方は参加されては如何でしょうか?
None