Web приложения и браузърни атаки
Класическите приложни уязвимости — injection, XSS, обходен контрол на достъпа — и атаките в самия браузър.
Повечето от тези атаки съществуват, защото приложението приема вход от недоверен източник и после му се доверява: като код, като заявка, като идентичност или като път до файл.
Групата следва логиката на OWASP Top 10, но е разгърната по-подробно — за всеки клас са описани конкретните разновидности, защото защитата срещу stored XSS не е същата като срещу DOM-based XSS.
Кой предлага защита в България
Услугите от директорията, които намаляват този риск — с броя компании, които ги предлагат.
42 атаки в това семейство
SQL Injection (SQLi)
SQL Injection е injection атака, при която неконтролиран вход променя смисъла на SQL заявка към база данни.
NoSQL Injection
NoSQL Injection е манипулиране на заявки към MongoDB, CouchDB, Redis-подобни или други non-relational data stores чрез недоверен вход.
OS Command Injection
OS Command Injection позволява потребителски вход да стане част от shell/operating-system команда.
LDAP Injection
LDAP Injection променя LDAP filter/query чрез некоректно обработен вход.
XPath/XQuery Injection
XPath/XQuery Injection е аналог на SQLi при приложения, които търсят в XML данни чрез XPath/XQuery.
Server-Side Template Injection (SSTI)
SSTI възниква, когато недоверен текст се интерпретира като template code от server-side template engine.
Reflected Cross-Site Scripting (Reflected XSS)
Reflected XSS кара приложение да върне злонамерен клиентски код от текуща HTTP заявка в отговора.
Stored Cross-Site Scripting (Stored XSS)
Stored XSS съхранява злонамерен content в база данни, коментар, профил, ticket или друг persistent store и го изпълнява при други потребители.
DOM-based XSS
DOM XSS възниква изцяло или основно в browser-side JavaScript, когато недоверен source достига опасен DOM sink.
Cross-Site Request Forgery (CSRF)
CSRF кара вече удостоверен browser да изпрати нежелана state-changing заявка към сайт, на който потребителят е logged in.
Server-Side Request Forgery (SSRF)
SSRF кара server-side приложение да прави мрежова заявка към адрес, избран или повлиян от attacker-а.
XML External Entity (XXE)
XXE злоупотребява с XML parser, който разрешава external entities или опасни DTD features.
Path/Directory Traversal
Path Traversal позволява излизане извън предназначена директория чрез манипулиран file path.
Local File Inclusion (LFI)
LFI кара приложението да включи локален файл като част от response или executable template flow.
Remote File Inclusion (RFI)
RFI позволява приложение да включи remote resource като executable/include content.
Unrestricted File Upload
Unrestricted File Upload е възможност да се качи файл с опасен тип, име, съдържание или location.
Insecure Deserialization
Insecure Deserialization е обработване на недоверени serialized objects по начин, който позволява неочакван object graph или executable behavior.
Prototype Pollution
Prototype Pollution е JavaScript атака, при която attacker променя свойства в prototype chain на objects.
Buffer Overflow / Memory Corruption
Buffer Overflow е memory-safety дефект, при който код записва или чете извън предназначения buffer.
Use-After-Free (UAF)
Use-After-Free е memory corruption дефект, при който програмата използва memory object след освобождаването му.
Integer Overflow/Underflow
Integer overflow/underflow възниква, когато числова операция излиза извън representable range и резултатът се wrap-ва или обработва неправилно.
Race Condition / TOCTOU
Race condition, включително Time-of-Check to Time-of-Use (TOCTOU), възниква когато security decision зависи от state, който може да се промени между проверката и използването му.
HTTP Request Smuggling
HTTP Request Smuggling използва несъгласие между front-end proxy/load balancer и back-end server за границите между HTTP requests.
HTTP Response Splitting / CRLF Injection
CRLF Injection позволява недоверен вход да създаде допълнителни HTTP header lines или да промени response structure.
Web Cache Poisoning
Web Cache Poisoning кара shared cache/CDN да запази attacker-influenced response и да го сервира на други потребители.
Web Cache Deception
Web Cache Deception подмамва cache да съхрани персонализиран/чувствителен response като публично кешируем ресурс.
Host Header Injection
Host Header Injection злоупотребява с доверие към HTTP Host/X-Forwarded-Host за генериране на links, routing или security decisions.
Open Redirect
Open Redirect позволява trusted domain да пренасочи към attacker-controlled destination.
Clickjacking / UI Redressing
Clickjacking поставя реален интерфейс в скрит/прозрачен frame и кара потребителя да кликне върху нещо различно от видимото.
Insecure Direct Object Reference (IDOR) / BOLA
IDOR е форма на broken object-level authorization.
Broken Function-Level Authorization (BFLA)
BFLA позволява на low-privileged user да извика функция, предназначена за друга role или admin .
Mass Assignment / Broken Object Property-Level Authorization
Mass Assignment приема client object и автоматично го свързва към server model, включително полета, които user не трябва да контролира.
Authentication Bypass
Authentication bypass е общ клас дефекти, при които attacker достига authenticated state без валидно удостоверяване.
Business Logic Abuse
Business Logic Abuse използва легитимни функции по непредвиден начин, без непременно да има класически injection bug.
Regular Expression Denial of Service (ReDoS)
ReDoS използва regex с патологично backtracking поведение, за да изразходва CPU с малък crafted input.
Zip Slip / Archive Path Traversal
Zip Slip е path traversal при извличане на ZIP/TAR или друг archive.
HTTP Parameter Pollution (HPP)
HPP използва дублирани или неоднозначни parameters, когато различни компоненти ги интерпретират различно.
DNS Rebinding
DNS Rebinding използва контролирана DNS резолюция, за да накара browser origin да започне да сочи към internal/private IP.
JSON Web Token (JWT) Misuse/Attack
JWT attacks са злоупотреби с неправилна validation, key management, algorithm configuration, claims или lifecycle на JSON Web Tokens.
Web Skimming / Magecart
Web skimming, често наричано Magecart при payment-card кампании, краде данни директно от checkout/browser session.
Subdomain Takeover
Subdomain Takeover възниква, когато DNS record сочи към външна cloud/SaaS услуга, която вече не е claimed от организацията.
Security Misconfiguration / Exposed Administrative Interface
Security Misconfiguration е клас риск, при който system/app/cloud service е конфигуриран с опасни defaults, ненужни функции, публичен management plane или прекомерни permissions .