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
270
トレーニングコース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
イベントレポート OpenSSF Day Vancouver
lfj
PRO
0
130
OpenSSF Day / OSS NAにおけるSBOM、SLSAの動向
lfj
PRO
0
270
Open Source Summit NA / OpenSSF Day報告
lfj
PRO
0
140
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
250
OSSセキュリティ強化の重要性とOpenSSFの概要
lfj
PRO
0
310
OpenSSF WGs 紹介 : Securing Software Repositories / Security Tooling
lfj
PRO
0
240
Best Practices for Open Source Developers Working Group 活動内容のご紹介
lfj
PRO
0
210
みんなの自動翻訳@TexTraのご紹介
lfj
PRO
0
180
Other Decks in Technology
See All in Technology
ユーザーストーリーのレビューを自動化したみたの
bun913
1
330
Vertex AI を中心に 生成AIのアップデートを共有します
kaz1437
0
150
テストプロセスで大事にしていること #jasstnano
makky_tyuyan
0
130
Algyan イベント振り返り
linyixian
0
190
The CloudCompare project by Dr. Daniel Girardeau-Montaut
kentaitakura
0
510
Garoon 開発チーム / Garoon development team
cybozuinsideout
PRO
2
2.9k
現代CSSフレームワークの内部実装とその仕組み
poteboy
3
1.3k
0→1開発における技術選定において一番大切なこと
bicstone
1
330
少数チームで挑む: SwiftUI, TCA, KMPを用いた 新規動画配信アプリ 「ABEMA Live」の開発について
tomu28
0
540
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
3
340
巨大なテーブルのテーブル定義を無停止で安全に誰でも変更できるようにする / Table-definitions-for-huge-tables-can-be-modified-by-anyone-safely-and-non-disruptively
freee
1
740
スタートアップの技術顧問を3年間続けて発生した事と気付き
biwakonbu
0
160
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
266
26k
It's Worth the Effort
3n
180
27k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
186
16k
Faster Mobile Websites
deanohume
297
30k
Fireside Chat
paigeccino
20
2.6k
Building a Scalable Design System with Sketch
lauravandoore
455
32k
Designing Experiences People Love
moore
136
23k
Building Your Own Lightsaber
phodgson
98
5.7k
Principles of Awesome APIs and How to Build Them.
keavy
120
16k
Rails Girls Zürich Keynote
gr2m
91
13k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
19
1.9k
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