第一部: リコン
技術的な概要については、Webアプリケーションセキュリティの随所で発見することができるが、その代わりに、本書のこの部分を哲学的な概要から始めるのがベストだと考えた。
ウェブアプリケーションを効率的に悪用するためには、幅広いスキルが要求される。一方では、ハッカーはネットワークプロトコル、ソフトウェア開発テクニック、様々なタイプのアプリケーションで発見される一般的な脆弱性についての知識が必要である。しかしその一方で、ハッカーはターゲットとしているアプリケーションを理解する必要もある。この知識が深ければ深いほど、より良く、より応用が利くようになる。
ハッカーは、機能的な観点からアプリケーションの目的を理解すべきである。ユーザは誰か?アプリケーションはどのように収益を生み出すのか?ユーザはどのような目的で競合他社よりもそのアプリケーションを選ぶのか?競合他社は誰か?アプリケーションにはどのような機能が発見されるのか?
非技術的な観点からターゲットアプリケーションを深く理解しなければ、どのようなデータや関数が重要かを判断することは実際難しい。例えば、車の販売に使われるウェブ・アプリケーションは、販売する車を表すオブジェクト(価格、在庫など)のストレージをミッションクリティカルなデータと考えるかもしれない。しかし、クルマ好きが自分のクルマに施した改造を投稿して共有できる趣味のWebサイトでは、ユーザのプロフィールに記載された在庫よりも、ユーザアカウントの方が価値があると考えるかもしれない。
データだけでなく、機能性についても同じことが言える。多くのウェブアプリケーションは、一つの収入源に頼るのではなく、様々な方法で収益を生み出している。
あるメディア共有プラットフォームは、月額課金、広告配信、有料ダウンロードを提供している。企業にとって最も価値があるのはどれか?ユーザビリティの観点から、これらのマネタイズ関数の使い方はどのように異なるのか?それぞれのストリームにどれだけのユーザが収益に貢献しているか?
結局のところ、ウェブ・アプリケーションの偵察とは、データを収集し、ウェブ・アプリケーションの技術的な詳細と 機能的な詳細を組み合わせて、ウェブ・アプリケーションの目的と使用方法を完全に理解できるようなモデルを構築 することである。どちらか一方が欠けても、ハッカーは攻撃の的を適切に絞ることができない。したがって、哲学的に言えば、ウェブ・アプリケーション偵察とは、ターゲットとなるウェブ・アプリケーションをより深く理解することである。そして、この哲学的なモデルでは、情報が鍵であり、それが技術的なものであろうとなかろうと関係ない。
本書は技術書であるため、技術的な観点からウェブアプリケーションのコンポーネントを発見し、分析することに主眼を置く。しかし、機能分析の重要性やいくつかの情報整理テクニックについても議論する。
それ以上に、将来的にリコンファームの機会が訪れた際には、技術的なことではなく、自分自身で調査することをお勧めする。
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