01 / SUMMARY
公開前に決めたいこと
題材は、企業ごとに見積を共有する架空のWebサービス「みつもりノート」です。組織をまたいで情報が見える問題を1件取り上げます。
重大度:高(架空の評価)
見積の閲覧範囲を直してから、公開を判断する
他社の価格や取引条件が見えると、取引先との信頼や商談に影響します。単にログインを必須にするだけでなく、利用者が所属する組織と見積の所属が一致するかを確かめる必要があります。
判断例:担当者を決めて権限確認を修正し、他社の見積が見えないことと、自社の見積は引き続き使えることを再確認します。
この1件は報告書の読み方を示すためのものです。実際の診断の件数・重大度・成果を表すものではありません。
02 / SCOPE
何を確認する想定か
- 対象
- 架空の見積閲覧機能。組織A・組織Bの一般担当者と未ログイン状態
- 材料
- 説明用のソースコード設定、ローカルのテスト環境、合成した見積データを想定
- 確認するルール
- 一般担当者は、自分の組織に属する見積だけを閲覧できる
- 対象外
- 決済、メール送信、クラウド全体、負荷試験、他の画面・API。本番環境への試験は行わない想定
AI RELEASE CHECKの開始には、ソースコードと安全に動作確認できる環境が必要です。この架空例は、実際の対象・確認項目・契約範囲を決めるものではありません。
03 / FINDING — SAMPLE-01
別の組織の見積を開けてしまう
ログインできることと、その見積を見る権限があることは別です。この例では、組織Aの担当者が組織Bの見積を開ける設定を想定しています。
重大度を「高」とした理由
一般担当者の権限で、別組織の非公開情報を読める想定だからです。漏えいの有無・影響人数・損失額を実測した評価ではありません。実案件では扱う情報、操作の条件、影響範囲を確認して優先度を判断します。
合成した証拠 / 実ログではありません
期待する動作と、改善前の動作
| 利用者 | 対象 | 期待 | 改善前 |
|---|---|---|---|
| 組織Aの担当者 | 組織Aの見積 DEMO-A | 閲覧できる | 閲覧できる |
| 組織Aの担当者 | 組織Bの見積 DEMO-B | 閲覧できない | 閲覧できてしまう |
| 未ログイン | 組織Aの見積 DEMO-A | 閲覧できない | 閲覧できない |
コード上の根拠(設定例):ログイン済みかだけを確認し、見積にひもづく組織と利用者の所属を照合していない、という欠落を想定しています。
事業への影響
見積には価格や条件など、他社に見せるべきでない情報が含まれます。閲覧できる組織の境界が崩れると、顧客への説明や調査が必要になる可能性があります。この例では、実際の漏えいや被害が発生したとは扱いません。
04 / IMPROVEMENT & RECHECK
改善例と、直ったことの確かめ方
サーバー側で所属を照合する
見積を返す前に、認証済み利用者の組織と見積の組織が一致するかを確認します。画面でボタンを隠すだけではなく、情報を返す処理で制限します。
許可する場合・拒否する場合を両方残す
「別組織は拒否」だけでなく、「自組織は閲覧できる」「未ログインは拒否」を自動テストに追加する例です。
同じ条件で再確認する
改善後の架空結果では、組織AからDEMO-Bの閲覧は拒否され、自組織のDEMO-Aは閲覧できます。未ログインからの閲覧も拒否されます。
再確認結果:想定した3条件では改善を確認(架空)
他の一覧・出力機能への同様の問題の有無は未確認です。「この条件で改善」と「サービス全体が安全」を分けて記録します。
ここでは読み方の説明のため改善・再確認まで例示しています。実際の修正・再診断の範囲は、サービスの各メニューと個別の合意によります。
05 / LIMITS & REFERENCES
このレポートから言えないこと
- 架空のため、実在アプリの安全性や品質を評価していません。
- 示した確認条件以外の機能・時点・設定の安全性は判断できません。
- 指摘がないことは、脆弱性が存在しないことや、将来も安全であることの保証ではありません。
参考基準との対応付け
OWASP WSTG v4.2 / WSTG-ATHZ-04:Testing for Insecure Direct Object References
利用者が参照する対象に対して閲覧権限を確認する、という観点でSAMPLE-01に対応付けています。参考にする確認観点の説明であり、OWASPによる認証・適合証明・全項目の実施を示しません。
06 / NEXT STEP
自社のサービスでは、何を確認するか
公開時期、重要な業務、扱う情報によって確認すべき範囲は変わります。資料ではサービスの進め方を、サービス詳細では開始条件と各メニューをご確認いただけます。