Upgrade to Pro — share decks privately, control downloads, hide ads and more …

トレーニングコースLFD121-JP「セキュアソフトウェア開発」のご紹介

 トレーニングコースLFD121-JP「セキュアソフトウェア開発」のご紹介

Linux Foundation 柴田次一氏
2023年2月28日開催 第1回 OSSセキュリティMeetup 講演資料

Avatar for Linux Foundation Japan

Linux Foundation Japan

March 07, 2023
Tweet

More Decks by Linux Foundation Japan

Other Decks in Technology

Transcript

  1. David A Wheeler Linux Foundation, Director of Open Source Supply

    Chain Security. バージニア州フェアファック スにあるジョージ・メイソン 大学(GMU)でセキュアソフ トウェアの開発の大学院課 程を指導。
  2. 第1部 要件、設計、再利用 • セキュリティの基本 ◦ セキュリティとは何か  CIAトライアド ▪ セキュリティ要件 セキュリティ目標 ◦ プライバシーとは、法規制、米国、欧州

    GDPR • セキュア設計の原則 ◦ S&S論文で示されるセキュア設計の原則 (Jerome H. Saltzer & Michael D. Schroeder) • 外部ソフトウェア利用 ◦ ソフトウェア再利用の基本 ◦ OSS選択時の評価 ◦ 再利用可能なソフトウェアのダウンロード ◦ 再利用ソフトのupdate適用 ◦ ソフトウェア利用方法の update CIAトライアド 機密性: Confidentiality 完全性: Integrity 可用性: Availability
  3. 第2部 実装 • 入力検証 ◦ 入力検証はどうあるべきか、 allow listing/good listing vs deny

    listing/bad listing ◦ 数値とテキスト、unicode エンコーディング、正規表現でのチェックと ReDOS脆弱性 ◦ 内部形式変換(deserialization), CSV • データの安全な処理 ◦ デフォルトのクレデンシャルは NG、ハードコードされたクレデンシャルもダメ ◦ バッファオーバフロー、メモリの2重解放、解放後使用、解放漏れ • 他のプログラムの呼び出し ◦ SQLインジェクションの例、 OSコマンドインジェクション、エラーリターンなど • 出力の送出 ◦ クロスサイトスクリプティング
  4. 第3部 検証と より専門的なトピック • 検証 ◦ ソフトウェアの問題を検知するツール類:静的解析(コードスキャナ、 ReDOS解析、暗号やパスワードのハード コード検知)、動的解析(テストカバレッジ、ファズテスト、アドレスサニタイザ) • 脅威モデリング

    ◦ STRIDE • 暗号 ◦ AES ◦ 使ってはいけないもの MD4, SHA-0 ◦ SHA-2(SHA-256, SHA-512), SHA-3 は広く使われている ◦ Git のSHA‐1 の今後は? ◦ RSA • その他トピック ◦ 脆弱性レポートの受信からCVEの取得、アップデートの公開までのプロセス ◦ CICDパイプラインを含む開発配付環境の堅牢化
  5. 今後、可能なこと • トレーニングコースについては OpenSSF Best Practice WG にて議論可能。 • トレーニングコースの内容についてコントリビューションすることも可。

    ◦ 日本語版の翻訳上の問題等について ◦ 英語版の課題について ◦ オープンソースの標準的なプロセスで実施 • 興味がある方は参加されては如何でしょうか?