カットオーバー直前の監査は逆効果
ソフトウェアのセキュリティ対策は開発プロセス上で行うべし
ソフトウェア開発の各工程でセキュリティの検証および修正作業を徹底すれば、解析の価値と効果を高められる。
セキュリティのためのコード監査には、1つ大きな問題がある。この監査によって解決される問題よりも、引き起こされる問題の方が多くなりがちなことだ。
1回の監査調査ですべての問題を洗い出そうとすると、開発者を途方に暮れさせることになる。開発チームに、既知の問題がずらりと並んだリストを提供するだけで、実際の改善にはほとんどつながらないという結果になりやすい。
実際、ソフトウェア開発ライフサイクル(SDLC)の終わり近くに監査ツールを使い、潜在的な問題が大量に検出されると、プロジェクトマネジャーは、そのコードを修正するためにプロジェクトを遅らせるか、コードをそのままにした状態で市場にリリースするかを判断しなければならないという苦しい立場に立たされる。
しかも、既知の脆弱性がある製品を市場にリリースすると、企業は非常に深刻なリスクにさらされる。脆弱性が1つでも悪用され、その脆弱性が以前に検出されていたにもかかわらず修正されていなかったという確かな証拠がある場合、企業は多大な金銭的代償を払うことになるだろう。管理の在り方を厳しく糾弾されることは言うまでもない。
集中管理型のポリシーベースのセキュリティアプローチを取れば、セキュリティ脆弱性を防ぐことができる。なぜなら、開発プロセスの最終段階でセキュリティの確保を図るのではなく、企業が求めるセキュリティ要件に沿ってコードが作成されていくからだ。ポリシー管理、ワークフロー管理、ワークフロー最適化を利用して、開発プロセスの中で、自動化されたセキュリティ対策を進めることで、開発チームはプロジェクトの進ちょくやチームの生産性に支障をきたすことなく、コードのセキュリティを大幅に向上させることができる。
例えば、静的解析は開発リソースの消耗を招く傾向があり、静的解析をSDLCの後半に監査として行うと、この傾向に拍車が掛かるばかりだ。静的解析を行うタイミングがSDLCの中で後の方になるほど、検出された問題に関連するコードを開発担当者が覚えていて、問題を素早く理解して修正できる可能性は低くなる。開発プロセスの中でのセキュリティ対策として「各開発工程の作業とできるだけ近いタイミングでセキュリティの検証および修正作業を行う」ことを徹底すれば、解析の価値と効果を高められる。
こうしたセキュリティ対策の一環として静的解析を行うことで、以下の2つの明確なメリットが期待できる。
開発者がより良いプログラミング習慣を取り入れるようになる
潜在的なセキュリティ問題を修正するための作業が、開発者がコードで実現しようとしていたこととの関連においてより良く理解される。このため、開発者が自分の失敗から学び、最終的に習慣として安全なコードを作成するようになる可能性が高い。
開発者が問題をより迅速かつ容易に修正できる
開発者は、問題が報告されたときにコードをまだ新鮮に記憶していれば、そのコードについて、「どのような動作を意図していたか」「記述の仕方はどのような理由で選んだか」「セキュリティ要件を満たすように変更を加える場合、どのような影響を考慮しなければならないか」などを思い出そうとして時間を浪費せずに済む。当然のことながら、同じ問題を何週間も何カ月も後になって知ると、同じ結果に到達するのにはるかに多くの労力が必要になる。
開発プロセスの中でのセキュリティ対策の要となるのが「ポリシー管理」だ。ポリシーに関する企業の目的の整合性を損なうことなく、個別プロジェクトごとに簡単にポリシーを構成することや、個別プロジェクトのポリシーと全社的ポリシーの両方を簡単に展開/更新すること、迅速な問題調査と報告のためにそれらの適用を自動化することが可能でなければならない。
一連のポリシーを注意深く定義し、実装すれば、開発者の持つ関連するセキュリティIQの向上につながるナレッジベースが構築される。
策定したポリシーを適用する上では、「ワークフロー管理」が必要になる。ワークフロー管理では、開発生産性を高め、持続可能なプロセスの基盤となるワークフローの定義、自動化、監視が行われる。
また、品質ポリシーに関する作業は、静的解析プロセスを持続可能でスケーラブルなものにし、チームの既存ワークフローの不可欠な部分としてうまく組み込めるように最適化しなければならない。自動化、反復性、一貫性が実現されないと、企業が展開しようとする品質への取り組みは効果が落ちてしまう。
ワークフローを最適化する方法の1つは、「セキュリティのための静的解析を、メトリクス分析やピアコードレビューなどほかの分析とともに行う」ことだ。そうすれば、より厄介な、あるいはより複雑なシナリオにまず重点的に取り組ませることで、開発者の時間をより有効に活用できる。
例えば、コードの特定部分が高い循環的複雑度を持ち、深刻度の高いセキュリティ問題も抱えていることが分かれば、そうした大きく複雑な問題の対策に開発者を動員することが先決となるだろう。実際、これは、ピアコードレビューで議論されるべき事項に集中的に対処するのにコード解析が役立つことを示す格好の例だ。
ワークフローの最適化方法には、ほかにも次のようなものがある。
- 報告された各問題への対処を、問題個所を担当した開発者に直接任せるとともに、ポリシーに規定された優先順位に応じて問題の優先順位を設定する:
これにより、重大な問題への対処がタイムリーに行われる - 集中型の構成管理を行う:
これにより、ルールセットが一貫して適用され、優先事項やプロセスの変化に合わせて簡単に更新できる - 自動リファクタリングをなるべく使用する:
これは、チームができるだけ早くルール違反を正すのに役立つ
本稿筆者のウェイン・アリオラ氏はParasoftの戦略担当副社長として、事業開発チームとSOA/Webソリューションチームを統括している。ハイテクおよびソフトウェア開発業界の戦略コンサルティングを15年経験している。Parasoftで働く前はFasturnで事業開発担当シニアディレクター、PricewaterhouseCoopersで主席コンサルタントを務め、後者では戦略改革業務のリーダーとして認められていた。カリフォルニア大学サンタバーバラ校でBA、インディアナ大学でMBAを取得。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
新着ホワイトペーパー PR
-
製品資料
[o9ソリューションズ・ジャパン株式会社] 「改正物流効率化法対策」徹底解説 総物流費を抑制するサプライチェーン戦略 -
製品資料
[o9ソリューションズ・ジャパン株式会社] 「サプライチェーン最適化」実践ガイド:効果的な意思決定を実現する秘訣とは? -
製品資料
[株式会社リンプレス] 非デジタル/IT人材を「自走するDX推進者」に変えるための育成ロードマップ -
市場調査・トレンド
[ワンアイルコンサルティング株式会社] AI時代の組織設計:「判断と責任」を人に残すための2つの原則とは? -
技術文書・技術解説
[ワンアイルコンサルティング株式会社] システムの保守がモダン化を阻む? 「変えない判断」から脱却する方法とは
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「完璧な設計」なのに3000万円溶けた AWSの失敗事例から学ぶ3つの教訓
-
2
パナソニックが国内製造26拠点のERPを「SAP S/4HANA」に統一 アドオン7割削減
-
3
「AIバブル」は崩壊するのか? 熱狂の後に来る“尻拭い”と4つの防衛策
-
4
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
5
守るべきは「開発者のフロー状態」 AIによる生産性改善の6施策
-
6
脱VMwareの前提が崩れる BroadcomのVDDK公開停止で確認すべき点
-
7
「データストレージの活用方法」に関するアンケート
-
8
全社標準「Copilot」にダメ出し? 現場の8割が不満を抱く“致命的な欠点”
-
9
「企業内サーバ環境の利用実態」に関するアンケート
-
10
100億円の「Linux更新」を回避 みずほ銀行が選んだ“おきて破り”のRHEL延命策
ホワイトペーパーランキング PR
-
1
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
2
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
3
生成AIで文書活用を進めるには? 効率化と安全性をどう両立する
-
4
Windows PCとMacの選択制で生産性向上 LINEヤフーが実践する運用管理方法とは
-
5
DX/AI投資の壁を突破、現代の最高財務責任者が直面する課題と克服のヒント
-
6
「Google Workspace」活用事例34選、先進の生成AIによる組織変革の全貌
-
7
「人員を増やす」という選択肢はない 情シスが負の連鎖から抜け出すには?
-
8
Linuxのスキルを証明する“激推し”の認定資格はこれだ
-
9
「問題が深刻化しやすいプロジェクト管理」から脱却する方法とは?
-
10
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー