SQLインジェクション
入力値にSQL文を混入させ、データベースを不正操作する攻撃。
概要
SQLインジェクション(SQLi)は、Webアプリケーションの入力フォームやURLパラメータに悪意あるSQL文を混入させ、本来意図しないデータベース操作を実行させる攻撃です。OWASP Top 10で長年上位に位置する古典的かつ依然として深刻な脆弱性です。
典型的なペイロードとして `' OR '1'='1` `UNION SELECT username, password FROM users--` 等があり、成功すると全ユーザー情報の漏洩、認証バイパス、テーブル削除、最悪の場合はOSコマンド実行まで発展します。WordPress等のCMSでも、プラグインの実装ミスにより脆弱性が頻発しています。
根本対策はアプリケーション側でのプレースホルダ(プリペアドステートメント)の徹底使用と、入力値の適切なエスケープです。運用面ではWAFによるパターンマッチング検知、データベース権限の最小化、ログ監視が併用されます。
Scanrollはこう守る
ScanrollはWebサーバーのアクセスログを解析し、SQLインジェクションに典型的なパターン(UNION SELECT、OR 1=1、コメント記号、SQLキーワードの不自然な組合せ等)を検出した送信元IPを自動ブロックします。アプリ側の修正と組み合わせることで多層防御を実現します。
サーバーへの攻撃をAIで自動検知・自動ブロック
Scanrollの機能と料金プランを見る →