Обновена на 24.11.2024 от Questo
Добрата стара XSS (Cross-site Scripting) се изкачи до върха в списъка на Агенцията за киберсигурност и сигурност на инфраструктурата(CISA) на най-опасните софтуерни уязвимости.
Агенцията е анализирала над 30 хил. уязвимости, докладвани от средата на 2023 г. до средата на 2024. Резултатите показват, че XSS е детронирала от върха т.нар. забранения запис на данни (out-of-bounds write).
XSS е добре позната уязвимост, която позволява на злонамерено лице да инжектира зловреден код в приложението, най-често в сайт. Последствията може да са козметични (дифейсване на сайта) или по-сериозни (кражба на данни).
През 2016 г. изпълнението на XSS влезе в българските медии, след като се оказа, че няколко сайта на държавни институции, сред които и Министерство на образованието и науката, са податливи на тази уязвимост.
Някой беше открил това и беше публикувал в интернет линкове към сайта с изпълнение на скрипт, който показваше колаж.
Горното е сравнително безобиден пример, но не се заблуждавайте: XSS, както и останалите узявимости, описани в тази статия, могат да ви създадат сериозни проблеми.
Кои са най-опасните софтуерни уязвимости?
Уязвимостите в този списък са известни от години, въпреки това продължават да се експлоатират.
Голяма част от тях могат да се открият с инструменти като Burp Suite.
Добра идея е да тествате вашия сайт или софтуерен продукт за наличието на някоя от тези уязвимости. За улеснение към описанието на всяка от тях публикуваме и инструменти, с които бихте могли да тествате за уязвимости.
ВНИМАНИЕ: тестването следва да се извърши от човек, който е работил с този тип инструменти. Ако нямате опит, не се опитвайте да правите пентестове сами, защото може да си навлечете други главоболия.
1. XSS
Засяга уебприложения и позволява изпълнението на зловреден код.
Инструменти, с които да тествате: Burp Suite, OWASP ZAP
2. Out-of-bounds write
Позволява на злонамерено лице да записва данни извън границите на буферите в паметта. Това може да доведе до сриване на софтуера или изпълнение на зловреден код.
Инструменти, с които да тествате: AFL, Peach
3. SQL Injection
SQL инжекциите вкарват злонамерен SQL код в уеб приложения, което може да доведе до източване на базата данни (т.нар. дъмпване), модификация или изтриване на данни.
Инструменти, с които да тествате: sqlmap, Burp Suite
4. CSRF
Съкратено от Cross-Site Request Forgery, тази уязвимост позволява на злонамерено лице да извърши действие от името на потребител, който се е логнал в дадено уеб приложение.
Инструменти, с които да тествате: Burp Suite, OWASP ZAP
5. Path Traversal
Това е уязвимост, която позволява на злонамерено лице да достъпва файлове на уебсървър, до които не би следвало да има достъп. Понякога става дума за нещо толкова елементарно като да се добавят няколко знака към URL в браузъра.
Инструменти, с които да тествате: Burp Suite
6. OS Command Injection
Тази уязвимост позволява на злонамерено лице да инжектира команди в уеб сървър, които да извадят от строя уеб приложението.
Инструменти, с които да тествате: Burp Suite
7. Variant Use After Free
Ако приложението е програмирано неправилно, този бъг позволява на злонамерено лице да изпълнява команди или да получи администраторски права.
Инструменти, с които да тествате: Valgrind
8. Class Missing Authorization
Тази уязвимост позволява на злонамерено лице да си направи потребителски профил и да вижда и манипулира данните на другите потребители на приложението.
Инструменти, с които да тествате: SonarQube
9. Unrestricted Upload of File with Dangerous Type
Тази уязвимост позволява на злонамерено лице да качва на уеб сървъра опасни файлове разширения: например да качи PHP скрипт през форма, предназначена само за качването на изображения.
Инструменти, с които да тествате: OWASP ZAP
10. Code Injection
Позволява на злонамерено лице да инжектира и изпълнява произволен код в приложението.
Инструменти, с които да тествате: SonarQube
11. Class Improper Input Validation
Уязвимост свързана с начина, по който приложението обработва информацията, въведена от потребителя. Може да доведе до различни тиопове атаки, вк;ючително и XSS атака.
Инструменти, с които да тествате: Burp Suite, OWASP ZAP
12. Class Improper Authentication
Тази уязвимост засяга начина, по който приложението удостоверява самоличността на потребителя, който се логва. Неправилната автентикация (например съхранение на сървъра на пароли без хеширане или дори достъп до профил с произволна парола) може да доведе до пробив на приложението и кражба на данни.
Инструменти, с които да тествате: Burp Suite, SonarCube
13. Class Improper Privilege Management
Тази уязвимост е налице, когато сървърът записва чувствителна информация в незашитен вид. е свързана с липсата на контрол при определянето на привилегиите, които различните категории потребители на приложението имат. Най-общо казано тя позволява на обикновени потребители да имат администраторски права и съответно да съсипят приложението.
Инструменти, с които да тествате: Burp Suite, Veracode
14. Base Deserialization of Untrusted Data
Този бъг отваря врати за различни зловредния действия, като например изпълнение на код от разстояние или DoS атака (Denial of Service).
Инструменти, с които да тествате: Burp Suite, OWASP ZAP
15. Class Exposure of Sensitive Information to an Unauthorized Actor
Тази уязвимост възниква, когато на сървъра се записва информация в незащитен вид. Това може да доведе до изтичане на увствителни данни като например пароли за достъп.
Инструменти, с които да тествате: OWASP ZAP, Acunetix
Пълният списък с уязвимости може да видите тук.
Архив с най-опасните софтуерни уязвимости по години има тук.