外から来る値の扱いを点検させるプロンプトです。 公開前のアプリや、フォームを作ったあとに。自作アプリで一番危ないのは「自分は変な値を入れない」という前提です。外部入力を全部列挙させ、信用している箇所を炙り出します。攻撃コードは書かせません。
プロンプト
0 回コピー
以下のコードについて、外から来る値の扱いを点検してください。 # 出力形式 ## 1. 外から来る値の一覧 | どこから来るか(フォーム/URL/ヘッダ/ファイル/外部API/DB) | 変数 | この値を信用しているか | |---|---|---| ## 2. 信用してしまっている箇所 - [箇所] / どんな値が来ると困るか(種類の説明。実際の攻撃文字列は書かない) ## 3. 検証が要る観点 - 型・長さ・文字種・範囲・必須/任意 - 検証をどこでやるべきか(画面側だけでは不十分な理由も含めて) ## 4. 権限の確認が抜けている箇所 - [箇所] / 「ログインしている」だけで「その人のものか」を確認していない箇所 ## 5. エラー時に出しすぎている情報 - [箇所] / 外に見せてよい形 # 制約 - 攻撃の実例となる文字列やコードを書かない。危険な入力の「種類」を日本語で説明する。 - 修正コードを書かない。指摘まで。 - 「サニタイズしましょう」で終わらせない。どの値を、どこで、何に対して検証するかを書く。 - コードから読み取れない部分(フレームワーク側で処理されている可能性)は、断定せず確認事項として書く。 # 言語・フレームワーク (例:Next.js / Django) # コード (ここに貼る)