「セキュアコーディング」に取り組んでもセキュアにならない本当の理由失敗しないセキュアコーディング【前編】

ソフトウェア開発において、ソースコードのセキュリティを確保することは、ソフトウェアのリスクを管理するための複雑なプロセスの一つに過ぎない。真の「セキュア」を実現するには、何をすべきなのか。

2024年03月01日 05時00分 公開
[Ed MoyleTechTarget]

 人が自然言語を理解して処理する過程には、ちょっとした落とし穴がある。言葉や言い回しの意味を思い込む、つまり話し手が言葉に込めた意味を、聞き手が全く違う意味で解釈する場合があることだ。

 こうした誤解が望ましくない結果をもたらすのは日常会話だけではない。サイバーセキュリティや保証、ガバナンスなど、リスクに影響する規則においても同様だ。そうした状況では、誤解がリスクを生み出す可能性がある。

 この逸話を持ち出したのは、社内外で使うソフトウェアを開発、保守する部署において、「セキュアコーディング」を実施するための方法に関する議論をよく耳にするためだ。企業の大半は、セキュアコーディングという言葉を文字通り「セキュリティを意識したコーディング」をすることだと誤解している。ソフトウェアのリスクにまつわる課題に対処することを「セキュアコーディングを実施する」と表現するのは自然なことだが、この表現自体は、目標とする状態の実現を困難にしているように思える。

 企業が「セキュアコーディングはなぜ正しいのか」を理解することには、明確かつ実用的な価値がある。意図が正しく伝われば、企業はアプリケーションやソフトウェアのリスクに取り組む理由を把握でき、解決手順が明確になる。セキュアコーディングの意図を正しく理解することを念頭において、安全で回復力のあるソフトウェアを開発するために、ソフトウェアのリスク削減における目標と要件を満たしながら、本楽の目的を実現する方法を解き明かしていこう。

実は誤解している「セキュアコーディング」

 最初に解き明かすのは、セキュアコーディングという言葉が意図する最終的な状態だ。私見だが、この言葉の意図には、幾つかの異なる目標が関連する。セキュアコーディングが目指す「セキュア」には、一般的に以下の2つの意味があり、どちらも重要だ。

  1. 機密性、完全性、可用性といったリスク削減策を実現するソフトウェアアーキテクチャや設計パターンを採用する
  2. 脆弱(ぜいじゃく)性や構成ミスのようなセキュリティホールを突く攻撃への回復力が高いソフトウェアを開発する

 ソフトウェアエンジニアリング分野の著名な研究者バリー・ベーム氏は、開発プロセスの早い段階で脆弱性を見つけて修正することの有用性について研究した。ソフトウェアにおけるセキュリティ設計上の問題や、そうした問題がどこに潜んでいるのかを突き止めるアプリケーション脅威モデリングのような手法も価値がある。どちらも当然重要だが、ソフトウェアのリスク削減について関心を向けるべき領域はそれらが全てではないことは落とし穴だと言える。具体的には、以下の領域にも同程度の関心を向けなければならない。

  • 成熟度
    • ソフトウェア開発プロセスの成熟度を高め、従業員が離職してもソフトウェアの回復力を維持し、結果に一貫性を持たせるようにする
  • 透明性
    • 開発したソフトウェアが利用するコンポーネント(プログラム部品)の出自を明らかにし、エンドユーザーにもその透明性を提供できるようにする
  • コンプライアンス
    • ソフトウェア開発に使用する各種コンポーネントの商用ライセンスやオープンソースのライセンスに準拠する
  • シンプルな設計
    • 簡単に理解、評価できる設計にする

 もちろんこれらは全てではなく、ソフトウェアのリスクに影響する考慮事項の、氷山の一角に過ぎない。ソフトウェアの設計、開発、テスト、提供、保守、サポート、サポート終了といった過程において、リスクに影響する要素は以下の通りさまざまだ。

  • 目的への適合性
  • 設計の厳密さ
  • サポート体制
  • テスト範囲
  • ソースコードの品質
  • 市場投入までの時間

 これらの事項がセキュリティの範囲外であることを考えれば、追求すべきは「セキュリティ」ではなく「リスクの低減」だと言える。セキュリティは重要かつ大きな要素だとしても、リスク低減の一部でしかない。セキュアコーディングにおける考慮事項をセキュリティのみだと捉えてしまうと、関係者が絞られ、責任範囲が狭まり、論点が変わる。一方、リスクに焦点を置くことで、ソフトウェア開発以外の領域にいる人を含む関係者全員が重要な役割を果たせるようになる。


 次回は、セキュアコーディングの「コーディング」とは何かを考える。

Computer Weekly発 世界に学ぶIT導入・活用術

米国TechTargetが運営する英国Computer Weeklyの豊富な記事の中から、海外企業のIT製品導入事例や業種別のIT活用トレンドを厳選してお届けします。

ITmedia マーケティング新着記事

news061.png

高齢男性はレジ待ちが苦手、女性は待たないためにアプリを活用――アイリッジ調査
実店舗を持つ企業が「アプリでどのようなユーザー体験を提供すべきか」を考えるヒントが...

news193.jpg

IASがブランドセーフティーの計測を拡張 誤報に関するレポートを追加
IASは、ブランドセーフティーと適合性の計測ソリューションを拡張し、誤報とともに広告が...

news047.png

【Googleが公式見解を発表】中古ドメインを絶対に使ってはいけない理由とは?
Googleが中古ドメインの不正利用を禁止を公式に発表しました。その理由や今後の対応につ...