Різниця між XSS та SQL ін'єкцією

The ключова різниця між XSS та SQL ін'єкцією є те, що XSS (або перехресний сценарій) - це тип вразливості комп'ютерної безпеки, який вводить шкідливий код на веб-сайт, так що код запускається у користувачів цього веб-сайту браузером, тоді як ін'єкція SQL - ще один механізм злому веб-сайту, який додає код SQL до вікно введення веб-форми для отримання доступу до ресурсів або для внесення змін до даних.

Кожна організація підтримує веб-сайти, які допомагають покращити бізнес та прибутковість. Веб-додаток містить сторону клієнта та сервер. Клієнтська сторона включає інтерфейси користувача для взаємодії з додатком. Сторона сервера включає базу даних. Зазвичай є загрози, які впливають на правильне функціонування програми. Два з них - інжекція XSS та SQL.

ЗМІСТ

1. Огляд та ключові відмінності
2. Що таке XSS
3. Що таке інжекція SQL
4. Порівняльне порівняння - XSS та SQL ін'єкція у табличній формі
5. Підсумок

Що таке XSS?

XSS розшифровується як Cross Site Scripting, і це одна з найпоширеніших атак на веб-сайт. Це може впливати на конкретний веб-сайт, а також на користувачів цього веб-сайту. Найпоширенішою мовою для написання шкідливого коду для атаки XSS є JavaScript. XSS може вкрасти файли cookie користувача, змінити налаштування користувача, відобразити різні завантаження зловмисного програмного забезпечення та багато іншого.

Малюнок 01: XSS

Існує два типи XSS. Вони є стійкими і непостійними XSS. В стійкий XSS, шкідливий код зберігається на сервері в базі даних. Тоді він запуститься на звичайній сторінці. В непостійний XSS, введений шкідливий код буде надісланий на Сервер через HTTP-запит. Зазвичай ці атаки можуть траплятися в полях пошуку.

Що таке інжекція SQL?

SQL Injection - ще один механізм злому веб-сайтів. Він розміщує зловмисний код у SQL-операторах через введення веб-сторінки. Веб-сайт містить форми для збору даних користувачів. Коли він запитує у користувача введення даних, таких як ім'я користувача, userid, він може надати SQL-оператор замість імені та його. Отже, він може працювати на базі даних веб-сайту.

Малюнок 02: Введення SQL

Крім того, кілька прикладів ін'єкцій SQL є наступними;

Може виникнути ситуація пошуку користувача через userid. Якщо немає методу перевірки введення, користувач може ввести неправильний ввід. Якщо він вводить userid як 100 АБО 1 = 1, він генерує оператор SQL наступним чином.

виберіть * з користувачів, де userid = 100 або 1 = 1;

Цей оператор SQL може повертати всіх користувачів у базі даних, оскільки 1 = 1 завжди відповідає дійсності. Якщо це був хакер і якщо база даних містила конфіденційні дані, такі як паролі, він може отримати доступ до імен користувачів та паролів. Це приклад ін'єкції SQL.

Яка різниця між XSS та SQL ін'єкцією?

XSS - це тип вразливості комп'ютерної безпеки у веб-додатках, який дозволяє зловмисникам вводити сценарії на стороні клієнта на веб-сторінки, які переглядають інші користувачі. Інжекція SQL - це техніка введення коду, яка атакує додатки, керовані даними, які вставляють SQL-оператори у запис, поданий для виконання.

XSS вводить шкідливий код на веб-сайт, так що код запускається у користувачів цього веб-сайту браузером. З іншого боку, SQL-ін'єкція додає SQL-код у вікно введення веб-форми для отримання доступу до ресурсів або для внесення змін до даних. У цьому головна відмінність XSS від SQL Injection. Найпоширенішою мовою для XSS є JavaScript, тоді як для ін'єкцій SQL використовується SQL.

Підсумок - XSS проти SQL ін'єкції

Різниця між XSS та SQL Injection полягає в тому, що XSS вводить зловмисний код на веб-сайт, так що код виконує браузер у користувачів цього веб-сайту, тоді як інжекція SQL додає SQL-код до вікна введення веб-форми, щоб отримати доступ до ресурсів або вносити зміни до даних.

Довідка:

1. «Що таке інжекція SQL? - Визначення з WhatIs.com. " SearchSoftwareQuality, TechTarget. Доступний тут 
2. "Введення SQL". Інтернет-підручники W3Schools. Доступний тут 
3. "Що таке міжсайтовий сценарій (XSS)? - Визначення з WhatIs.com. " SearchSecurity, TechTarget. Доступний тут  

Надано зображення:

1.'26327769571 'від Крістіана Колена (CC BY-SA 2.0) через Flickr
2.'SQL-ін'єкція 'Batka savemazaalai - Власна робота, (CC BY-SA 4.0) через Wikimedia Commons