ソフトウェア開発において、ソースコードのセキュリティを確保することは、ソフトウェアのリスクを管理するための複雑なプロセスの一つに過ぎない。真の「セキュア」を実現するには、何をすべきなのか。
人が自然言語を理解して処理する過程には、ちょっとした落とし穴がある。言葉や言い回しの意味を思い込む、つまり話し手が言葉に込めた意味を、聞き手が全く違う意味で解釈する場合があることだ。
こうした誤解が望ましくない結果をもたらすのは日常会話だけではない。サイバーセキュリティや保証、ガバナンスなど、リスクに影響する規則においても同様だ。そうした状況では、誤解がリスクを生み出す可能性がある。
この逸話を持ち出したのは、社内外で使うソフトウェアを開発、保守する部署において、「セキュアコーディング」を実施するための方法に関する議論をよく耳にするためだ。企業の大半は、セキュアコーディングという言葉を文字通り「セキュリティを意識したコーディング」をすることだと誤解している。ソフトウェアのリスクにまつわる課題に対処することを「セキュアコーディングを実施する」と表現するのは自然なことだが、この表現自体は、目標とする状態の実現を困難にしているように思える。
企業が「セキュアコーディングはなぜ正しいのか」を理解することには、明確かつ実用的な価値がある。意図が正しく伝われば、企業はアプリケーションやソフトウェアのリスクに取り組む理由を把握でき、解決手順が明確になる。セキュアコーディングの意図を正しく理解することを念頭において、安全で回復力のあるソフトウェアを開発するために、ソフトウェアのリスク削減における目標と要件を満たしながら、本楽の目的を実現する方法を解き明かしていこう。
最初に解き明かすのは、セキュアコーディングという言葉が意図する最終的な状態だ。私見だが、この言葉の意図には、幾つかの異なる目標が関連する。セキュアコーディングが目指す「セキュア」には、一般的に以下の2つの意味があり、どちらも重要だ。
ソフトウェアエンジニアリング分野の著名な研究者バリー・ベーム氏は、開発プロセスの早い段階で脆弱性を見つけて修正することの有用性について研究した。ソフトウェアにおけるセキュリティ設計上の問題や、そうした問題がどこに潜んでいるのかを突き止めるアプリケーション脅威モデリングのような手法も価値がある。どちらも当然重要だが、ソフトウェアのリスク削減について関心を向けるべき領域はそれらが全てではないことは落とし穴だと言える。具体的には、以下の領域にも同程度の関心を向けなければならない。
もちろんこれらは全てではなく、ソフトウェアのリスクに影響する考慮事項の、氷山の一角に過ぎない。ソフトウェアの設計、開発、テスト、提供、保守、サポート、サポート終了といった過程において、リスクに影響する要素は以下の通りさまざまだ。
これらの事項がセキュリティの範囲外であることを考えれば、追求すべきは「セキュリティ」ではなく「リスクの低減」だと言える。セキュリティは重要かつ大きな要素だとしても、リスク低減の一部でしかない。セキュアコーディングにおける考慮事項をセキュリティのみだと捉えてしまうと、関係者が絞られ、責任範囲が狭まり、論点が変わる。一方、リスクに焦点を置くことで、ソフトウェア開発以外の領域にいる人を含む関係者全員が重要な役割を果たせるようになる。
次回は、セキュアコーディングの「コーディング」とは何かを考える。
米国TechTargetが運営する英国Computer Weeklyの豊富な記事の中から、海外企業のIT製品導入事例や業種別のIT活用トレンドを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.
ビジネスに生成AIを利用するのが当たり前になりつつある中、ローコード開発への活用を模索している組織も少なくない。開発者不足の解消や開発コストの削減など、さまざまな問題を解消するために、生成AIをどう活用すればよいのか。
システム開発を任されても、「何から始めたらよいのか分からない」という担当者は多いだろう。そこで本資料では、システム開発の流れや専門用語といった基礎知識を分かりやすく解説するとともに、システム開発の4つの手法を紹介する。
システムの不具合によるさまざまなリスクを回避するには網羅的なテストを行う必要があるが、自社で行うのは難しい。そこで活用したいのが外部のテスト専門会社だ。本資料ではテスト専門会社を活用するメリットや具体的な流れを解説する。
レガシーシステムからの脱却が叫ばれる中、「ERP×ノーコードツール」のアプローチで基幹システムの刷新に取り組む企業が増加している。その推進に当たっては、「Fit to Company Standard」の概念を頭に入れておくことが必要になる。
迅速なサービスの提供を実現する手段として、「ローコード開発×内製化」が注目されている。エンジニア不足の中でも、非IT部門が開発を担える点がその理由の1つだが、全てが順調に進むわけではない。失敗事例から得た2つの教訓を紹介する。
「テレワークでネットが遅い」の帯域幅じゃない“真犯人”はこれだ
ネットワークの問題は「帯域幅を増やせば解決する」と考えてはいないだろうか。こうした誤解をしているIT担当者は珍しくない。ネットワークを快適に利用するために、持つべき視点とは。
「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年5月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。
「ECプラットフォーム」売れ筋TOP10(2025年5月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。
「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年5月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...