Тестування безпеки - це аналіз вразливості програмного забезпечення до всіх видів атак.
Завданням такого тестування є визначення слабких місць системи, які можуть призвести до незаконного втручання і спричинити не лише втрату важливої інформації, але й завдати шкоди репутації виробника продукту.
Під час тестування безпеки QA-інженери перевіряють, як вбудовані засоби захисту реагують на проникнення.
Під час тесту фахівець виконує роль зловмисника, відтворюючи його можливі дії:
- Зламування паролів;
- Придушення системи;
- Впровадження помилок як спосіб проникнення під час відновлення системи;
- Аналіз наявних даних - це спосіб знайти спосіб проникнення в систему;
- Атака на систему.
Якщо говорити про сервіси тестування безпеки, то варто проаналізувати метод SQL Injection.
SQL Injection - це вразливість, за допомогою якої хакер редагує або створює поточні SQL-запити, щоб викрити приховані дані, замінити їх або виконати небезпечні команди операційної системи на стороні сервера. В основі атаки лежить програма, яка будує SQL-запити на основі даних, введених користувачем, і статичних параметрів.
Причинами вразливості є недостатній рівень захисту доступу до баз даних, вхідних параметрів, відсутність заходів контролю, використання неактуальних технологій та вразливий код.
SQL Injection уразливість виникає, коли розробник створює динамічний запит до бази даних, який містить дані користувача. На сьогоднішній день дуже складно відмовитись від таких запитів, тому скоро SQL Injection стане небезпечною.
[highlight dark=”no”]Поширеним інструментом для тестування на проникнення є sqlmap.[/highlight] Він включає в себе високоякісний механізм виявлення, який використовується в цьому інструменті, що має велику кількість функціональних можливостей для тестувальника, а також широкий спектр опцій. Це також інструмент для автоматизації реалізації SQL.
Цей інструмент тестування на проникнення є досить популярним завдяки деяким перевагам, таким як надання підтримки шляхом прямого підключення без використання SQL-ін’єкцій. Крім того, це підтримка завантаження різноманітних файлів баз даних, які лежать в основі файлової системи, якщо програмне забезпечення бази даних - MySQL, PostgreSQL, MySQL, Microsoft SQL Server тощо.
Можливості sqlmap досить широкі, від можливості читати і записувати файли на віддаленій файловій системі до різноманітних можливостей для злому. Використання цього інструменту для тестування серверів баз даних може допомогти захистити ваш продукт, усунувши можливість злому шляхом виявлення вразливостей.
Тестування злому за допомогою інструменту sqlmap виконується шляхом запуску команди з терміналу за допомогою інтерпретатора Python (оскільки sqlmap написаний на Python, його потрібно встановити).
Sqlmap містить різні параметри для пошуку уразливостей, які можна дослідити за допомогою наступних команд, як приклад:
sqlmap.py -h
sqlmap.py -hh

Використання “sqlmap.py -h” - приклад з інтернету

Використання “sqlmap.py -hh” - приклад з інтернету
За замовчуванням Sqlmap використовує GET. Але також можна вказати POST-параметри. А тестування хоста забезпечується командою нижче.

Тестування хосту - приклад з Інтернету
Короткий висновок
За допомогою sqlmap ви можете швидко протестувати систему на наявність вразливостей. Це, в свою чергу, дозволить убезпечити продукт і уникнути непередбачуваних негативних подій, які можуть статися після офіційного релізу програмного забезпечення.










0 коментарів