GH GambleHub

Web Application Firewall жана кол салуу коргоо

Кыскача резюме

WAF/WAAP HTTP (S )/WebSocket-трафикти колдонмо деңгээлинде чыпкалайт жана көзөмөлдөйт: кемчиликтерди иштетүүгө бөгөт коёт (OWASP Top 10), аутентификацияны айланып өтүү аракеттери, сканерлөө, автоматташтырылган бот-трафик жана L7 DDoS. Заманбап стек анти-бот кыймылдаткыч менен толукталган, API-коргоо, rate-чектөө, виртуалдык тактар, ошондой эле эрежелер код сыяктуу коопсуз чыгарылышы үчүн CI/CD менен тыгыз интеграция.

Архитектуранын ролу жана орду

Edge/CDN WAF (булут): төмөн жашыруун, дүйнөлүк аброю/Башкарылган Руль, L7 DDoS.
Self-hosted WAF (on-prem/K8s): ички тармактар ​ ​ менен терең интеграция, кылдат орнотуу.
WAAP-мамиле: WAF + API-Gateway функциялары (schema-validation, authZ), анти-бот, L7 DoS, mTLS.
Киргизүү схемалары: колдонуу алдында Reverse-прокси; Ingress контроллер K8s; Service Mesh чыпкалар; sidecar.

Коргоо модели

Negative security (кол тамгалар/CRS): белгилүү ыкмалары тез каптоо (SQLi/XSS/SSRF/RCE).
Positive security (allow-list): Биз бир гана "valid" суроо уруксат (ыкмалар/жолдор/схемалар/мазмун түрлөрү).
Virtual Patching: коддун фиксине чейин эксплойтту оперативдүү бөгөттөө.
Контексттик: статикалык мазмун үчүн ар кандай саясат, API, администратор, жүктөмөлөр, Webhook.

Типтүү коркунучтар жана чаралар

OWASP Top 10: SQLi, XSS, IDOR/BOLA, SSRF, шаблон, deserialization, мисконфиги.
L7 DDoS: жай суроолор/аталыштар, Hot EndPoints боюнча burst → коргоо: rate-limits, challenge, auto-блок.
Боттор/Скрейперлер: жүрүм-туруму, жыштыгы, "адамгерчиликсиз" үлгүлөрү, түзмөктөр, динамикалык белгилер.
Credential Stuffing/ATO: IP/ASN, velocity rules, кошумча факторлор боюнча аномалия → логин кармоо/ашыкча.
Жүктөмөлөр: түрү/өлчөмү/multiscan antivirus, "image-only" медиа зоналарында.
API/GraphQL: schema-validation, 'maxDepth '/' maxCost', жазаланбаган wildcard тыюу салуу, ыкмаларды жана аталыштарды көзөмөлдөө.

Саясатчылар жана эрежелердин конструкторлору

Ар кандай колдонмо үчүн негизги "скелет":

1. Транспорт: TLS 1. 2+/1. 3, HSTS, mTLS сезгич арткы.

2. Ыкмалары: allow-list ('GET, POST, PUT, DELETE, PATCH, OPTIONS') ресурска уникалдуу.

3. Жолдор: катуу маскалар/regexpers; администратор/биллинг - өзүнчө префикс/доменге.

4. Баш макалалар: ак тизмелер, коркунучтуу тыюу салуу ('X-Original-URL', стандарттуу эмес) кереги жок.

5. Body: JSON-only/Multipart-only маршруту боюнча; "Content-Length" лимиттери, "логин/издөө" үчүн бинардык блок.

6. Rate limits: per-IP/ASN/ачкыч/уюм; "кымбат" суроо-талаптарга өзүнчө лимиттер.

7. Анти-бот: жүрүм-турум эсеби, "сезимтал" челлендж, идентификация чаптоо (cookie-токендер, JA3/TLS FP).

8. CRS/Managed Rules: камтылган, FP астында тюнинг.

9. Wirt патч: белгилүү параметрлерин/кол үлгүлөрүн тез бөгөттөө.

10. Логи/метрика: бирдиктүү формат, 'trace _ id' менен корреляция, FP/TP отчеттору.

Тюнинг практикасы: кантип жалган аткарууну азайтуу үчүн

Трафикти тандоо менен Detect-only/Count-mode (shadow) боюнча жаңы эрежелерди ишке киргизүү.
Контекстке ылайык өзгөчөлүктөрдү түзүү ('path =/search', 'param = q' атайын символдорго уруксат берүү).
аймагын бөлүшүү: "коомдук барактар" vs "сезгич иш" (агрессивдүүлүктүн босогосу ар кандай).
Конвейер: эреже → стейджинг → канарейка (1-5%) → прод; FP метрика боюнча rollback.
Регрессиялык тесттер үчүн "жалган" төлөм каталогун жүргүзүү.

DevSecOps киргизүү

