Skip to Content
ウェブアプリケーションセキュリティ 第2版
book

ウェブアプリケーションセキュリティ 第2版

by Andrew Hoffman
March 2025
Intermediate to advanced
444 pages
6h 9m
Japanese
O'Reilly Media, Inc.
Audio summary available
Content preview from ウェブアプリケーションセキュリティ 第2版

第25章. セキュリティのためにコードをレビューする

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

コードレビューステージは、セキュリティ意識の高いコードの組織化においては、常にアーキテ クチャステージの後に行われなければならない。

今日、一部の技術系企業は、「速く動いて、物事を壊す」ことを信条としているが、そのような信条はしばしば悪用され、適切なセキュリティプロセスを無視する手法として使用されている。動きの速い企業であっても、コードを出荷する前にアプリケーションアーキテクチャをレビューすることが不可欠である。セキュリティの観点からは、機能アーキテクチャ全体を前もってレビューするのが理想的であるが、 不確実な条件付きでは実行不可能かもしれない。最低限、主要でよく知られた機能については、アーキテクトとレビューを行う。新機能が出現した場合は、開発前にセキュリティのアーキテクトとレ ビューの両方を行うべきである。

セキュリティギャップがないかどうかをコードレビューする適切な時期は、コードコミッ トの背後にあるアーキテクチャが適切にレビューされた後である。つまり、コードのレビューは、安全な開発のベストプラクティスに従っている組織化では、2 番目のステップであるべきである。

これには2つの利点がある。まず、最も明白な利点はセキュリティであるが、通常、開発チームの外部からコードレビューを行うレビュアーを追加することには、それなりのメリットもある。これは、開発者に公平な目を提供し、そうでなければ未知のバグやアーキテクチャの欠陥を発見する可能性がある。

このように、コードセキュリティレビューの段階は、アプリケーションの機能性とアプリケーションセキュリティの両方にとって不可欠である。コードセキュリティレビューは、機能レビューしか実施し ていない組織では、追加のステップとして実装すべきである。そうすることで、本番環境にリリースされるような影響度の高いセキュ リティバグの数を劇的に減らすことができる。

一般的に言って、コードセキュリティレビューは、 マージリクエスト (伝統的に「プルリクエスト」とも呼ばれ ているが、ほとんどの場合、あまり正確な用語ではない)で実施するのが最も理にかなってい る。全機能が開発され、接続を必要とするすべてのシステムが統合されているはずなので、コードセキュリ ティレビューをマージ時に実施することは理にかなっている。この時点で、コードの全範囲を一度にレビューすることができる。

コードセキュリティレビューを、コミットごと、あるいはペアプログラミング アプローチなど、よりきめ細かな方法で開発プロセスに関連付けることは可能であろう。いずれのメソッドにせよ、コードの全範囲をカバーしない時点からコードを見ることになるため、一貫した継続的な作業が必要になる。しかし、ミッションクリティカルなセキュリティ機能については、これは賢明なアプローチかもしれない。一人が機能に集中し、もう一人がセキュ リティに集中することで、マージリクエスト時のレビューでは不可能な、極めてセキュリ ティに配慮した機能を書くことができるかもしれない。

どのようなタイミングでコードのセキュリティホールをレビューするかは、その組織 の自由であり、既存のプロセスに適合していなければならない。しかし、セキュリティコードレビューを開発プロセスに組み込むには、前述のメソッドが最も現実的で効果的であろう。

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

ハイパーモダンPython ―信頼性の高いワークフローを構築するモダンテクニック

ハイパーモダンPython ―信頼性の高いワークフローを構築するモダンテクニック

Claudio Jolowicz, 嶋田 健志, 鈴木 駿
Kubernetesで実践するクラウドネイティブDevOps

Kubernetesで実践するクラウドネイティブDevOps

John Arundel, Justin Domingus, 須田 一輝, 渡邉 了介
流暢なReact

流暢なReact

Tejas Kumar

Publisher Resources

ISBN: 9798341627505