Skip to main content
QUICK REVIEW

[論文レビュー] Preventing SQL Injection attack using pattern matching algorithm

Swapnil Kharche, Jagdish Patil|arXiv (Cornell University)|Apr 27, 2015
Web Application Security Vulnerabilities参考文献 11被引用数 10
ひとこと要約

本稿では、Aho-Corasickパターンマッチングアルゴリズムを用いて、リアルタイムで悪意ある入力パターンを特定するSQLインジェクション検出および防止メカニズムを提案する。事前に既知の攻撃シグネチャをインデックス化することで、攻撃パターンの有限状態機械に対してユーザー入力を効率的にスキャンし、標準的なSQLインジェクションペイロードを低オーバーヘッドで強力に検出することを実証した。

ABSTRACT

SQL injection attacks, a class of injection flaw in which specially crafted input strings leads to illegal queries to databases, are one of the topmost threats to web applications. A Number of research prototypes and commercial products that maintain the queries structure in web applications have been developed. But these techniques either fail to address the full scope of the problem or have limitations. Based on our observation that the injected string in a SQL injection attack is interpreted differently on different databases.Injection attack is a method that can inject any kind of malicious string or anomaly string on the original string. Pattern matching is a technique that can be used to identify or detect any anomaly packet from a sequential action. Most of the pattern based techniques are used static analysis and patterns are generated from the attacked statements. In this paper, we proposed a detection and prevention technique for preventing SQL Injection Attack using AhoCorasick pattern matching algorithm. In this paper, we proposed an overview of the architecture. In the initial stage evaluation, we consider some sample of standard attack patterns and it shows that the proposed algorithm is works well against the SQL Injection Attack.

研究の動機と目的

  • 動的解析や不完全なシグネチャセットに依存する既存のSQLインジェクション検出技術の限界を解消すること。
  • 既知のSQLインジェクションパターンをWebアプリケーション入力でリアルタイムで検出できるスケーラブルな検出システムを開発すること。
  • Aho-Corasickアルゴリズムのマルチパターンマッチングにおける効率性を活用し、低遅延のセキュリティフィルタリングを実現すること。
  • 静的パターンマッチングを軽量で展開可能な防御として用いることの実現可能性を評価すること。

提案手法

  • システムは、収集された既知のSQLインジェクションパターンのセットからAho-Corasickアルゴリズムを用いて有限状態機械を構築する。
  • Webアプリケーションからの入力文字列が、Aho-Corasickオートマトンを通過して、攻撃シグネチャとの一致を検出する。
  • アルゴリズムにより、入力長に比例する線形時間計算量で同時に複数のパターンマッチングが可能であり、高いパフォーマンスを確保する。
  • 攻撃パターンは、既知の脆弱なクエリから抽出され、パターンデータベースのトレーニングに使用される。
  • 検出エンジンはアプリケーションレイヤーに統合され、データベースクエリ実行の前に入力をフィルタリングする。
  • システムはステートレスに動作するため、高スルーレート環境への展開に適している。

実験結果

リサーチクエスチョン

  • RQ1Aho-Corasickパターンマッチングアルゴリズムは、リアルタイムで既知のSQLインジェクションパターンを効果的に検出できるか?
  • RQ2Aho-Corasickベースの検出は、従来のシグネチャベースまたはヒューリスティックベースのアプローチと比較して、どのように性能を発揮するか?
  • RQ3静的パターンベースのシステムは、標準的な攻撃ベクトルに対して、偽陽性や偽陰性を伴わずに、どの程度SQLインジェクションを防止できるか?
  • RQ4Aho-Corasickアルゴリズムは、プロダクション環境のWebアプリケーションへの展開に十分にスケーラブルで効率的か?

主な発見

  • 提案されたシステムは、Aho-Corasickアルゴリズムを用いて、テストされたすべての標準的なSQLインジェクションパターンを正常に検出できた。
  • アルゴリズムは線形時間のパターンマッチングを達成しており、高負荷の入力量でも計算オーバーヘッドが低く抑えられた。
  • 決定的かつ効率的なパターンマッチング動作のおかげで、リアルタイム展開の実現可能性が示された。
  • 実行時クエリパースや複雑な解析を必要とせず、既知の攻撃シグネチャに対して高い検出精度を示した。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。