CI: Git статикалык эрежелер; тесттер: реалдуу суроо-жооп + кол каталогдон синтетика.
CD: Канарейка жайгаштыруу, Fich желектери; "саясий" мониторинг (эрежелерди өзгөртүү = өзгөртүү).
RASP жана SAST/DAST: WAF кодду оңдоону толуктайт, бирок алмаштырбайт.

Байкоо жана SLO

Метрикасы:
  • p95/99 жашыруун WAF аркылуу; блоктолгондордун/өткөрүлгөндөрдүн үлүшү; share Managed Rules vs custom; «attack rate».
  • Анти-бот: Challenge/жеткирүү үлүшү, FP/TP.
  • L7 DDoS: burst-rate, auto-mitigation events.
SLO мисалдар:
  • "0 ашык эмес. 5% FP уруксат бүтүмдөр/күн".
  • «p95 overhead WAF ≤ 10 мс».
  • "TTR виртуалдык патч ≤ 30 мүнөт".
  • Alarms: 4xx/5xx эрежелер бошотулгандан кийин; FP өсүшү; капч өтүү кулап; JWKS/mTLS-валидация деградациясы.

Конфигурация мисалдары

ModSecurity + OWASP CRS (Nginx)

nginx
Enabling ModSecurity modsecurity on;
modsecurity_rules_file /etc/nginx/modsec/main. conf;
`/etc/nginx/modsec/main. conf`:
apache
SecRuleEngine On
Include /usr/local/owasp-modsecurity-crs/crs-setup. conf
Include /usr/local/owasp-modsecurity-crs/rules/.conf

Example of an exception for a search parameter
SecRule REQUEST_URI "@beginsWith /search" "id:900100,phase:1,pass,nolog,ctl:ruleRemoveByTag=attack-xss"
SecRule REQUEST_URI "@beginsWith /search" "id:900101,phase:2,pass,ctl:ruleRemoveTargetById=942100; ARGS:q"

AWS WAF (JSON, rate limit + өлкөлөрдүн тизмеси блок)

json
{
"Name": "prod-web-acl",
"Scope": "CLOUDFRONT",
"DefaultAction": { "Allow": {} },
"Rules": [
{
"Name": "BurstLogin",
"Priority": 1,
"Statement": {
"RateBasedStatement": {
"Limit": 100,
"AggregateKeyType": "IP",
"ScopeDownStatement": { "ByteMatchStatement": {
"SearchString": "/login",
"FieldToMatch": { "UriPath": {} },
"TextTransformations": [{ "Priority": 0, "Type": "NONE" }],
"PositionalConstraint": "CONTAINS"
}}
}
},
"Action": { "Block": {} },
"VisibilityConfig": { "MetricName": "BurstLogin", "SampledRequestsEnabled": true, "CloudWatchMetricsEnabled": true }
}
]
}

Cloudflare (Expression Rules)


(http. request. uri. path contains "/admin" and ip. geoip. country ne "UA")
or (http. request. uri. path eq "/login" and cf. threat_score > 10)
or (http. request. uri. path contains "/api" and not http. request. headers["authorization"][0] contains "Bearer ")

NGINX: ыкмалары/денелери боюнча жөнөкөй эреже

nginx location /api/withdraw {
limit_except POST { deny all; }
if ($request_method = POST) {
set $cl $http_content_length;
if ($ cl = "") {return 411;} # length is required if ($ cl> 1048576) {return 413;} # ≤ 1MB add_header X-Idempotency-Required "true";
}
}

GraphQL: чектөө

'maxDepth = 6', 'maxCost = 1000', '__ схемасына' тыюу салуу, allow-list операциялары, аталыштарды валидациялоо ('Content-Type: application/json').

Анти-бот жана адам-достук текшерүү

Invisible challenge (капчыксыз JS-челленджи), "кымбат" жолдордо proof-of-work, жүрүм-турум аналитикасы (кыймыл/тайминг).
TLS/JA3-fingerprinting, IP/ASN кадыр-баркы, прокси/VPN тизмеси (акылга сыярлык чегинде).
Капкан (honeypot-талаалар) түрлөрү боюнча, динамикалык белгилер түрлөрү/сессия.
Купуялыкты коргоо: трекингди минималдаштыруу, ачык-айкын саясат, opt-out опциялары.

API Focus

Schema-first: OpenAPI/JSON валидация схемасы; ашыкча талааларга тыюу салуу.
Auth: сөзсүз Bearer JWT же mTLS; reject без `Authorization`.
Rate/Quota: per-key/per-org; ашканда - "soft block "/slowing.
Webhooks: кол HMAC, 'timestamp + nonce', кыска терезе кабыл алуу.
GraphQL: жогоруда чектөөлөрдү карагыла; операциянын атын/белгисин каттоо.

Жүктөмөлөр жана медиа

Көлөм чеги, MIME/кеңейтүү whitelists, файлдардын атын өзгөртүү;

