コース目次 / 第4章

まとめ — 当たり前を、疑う目

業務ロジックの穴と競合状態を畳みます。「クライアントは事実を持ち込まない」「確認と実行の隙間を無くす」を持って、脆弱性診断の歩き方のコースへ進みます。

第4章 / 全5章目安 約3分この章のゴール: 業務ロジックと競合状態の要点を畳み、次のコースへの道筋を持つ

価格をクライアントから信じてしまう業務ロジックの穴と、確認と実行の隙間を突く競合状態。どちらも、スキャナには見つけられない、そのアプリ固有の「当たり前」の壊れ方でした。

このコース・早見表

穴 崩れる当たり前 直し
価格・数量の改ざん 「クライアントが送る値は正しい」 事実(価格)はサーバのカタログから。数量は範囲を検証
競合状態(TOCTOU) 「確認したときの状態は、実行時も変わらない」 確認と実行の間に隙間(await)を作らない/DBの原子的更新

2つに共通する視点——「このアプリは、何を“当たり前”だと思い込んで書かれているか?」を疑うこと。sec-authz の「この資源は本人のものか、確かめているか」と同じ根で、そのアプリの仕様を理解した人にしか見えない領域です。ツールに頼れないぶん、見つけられる人の価値は高い。

sec-authz との、つながり

sec-authz(認可)・sec-serverside(サーバの内側)・このコース(業務ロジック)は、いずれも「入力がコードになる」という機械的なパターンではない、シニアな領域でした。共通する直しの姿勢も同じです——事実はサーバに置き、クライアントの言い分を鵜呑みにしない。確認は、実行と切り離さない。

次の道 — 脆弱性診断の歩き方

ここまでで、道3の Web 診断(T3)の主要トピックが出そろいました。次は「脆弱性診断の歩き方 — 報告書まで」です。個々の穴の知識を、診断という一連の作業——スコープの確認・偵察・発見・再現・影響評価・報告書・再検証——に組み立てます。これまで自分で立ててきた自作やられの数々が、そのまま実地の題材になります。

このコースの実習相手も、すべて自分の 127.0.0.1 の自作ショップでした(法と倫理)。業務ロジックの穴はとくに、実在サービスで「これ、本当に大丈夫かな」と気になりやすい領域です。気になったら——攻撃で確かめず、責任ある開示の作法を思い出してください。

お疲れさまでした。あなたはもう、ツールが見えない場所にも、目を向けられます。

こうなっていればOK

この章で卒業です。

この章はまだ完了していません。