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
340
トレーニングコース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
210
SOSS Community Day Report
lfj
PRO
0
140
OpenSSF Overview - Improve the Security of Open Source Software for All
lfj
PRO
0
170
Secure OSS Community Day North America イベントレポート
lfj
PRO
0
170
イベントレポート OpenSSF Day Vancouver
lfj
PRO
0
210
OpenSSF Day / OSS NAにおけるSBOM、SLSAの動向
lfj
PRO
0
420
Open Source Summit NA / OpenSSF Day報告
lfj
PRO
0
240
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
310
Other Decks in Technology
See All in Technology
エンジニア視点で見る、 組織で運用されるデザインシステムにするには
shunya078
1
160
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
9
41k
Staff Engineer / 20240827 Yuichiro Masui
shift_evolve
0
150
2024年版 運用者たちのLLM
nwiizo
3
290
20240906_JAWS_Yamanashi_#1_leap_beyond_the_AWS_all_certifications
tsumita
1
100
LLMに日本語テキストを学習させる意義
ksaito
13
3.4k
エンジニア向け会社紹介資料
caddi_eng
15
250k
スーパーマリオRPGのリメイク版の変更点からみるUX
nishiharatsubasa
1
110
X-Correlation Injections (or How to break server-side contexts)
fransrosen
0
360
React Aria で実現する次世代のアクセシビリティ
ryo_manba
3
290
ことばをそろえる / Bridging the Terminology Gap
amaotone
5
1k
リクルート新人研修2024 テキスト生成AI活用
recruitengineers
PRO
10
420
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
85
5.6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
28
2.2k
The Invisible Side of Design
smashingmag
295
50k
Build The Right Thing And Hit Your Dates
maggiecrowley
29
2.2k
How To Stay Up To Date on Web Technology
chriscoyier
785
250k
Why Our Code Smells
bkeepers
PRO
333
56k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
103
47k
Building Better People: How to give real-time feedback that sticks.
wjessup
359
18k
Typedesign – Prime Four
hannesfritz
38
2.3k
Scaling GitHub
holman
458
140k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
22
580
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