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
360
トレーニングコース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 EUROPE イベントレポート
lfj
PRO
0
17
OpenSSF 10分クッキング ー 10分でOpenSSFを解説
lfj
PRO
0
25
Open Source Summit EU 参加レポート
lfj
PRO
0
22
OSS Security Meetup Tokyo Oct 3, 2024
lfj
PRO
0
26
SLSA概要紹介 Supply-chain Levels for Software Artifacts
lfj
PRO
0
23
SOSS Community Day North America 2024 セッション報告
lfj
PRO
0
220
SOSS Community Day Report
lfj
PRO
0
150
OpenSSF Overview - Improve the Security of Open Source Software for All
lfj
PRO
0
180
Secure OSS Community Day North America イベントレポート
lfj
PRO
0
170
Other Decks in Technology
See All in Technology
Graph Database と Generative AI の素敵な関係
oracle4engineer
PRO
14
2.4k
LeSSはスクラムではない!?LeSSにおけるスクラムマスターの振る舞い方とは / Scrum Master Behavior in LeSS
toma_sm
0
210
組織デバイスのための効率的なアプリケーション更新戦略
kenchan0130
0
350
Amazon ECS & AWS Fargate 今昔物語 / past and present stories of Amazon ECS and AWS Fargate
iselegant
15
2.8k
Azure App Service on Linux の Sidecar に Phi-3 を配置してインテリジェントなアプリケーションを作ってみよう/jazug-anniv14
thara0402
0
540
Grafana エコシステムの活用事例 on ABEMA
tetsuya28
4
530
AWS Lambdaで実現するスケーラブルで低コストなWebサービス構築/YAPC::Hakodate2024
fujiwara3
7
3.7k
パートナー企業のテクニカルサポートエンジニアとして気になる、より良い AWS サポートの利活用について
kazzpapa3
0
100
From LibreOffice to « La Suite » : providing civil servants with Free Software sovereign tools
bluehats
0
100
From naive to advanced RAG: the complete guide
glaforge
0
280
TypeScript x Raycast x AIで変える開発者体験
nagauta
1
290
Perlで始めるeBPF: 自作Loaderの作り方 / Getting started with eBPF in Perl_How to create your own Loader
takehaya
1
1k
Featured
See All Featured
Infographics Made Easy
chrislema
239
18k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
664
120k
The World Runs on Bad Software
bkeepers
PRO
65
11k
KATA
mclloyd
28
13k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
23k
Scaling GitHub
holman
458
140k
The Cult of Friendly URLs
andyhume
77
6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9k
Faster Mobile Websites
deanohume
304
30k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
28
7.5k
Mobile First: as difficult as doing things right
swwweet
222
8.8k
Statistics for Hackers
jakevdp
796
220k
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