Skip to main content
QUICK REVIEW

[논문 리뷰] Preventing SQL Injection attack using pattern matching algorithm

Swapnil Kharche, Jagdish Patil|arXiv (Cornell University)|2015. 04. 27.
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 인젝션 패턴을 탐지할 수 있는 확장 가능하고 실시간 기반의 탐지 시스템을 개발하기 위해.
  • 다중 패턴 매칭에서 Aho-Corasick 알고리즘의 효율성을 활용하여 저지연 시간 보안 필터링을 구현하기 위해.
  • 기본적인 패턴 기반 정적 매칭 기법이 일반적인 SQL 인젝션 벡터에 대해 가벼운, 구현 가능한 방어 수단으로서의 가능성을 평가하기 위해.

제안 방법

  • 시스템은 알려진된 SQL 인젝션 패턴의 셋에서 Aho-Corasick 알고리즘을 사용해 유한 상태 기계를 구축한다.
  • 웹 애플리케이션에서 온 입력 문자열은 Aho-Corasick 오토마타를 통해 스트리밍되어 공격 서명과 일치 여부를 검사한다.
  • 알고리즘은 입력 길이에 비례하는 선형 시간 복잡도로 동시에 다수의 패턴 매칭을 가능하게 하여 높은 성능을 보장한다.
  • 공격 패턴은 알려진된 취약 쿼리에서 추출되어 패턴 데이터베이스를 학습하는 데 사용된다.
  • 탐지 엔진은 애플리케이션 레이어에 통합되어 데이터베이스 쿼리 실행 이전에 입력을 필터링한다.
  • 시스템은 무상태 방식으로 작동하므로 고처리량 환경에 배포하기에 적합하다.

실험 결과

연구 질문

  • RQ1Aho-Corasick 패턴 매칭 알고리즘이 실시간으로 알려진 SQL 인젝션 패턴을 효과적으로 탐지할 수 있는가?
  • RQ2기존의 서명 기반 또는 히وري스틱 기반 접근 방식과 비교해 Aho-Corasick 기반 탐지의 성능은 어떻게 되는가?
  • RQ3정적 패턴 기반 시스템이 표준 공격 벡터에서 거짓 경고나 누락 없이 SQL 인젝션을 어느 정도 방지할 수 있는가?
  • RQ4Aho-Corasick 알고리즘이 실전 웹 애플리케이션에 배포하기에 충분히 확장 가능하고 효율적인가?

주요 결과

  • 제안된 시스템은 Aho-Corasick 알고리즘을 사용해 테스트된 모든 표준 SQL 인젝션 패턴을 성공적으로 탐지했다.
  • 알고리즘은 선형 시간 패턴 매칭을 달성하여 고용량 입력에서도 낮은 계산 오버헤드를 유지한다.
  • 알고리즘의 결정적이고 효율적인 패턴 매칭 행동 덕분에 실시간 배포 가능성은 입증되었다.
  • 실행 시간 쿼리 파싱이나 복잡한 분석 없이도 알려진 공격 서명에 대해 높은 탐지 정확도를 보였다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.