sql-injection-testing
SQLインジェクションセキュリティテストの実施
Webアプリケーションは、機密データを公開する可能性のあるSQLインジェクションの脅威に絶えず直面しています。このスキルは、認可されたセキュリティ専門家がデータベースのセキュリティ脆弱性を特定し修復するための体系的な脆弱性評価手法を提供します。
スキルZIPをダウンロード
Claudeでアップロード
設定 → 機能 → スキル → スキルをアップロードへ移動
オンにして利用開始
テストする
「sql-injection-testing」を使用しています。 テストペイロード:' OR '1'='1 をユーザー名フィールドに注入
期待される結果:
認証バイパス成功。クエリは、資格情報のチェックから常にtrueを返する同義語(tautology)に変換され、有効��資格情報なしでアクセスが許可されます。
「sql-injection-testing」を使用しています。 UNION SELECT NULL, table_name, NULL FROM information_schema.tables--
期待される結果:
脆弱性レポート:UNIONベースのSQLインジェクションが確認されました。攻撃者はユーザー、注文、支払いを含むすべてのデータベーステーブルを列挙できます。深刻度:重要。修復:パラメータ化クエリを実装してください。
セキュリティ監査
低リスクStatic analysis flagged 61 external_commands and 1 network pattern, but all are FALSE POSITIVES. The backticks detected are SQL code examples in documentation markdown, not shell execution. Network references are SQL payload examples (UTL_HTTP.REQUEST), not actual network code. This is educational security documentation for authorized penetration testing with proper legal guardrails.
低リスクの問題 (1)
リスク要因
⚙️ 外部コマンド (1)
🌐 ネットワークアクセス (1)
品質スコア
作れるもの
ペネトレーションテストエンゲージメント
クライアントのWebアプリケーションの認可された評価を実行するセキュリティコンサルタントは、このスキルを使用してSQLインジェクション脆弱性を体系的に特定し、その影響を実演できます。
セキュリティコードレビュー
脆弱性についてアプリケーションコードをレビューする開発チームは、これらの手法を使用して、攻撃者が不十分な入力検証をどのように悪用するかを理解し、適切な防御を実装できます。
セキュリティ教育とトレーニング
SQLインジェクション攻撃ベクトルと防御対策について学ぶセキュリティ専門家は、Webアプリケーションセキュリティの専門知識を構築するために、これらの文書化された手法を研究できます。
これらのプロンプトを試す
Webアプリケーションで潜在的なSQLインジェク��ョンポイントを特定するのを手伝ってください。ターゲットには/product.php?id=パラメータの製品ページがあります。脆弱性を検出するために最初に試すべきテストペイロードは何で、どのような応答を探すべきですか?
SQLインジェクション脆弱性が存在することを確認しました。ORDER BYを使用してカラム数を特定するプロセスをガイドし、その後、information_schemaからテーブル名を抽出するためのUNION SELECTクエリの構築を支援してください。
アプリケーションはエラーメッセージを表示せず、データベースコンテンツも表示しません。条件付き応答を使用してデータベース名を1文字ずつ抽出するためのブールベースのブラインドSQLインジェクションアプローチの設計を手伝ってください。
次のクエリを実行するログインフォームをテストしています:SELECT * FROM users WHERE username='[input]' AND password='[input]'。認証をバイパスできるペイロードを示し、それぞれが結果のクエリをどのように変換するかを説明してください。
ベストプラクティス
- テスト前に範囲とエンゲージメントルールを定義する書面による認可を常に取得する
- 実際のユーザーデータを抽出することなく脆弱性を実証する破壊的でないペイロードを使用する
- 包括的なレポート作成のためにすべてのテストケース、使用したペイロード、応答を文書化する
- 確立された緊急チャンネルを通じて重要な発見を直ちに報告する
- 抽出されたデータをデータ保護契約に従って取り扱う
回避
- 明示的な書面による認可なしにDROP、DELETE、またはTRUNCATEクエリを実行しない
- サービス拒否を引き起こす可能性のあるリソース集中型クエリを避ける
- 脆弱性が存在することを証明するために必要以上のデータを抽出しない
- 定義されたエンゲージメント範囲外のシステムをテストしない