AV-сканер (көп кыймылдаткычтар), ImageMagick policy (коркунучтуу декодерлер жок);

Thumb-өзүнчө доменде кызматы, serve-only-images.

Башкаруу жана маанилүү аймактардын коопсуздугу

Өзүнчө домен/жол, mTLS/жалпы ASN/өлкөлөр менен тыюу салуу, катуу rate limits, JIT жетүү, IP allow-тизмеси.
Кошумча сигналдар (device posture, risk score) → экинчи текшерүү талап.

Операциялар, окуялар жана виртуалдык тактар

Runbook: тез бошотуу блок-эрежелер, TTL-чектөө, команда кабарлоо.
Артка чегинүү критерийлери: өсүү 4хх/5хх> босого, FP> босого, p95 latency ↑.
Post-mortem: регрессиялык эрежелер топтомуна тестти кошуу, SIEMге SIGMA-алерттин бекитилиши.

Комплаенс жана купуялык

Минималдуу логика: жол/ыкма/код/блок себеби/идентификаторлор; PII/дене сырларын сактоого.
Саясат боюнча логдордун сактоо мөөнөтү; жеткиликтүүлүк - ролдору боюнча; дискте шифрлөө.

iGaming/Fintech үчүн өзгөчөлүктөрү

Төлөмдөр/төлөмдөр/капчыктар: per-org квоталары, PSP үчүн mTLS, катуу allow-жол барактары, PSP вебхуктары үчүн HMAC.
АТО/бонустук кыянаттык: логин/каттоо/жарнамалык коддору velocity эрежелер, жүрүм-турум чектери жана каршы бот.
Контент-провайдерлер/студиялар: жеке домендер/саясаттар, IP/ASN allow-list, WAF таасирине Time-to-Wallet/конверсияларды көзөмөлдөө.
Аймактык талаптар: гео-саясат (өлкөлөр/региондор), GDPR үчүн иштеп чыгуунун ачыктыгы.

Жол картасы ишке ашыруу

1. Аймактарды инвентаризациялоо (ачык, API, администратор, жүктөмөлөр).
2. Негизги кароо: TLS, ыкмалары/жолдору allow-тизмеси, Башкарылган Руль/CRS.
3. Rate limits + сезгич жолдордо каршы бот.
4. Virtual тактар жана шашылыш эрежелер жараяны (SLA ≤ 30 мин).
5. эрежелер үчүн CI/CD, staging/канарейка/shadow-mode.
6. Телеметрия, SLO, регрессия сыноо эрежелери.
7. Мезгил-мезгили менен карап чыгуу өзгөчөлүктөрү жана "тазалоо" айланып.

Типтүү каталар

"Бардык CRSти максималдуу түрдө күйгүздү" → FP көчкү жана команда күйүп кетти.
Эрежелер канарейка жана shadow-режими жок.
Сегменттин жоктугу: баары үчүн бир саясат.
Ignor API/GraphQL өзгөчөлүктөрү (schema/limits).
Байланышсыз Логи ('trace _ id') жана сапат метриктери жок.

FAQ

WAF коопсуз кодду алмаштырат?
Жок. Бул жумшартуу катмары жана "виртуалдык патч", бирок коддогу техникалык карыз сөзсүз түрдө жок кылынат.

Катуу блокторду күйгүзүүгө убакыт келгенин кантип түшүнсө болот?
Качан shadow-режими боюнча отчет төмөн FP көрсөтөт жана регрессия сыноо эрежелери бар.

API үчүн өзүнчө WAF керекпи?
Жакшыраак WAAP/API шлюзы менен интеграция: схема, лимиттер, аутентификация, вебхуктардын кол тамгалары.

Жыйынтык

Эффективдүү WAF/WAAP - бул негизги CRS/Managed Rules, оң модель, анти-бот, лимиттер жана DevSecOps, телеметрия жана так SLO процесстери менен колдоого алынган виртуалдык тактардын айкалышы. Бул ыкма кемчиликтерге тез жооп берет, автоматташтырылган чабуулдарга туруктуулук жана UX жана өндүрүмдүүлүккө болжолдуу таасир.

Contact

Биз менен байланышыңыз

Кандай гана суроо же колдоо керек болбосун — бизге кайрылыңыз.Биз дайым жардам берүүгө даярбыз!

Интеграцияны баштоо

Email — милдеттүү. Telegram же WhatsApp — каалооңузга жараша.

Атыңыз милдеттүү эмес
Email милдеттүү эмес
Тема милдеттүү эмес
Билдирүү милдеттүү эмес
Telegram милдеттүү эмес
@
Эгер Telegram көрсөтсөңүз — Emailден тышкары ошол жактан да жооп беребиз.
WhatsApp милдеттүү эмес
Формат: өлкөнүн коду жана номер (мисалы, +996XXXXXXXXX).

Түшүрүү баскычын басуу менен сиз маалыматтарыңыздын иштетилишине макул болосуз.