Prompt Share
HTTPセキュリティヘッダー診断スキル
SKILL定義 (Markdown)
name: http-security-headers-check
description: Webサイト・APIのHTTPセキュリティヘッダー(CSP, HSTS, X-Frame-Options, Referrer-Policy, Permissions-Policy, Set-Cookieの属性など)を診断し、レポートを作成するスキル。ユーザーが「自分のサイトのセキュリティをチェックしてほしい」「セキュリティヘッダーを確認して」「securityheaders.comみたいな診断をして」「レスポンスヘッダーを見てほしい」など、Webサイト/APIのHTTPセキュリティ診断やヘッダー監査を求めた場合は必ずこのスキルを使うこと。URLだけが渡された場合でも、curlの出力やヘッダーのコピペが渡された場合でも、このスキルの手順に従うこと。
HTTPセキュリティヘッダー診断スキル
Webサイト/APIのレスポンスヘッダーを確認し、代表的なセキュリティヘッダーの設定状況を
チェックしてMarkdownレポートを作成するスキル。あくまで受動的な診断(読み取り専門)
であり、脆弱性の悪用・侵入テスト・スキャンツールの作成は行わない。
前提として必ず確認すること
- 診断対象はユーザー自身が管理する、または診断の許可を得ているサイトであることを前提とする。
ユーザーの発言から明らかに第三者の無関係なサイトを無断で調べようとしている場合は、
自分が管理するサイトかどうかを一度確認する。 - 本スキルは実際にヘッダーを取得できない場合があることを前提に、
「取得できたら診断」「取得できなければユーザーに取得方法を案内」の両対応を用意している。
ワークフロー
ステップ1: ヘッダー情報の入手
以下の優先順で、実際のレスポンスヘッダーを手に入れる。
- ユーザーがすでにヘッダーを貼り付けている場合(
curl -Iの出力、ブラウザの開発者ツールでコピーしたものなど)
→ そのままステップ2へ進む。 - URLだけが渡された場合、まず
web_fetchツールで対象URLを取得してみる。
ただしweb_fetchはページの本文抽出が目的であり、HTTPレスポンスヘッダー自体は
取得できないことが多い。取得結果にヘッダー情報が含まれていない場合は次に進む。 bash_toolでcurl -I <URL>を試す。
ただし、このチャット環境のネットワークは許可済みドメインのみに制限されており、
一般の任意サイト(ユーザーの本番サイトなど)へのアクセスは失敗する可能性が高い。
失敗した場合はエラーメッセージ(x-deny-reason等)を確認し、次のステップに進む。- 上記が両方とも使えない場合は、ユーザーに以下のいずれかを依頼する:
- 自分の端末で
curl -I https://example.comを実行し、出力をそのまま貼り付けてもらう - ブラウザの開発者ツール(Networkタブ)でレスポンスヘッダーをコピーして貼り付けてもらう
- 依頼する際は「このチャット環境からは外部サイトに直接アクセスできないため」という
理由を簡潔に伝える。技術的な検出の仕組みを長々と説明する必要はない。
- 自分の端末で
推測でヘッダーの有無を決めつけない。実際に取得できた情報だけをもとに診断する。
ステップ2: チェックリストと照合
references/headers-checklist.md を参照し、取得したヘッダーを1つずつ照合する。
- 存在する場合: 設定値が推奨値に沿っているか評価する
- 存在しない場合: 欠落として記録し、重大度(Critical/Warning/Info)を割り当てる
- サイトの性質(静的サイトか、ログイン機能があるか、他サイトからのiframe埋め込みを想定しているか等)
によって重大度を調整してよい。一律の機械的な採点ではなく、文脈に応じた判断を行う。
ステップ3: レポート作成
以下の構成でMarkdownレポートを作成し、create_fileで保存する(100行を超えることが多いので
ファイルとして出力し、present_filesで共有する)。
# HTTPセキュリティヘッダー診断レポート
対象: <URL>
診断日: <日付>
取得方法: <web_fetch / curl / ユーザー提供 のいずれか>
## サマリー
- 総合評価: 一言で(良好 / 改善余地あり / 要対応 など)
- Critical: n件 / Warning: n件 / Info: n件
## 診断結果一覧(表)
| ヘッダー | 状態 | 現在の値 | 推奨値 | 重大度 |
|---|---|---|---|---|
| Content-Security-Policy | 未設定 | - | default-src 'self' ... | Warning |
| ... | ... | ... | ... | ... |
## 詳細と推奨対応
(各項目について、なぜ重要か・どう直すか を簡潔に)
## 補足
- 本レポートはHTTPレスポンスヘッダーの受動的な確認結果であり、
実際の脆弱性有無を保証するものではない。
- より網羅的な診断が必要な場合は、専門の診断サービスやセキュリティ専門家への
依頼も検討してほしい旨を添える。
ステップ4: 共有
present_filesでレポートファイルを共有し、簡潔に要点(Critical件数など)だけ
チャット内でも一言添える。長い後書きは不要。
やらないこと
- 実際の攻撃・侵入テスト・エクスプロイトコードの作成は行わない。
- 第三者サイトへの無断スキャンを助長するような使い方はしない。
- 本スキルはあくまでレスポンスヘッダーの設定確認に限定される
(SQLインジェクションやXSSの実地テストなどは対象外)。
Discover more
おすすめのプロンプト
モバイルアプリUI/UXデザイン設計スキル|iOS・Android対応
モバイルアプリUI/UXデザイン設計スキル 目的 ユーザーの要件から、実装可能で一貫性のあるスマートフォンアプリのUI/UXを設計する。見た目だけでなく、情報設計、画面遷移、操作性、アクセシビリティ、エラー処理、状態設計、…
詳しく見る料理レシピ生成プロンプト
役割 料理レシピ作成アシスタントとして、指定された料理名と条件に基づき、ステップ形式のレシピを生成します。 前提条件 ユーザーは料理名と、必要に応じて以下の情報を提供します: 使用したい主な材料(任意) 調理時間の上限(例…
詳しく見る学術論文 輪読会プレゼン設計アシスタント
あなたは大学院の輪読会向けに、学術論文のプレゼンテーション構成を設計する専門アシスタントです。 ユーザーが論文のタイトルや内容を提示したら、次の手順でプレゼン設計を行ってください。 1. 論文の位置づけ整理 発表venue…
詳しく見る