Класифікація SQL Injection уразливостей

22:47 29.12.2008

SQL Injection - це серйозні уразливості, які поширені в сучасних веб додатках. Та можуть призвести до повної компрометації веб сайтів.

SQL Injection уразливості бувають наступних типів:

  1. Reflected SQL Injection.
  2. Persistent SQL Injection.

Reflected SQL Injection - це звичайні SQL ін’єкції, що часто зустрічаються у веб додатках які працюють з БД. Для проведення атаки у випадку даного типу SQL ін’єкцій, потрібно відправити запит до вразливого веб додатку, що містить SQL команди для виконання. Для нового виконання команд потрібно посилати новий запит.

Приклад запиту (для виведення інформації з БД):

http://site/script?id=-1+or+1=1

Приклад запиту (для проведення DoS атаки):

http://site/script?id=1+and+benchmark(10000000,benchmark(10000000,md5(now())))

Persistent SQL Injection, про які я писав раніше - це новий тип SQL ін’єкції, що я виявив в грудні 2008 року. Даний тип SQL ін’єкцій менш поширений ніж reflected, але також трапляється в веб додатках. Для проведення атаки у випадку даного типу SQL ін’єкцій, потрібно відправити до вразливого веб додатку запит з SQL командами для виконання, які зберіжуться в БД. Після чого вони будуть взяті з БД і виконані (тобто не одразу при запиті, а в процесі роботи веб додатку).

Відправити потрібно лише один запит, після чого SQL команди будуть весь час виконуватися (доки вони будуть в БД) в процесі роботи системи. Подібні SQL ін’єкції зручно використовувати для проведення атак, де потрібне постійне виконання деякого коду, наприклад, для DoS атак.

Приклад запиту (для проведення DoS атаки):

http://site/script?param=1+and+benchmark(10000000,benchmark(10000000,md5(now())))

P.S.

В 2010 році я опублікував статтю Encoded SQL Injection уразливості, в якій описав новий, третій, клас SQL Injection уразливостей, що я виявив в 2009 році.


Одна відповідь на “Класифікація SQL Injection уразливостей”

  1. MustLive каже:

    You can read this article on English: Classification of SQL Injection vulnerabilities.

Leave a Reply

You must be logged in to post a comment.