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
480
トレーニングコース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
Discussion for CISA 2025 Minimum Elements for an SBOM
lfj
PRO
0
87
OpenSSF Community Day Europe 2025イベントレポート
lfj
PRO
0
60
Open Source Summit Europe 2025イベントレポート
lfj
PRO
0
62
OpenSSFツール紹介 : protobom
lfj
PRO
0
77
OpenSSF Community Day Japan イベントレポート
lfj
PRO
0
77
Open Source Summit NA 参加報告
lfj
PRO
0
68
Open Source Summit North America 2025 参加 Report
lfj
PRO
0
99
Introducing the OpenSSF SBOM Everyware SIG (2025/1-2025/4)
lfj
PRO
0
220
CRA (Cyber Resilience Act) 第13条と第14条におけるOSSスチュワードの義務
lfj
PRO
0
500
Other Decks in Technology
See All in Technology
JAWS UG AI/ML #32 Amazon BedrockモデルのライフサイクルとEOL対応/How Amazon Bedrock Model Lifecycle Works
quiver
1
360
猫でもわかるAmazon Q Developer CLI 解体新書
kentapapa
1
190
AI機能プロジェクト炎上の 3つのしくじりと学び
nakawai
0
180
AWS DMS で SQL Server を移行してみた/aws-dms-sql-server-migration
emiki
0
270
AIを使ってテストを楽にする
kworkdev
PRO
0
350
AWSが好きすぎて、41歳でエンジニアになり、AAIを経由してAWSパートナー企業に入った話
yama3133
2
210
Kotlinで型安全にバイテンポラルデータを扱いたい! ReladomoラッパーをAIと実装してみた話
itohiro73
3
120
re:Inventに行くまでにやっておきたいこと
nagisa53
0
820
仕様駆動開発を実現する上流工程におけるAIエージェント活用
sergicalsix
10
4.9k
アウトプットから始めるOSSコントリビューション 〜eslint-plugin-vueの場合〜 #vuefes
bengo4com
3
1.9k
個人でデジタル庁の デザインシステムをVue.jsで 作っている話
nishiharatsubasa
3
5.3k
ゼロコード計装導入後のカスタム計装でさらに可観測性を高めよう
sansantech
PRO
1
590
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
The World Runs on Bad Software
bkeepers
PRO
72
11k
The Language of Interfaces
destraynor
162
25k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6k
Why You Should Never Use an ORM
jnunemaker
PRO
60
9.6k
Leading Effective Engineering Teams in the AI Era
addyosmani
7
680
Thoughts on Productivity
jonyablonski
71
4.9k
Testing 201, or: Great Expectations
jmmastey
45
7.7k
Why Our Code Smells
bkeepers
PRO
340
57k
Designing for Performance
lara
610
69k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
A designer walks into a library…
pauljervisheath
209
24k
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