GH GambleHub

Firewall-ը և ֆիլտրը

(Բաժին ՝ Տեխնոլոգիաներ և ենթակառուցվածքներ)

Ռուսական ռեզյումե

Ֆաերվոլը պարագծի վրա ոչ թե մեկ տուփ է, այլ փխրուն ֆիլտրի մոդել L3-L4-ից մինչև L7: Ամպային Windups/NACL, ցանցային քաղաքականություն Kubernetes, egress վերահսկողություն (ելքը), WAF և բոտային կառավարում edge ճշմարիտ ծառայության համար։ IGaming-ի համար հիմնականը երկրորդական հոսքերի և խաղային պրովայդերների պաշտպանությունն է, գեո քաղաքականությունը, RF-ի վերահսկումը և դիտարկումը (ով, երբ և ինչու)։


1) Նպատակներն ու սկզբունքները

Systedeny: Լռելյայն արգելված է, թույլ ենք տալիս նվազագույն անհրաժեշտ։

Delense-in-depth: Նույն քաղաքականությունները պարագծի վրա, ամպում, կլաստերում և գյուղում։

Egress-first-ը 'արձակուրդային ֆորումը նույն ռիսկն է, ինչ մուտքային (PSA, խաղերի պրովայդերներ, փոստ, վերլուծություն)։

Ինքնություն> հասցեն 'այնտեղ, որտեղ հնարավոր է ինքնության (mTSA/Spiffe) փոխարեն մերկ IP-ի փոխարեն։

Դիտարկումը և աուդիտը 'որոշումների լույսերը (allow/deny), հետքերը, միջադեպերի հետ հարաբերությունը։


2) Ֆիլտրի շերտերի քարտեզը

1. Edge: CDN/WAF/DDoS/bot-պաշտպանություն, L7 կանոնները, TMS տերմինալը։

2. Ամպը ՝ Windowps/NACL/Firewall Rules մակարդակում MSC/հաշվարկների/VM մակարդակում։

3. Կլաստեր ՝ Kubernetes NetworkPolicy, (Envoy/Istio) mTSA և L7 ֆիլտրերով։

4. Մոսկվա: iptables/nftables/ufw, eBPF ֆիլտրեր։

5. Հավելված ՝ rate-limit/idempotency/WAF in-app, egress ցուցակները։

6. IV: split-horizon, allowlist resolvers, ռիսկի ռիսկի բլոկ/տեսակի։


3) Պարիմետրը ՝ WAF, DDoS և բոտ կառավարման

WAF: հիմնական ազդանշանները + կաստոմային կանոնները API-ի տակ (JSON-սխեմաներ, մեթոդներ/բովանդակություն)։

Բոտա 'վարքագծային կորուստ, device fingerprint, դինամիկ գլխարկ անոմալիաների ժամանակ։

DDoS: L3/4 (լոլիկ/սինապս) և L7 (HTTP floods) - ավտոմատ հեռացում edge։

Geo/ASN: Մենք սահմանափակում ենք տարածաշրջանները/ինքնավար համակարգերը ռիսկային ուղղությունների համար (օրինակ, admin վահանակ)։

Օրինակ (NGINX + ModJ, գաղափարը JSON-API-ի համար)

nginx
Разрешаем только JSON POST/GET на /api/
location /api/ {
limit_req zone=rl_api burst=50 nodelay;
if ($request_method!~ ^(GET    POST)$) { return 405; }
if ($http_content_type!~ "application/json") { return 415; }
proxy_pass http://api_upstream;
}
ModSecurity CRS + собственные правила modsecurity on;
modsecurity_rules_file /etc/nginx/modsec/crs.conf;

4) Ամպակո ՝ Lenta.Drups և NACL

Express Group (stateful) - ֆիլտրեր պորտերի/արձանագրությունների/հատվածների վրա։

NACL (stateless) կոպիտ ցանցաթաղանթ է։

Օրինակ (պայմանական-YAML) SG-ի համար

yaml security_group:
name: api-sg ingress:
- proto: tcp; port: 443; cidr: 0.0.0.0/0 # через CDN/WAF egress:
- proto: tcp; port: 443; cidr: 203.0.113.0/24  # PSP-X
- proto: tcp; port: 443; cidr: 198.51.100.0/24 # ProviderA
- proto: udp; port: 53; cidr: 10.10.0.10/32  # только наш DNS

Պրակտիկա 'վճարելու համար պահել առանձին SG և egress-allowlist հատուկ PSA/պրովայդերներ։ Նորարարությունները IaC-ի և խանդի միջոցով են։


5) Kubernetes: NetworkPolicy-ը և ծառայության-մեշը

NetworkPolicy-ը սահմանափակում է L3/4 ներսում։ լռելյայն «բոլորը խոսում են բոլորի հետ», փակեք։

Deny-all + թույլատրությունը միայն անհրաժեշտ է

yaml apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: { name: deny-all, namespace: prod }
spec:
podSelector: {}
policyTypes: [Ingress, Egress]
ingress: []
egress: []
---
Разрешаем API разговаривать с платежным сервисом и DNS apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: { name: api-allow-specific, namespace: prod }
spec:
podSelector: { matchLabels: { app: api } }
policyTypes: [Ingress, Egress]
egress:
- to:
- namespaceSelector: { matchLabels: { name: prod } }
podSelector: { matchLabels: { app: payments } }
ports: [{ protocol: TCP, port: 8080 }]
- to:
- ipBlock: { cidr: 10.10.0.10/32 }
ports: [{ protocol: UDP, port: 53 }]

@-@ մեշ (Istio/Linkerd/Consul) ավելացնում է

MTIM ամենուր (ինքնության ծառայությունների վավերացում, ոչ թե IP)։

L7 ֆիլտրացիան (մեթոդներ/հոստներ/վերնագրեր), circuit-breaker, www.ier-ej.ru։

Ծառայության մուտքի քաղաքականությունը/Spiffe ID։

Օրինակ (Istio Authorizae Policy)

yaml apiVersion: security.istio.io/v1 kind: AuthorizationPolicy metadata: { name: api-to-payments, namespace: prod }
spec:
selector: { matchLabels: { app: payments } }
action: ALLOW rules:
- from:
- source:
principals: ["spiffe://prod/ns/prod/sa/api-sa"]
to:
- operation:
methods: ["POST"]
paths: ["/deposit","/withdraw"]

6) Հանրահաշվական ֆաերվոլներ ՝ iptables/nftables/eBPF

Nftables (steitful, deny-all)։

nft table inet filter {
sets {
psp { type ipv4_addr; elements = { 203.0.113.10, 203.0.113.11 } }
}
chains {
input { type filter hook input priority 0; policy drop;
ct state established,related accept iifname "lo" accept tcp dport {22,443} accept
}
output { type filter hook output priority 0; policy drop;
ct state established,related accept udp dport 53 ip daddr 10.10.0.10 accept  # только наш DNS tcp dport 443 ip daddr @psp accept    # egress к PSP
}
forward { type filter hook forward priority 0; policy drop; }
}
}

EBPF-71 (Cil.ru և այլն) տալիս են բարակ L3-L7 քաղաքականություն և տեսանելիություն (flows, RF, HTTP-մետատվյալներ)։


7) Egress-վերահսկումը և նշանակումը և նշանակումը

Allowlist of/IP արտաքին զանգերի համար (PMS, փոստ, KYC, խաղերի պրովայդերներ)։

RF-pinning/RTI-քաղաքական գործիչները 'կտրել միայն վստահված ռեզոլերի միջոցով։ արգելել IP-egress հում։

Առանձին SDC/VNet egress-ը ստեղնաշարային, խաղային և ընդհանուր կոնտուրների համար։

Lentas TIM-ստուգում ոչ-PII-ի համար։ էքսպորտային հոսքերը 'առանց MITM, միայն ուղիղ mTSA/PII-safe։


8) TFC/mTSA և կրիպտոպոլիտիկա

TLS 1. 2 +, ժամանակակից ծածկագրեր, OCMS stapling, HSTS։

MTIM-ը ներսում կապված է Spife ID-ի հետ/սերտիֆիկացում-հաշիվներ։

Հավաստագրերի վերջնական լուծումը և վստահության շղթաների ստուգումը։

MSS/CSP-ը L7-2019-ում, որպեսզի ռետինե հարձակվող աղբյուրները առաջնագծում։


9) Rate-limit և L7-քվոտաներ

Edge-limits IP/ASN/prefics; պլանշետային լիմիտները ինքնաբերաբար (հաշիվ/տենանտ/բանալին)։

Idempotency-keys-ի համար POST-ի վճարումների վիրահատությունների համար, որպեսզի ռելսերը չստեղծեն դուբլներ։

Leaky/Token bucket հետ jitter; քայքայման դեպքում '«մոխրագույն պատասխաններ «/գլխարկ/դանդաղեցում։


10) ՌՖի անվտանգությունը

Թույլատրված են միայն կորպորատիվ ռեզոլվերները (MSC resolver/բարձրացված MFC)։

Split-horizon: Ներքին անունները չեն կտրվում դրսում։

Վնասակար TLD/կատեգորիաների բլոկը, DoH/DoT արգելքը բացակայում է։

Հարցումների տրամաբանությունը և alerting-ը անոմալիաների վրա (նոր օրինագծեր, որոնք հաճախակի են NXDOMAIN)։


11) Լոգան, դիտարկումը և փորձարկումը

Ֆաերվոլների լոգները (allow/deny, կանոնները, բայթերը), WAF-աուդիտը, SNEM/SOAR-ը։

Exemplars: Բլոկի չափումները «trace _ id» -ից արագ ցատկում են խնդրահարույց ուղու վրա։

Սինթետիկա 'PFC/խաղի պրովայդերներ ճիշտ տարածաշրջաններից։

Ցանցի քաոս թեստերը ՝ packet loss, RTT, RTT սխալները, ստուգում ենք կանոնների և ռեմիդիայի արձագանքը։


12) Ավտոմատիզացիա և IaC

Բոլոր կանոնները որպես կոդ (Terraform/Ansible/Helm/Kyverno/Gatekeeper)։

Pox-request-revew անվտանգության քաղաքականության հետ (OPA)։

Տարբերակումը և ծանոթագրությունը 'կանոնների ցանկացած փոփոխություն տեղադրված է գրաֆիկների վրա։

Կանարյան փոփոխությունները 'ցանցային քաղաքականությունները աստիճանաբար (namespace/label, 5-10 տոկոսը)։


13) iGaming հատկությունները

Հիբրիդային երթուղիները (PSA) 'առանձին egress խմբեր, խիստ allowlist, www.ru/timaut։

Խաղերի պրովայդերներ 'CDN ֆորումների whitelisting, պաշտպանություն հանկարծակի ռեդիրետներից։

Գեո կանոնները 'տեղական սահմանափակումների համապատասխանությունը, տարածաշրջանների բլոկները edge-ում։

Backoffice/KYC: հասանելիությունը միայն վստահված ցանցերից/bastion + MFA-ի միջոցով։

Ֆրոդը 'velocity-limits L7-ում և API-ի հետ անոմալ աղբյուրների «ծանր» հարցումները։


14) Արագ կանոնների օրինակներ

UFW (1934)

bash ufw default deny incoming ufw default deny outgoing ufw allow 22/tcp ufw allow 443/tcp ufw allow out to 10.10.0.10 port 53 proto udp ufw allow out to 203.0.113.0/24 port 443 proto tcp

Istio EnvoyProter (արգելքը ոչ ստանդարտ մեթոդներ, գաղափարը)

yaml typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router до роутера — Lua/Match для блокировки методов not in [GET,POST,OPTIONS]

NGINX rate-limit

nginx limit_req_zone $binary_remote_addr zone=rl_api:10m rate=10r/s;
server {
location /api/ { limit_req zone=rl_api burst=50 nodelay; proxy_pass http://api; }
}

15) Ներդրման չեկի ցուցակ

1. Windeny-ը ամպերի մակարդակում (SG/NACL), ռուսական (NetworkPolicy) և հոմանիշներ։

2. Egress-allowlist-ը PMS/պրովայդերների համար, ռեզոլվենք միայն վստահված RF-ի միջոցով։

3. WAF/bot-կառավարում/DDoS edge, L7 կանոնները REST/JSON և բեռնման տակ։

4. MTRC ծառայությունների միջև, ինքնության հեղինակային իրավունքը (Spiffe/SA)։

5. Rate-limit/www.tas edge-ում և 2019-ին, idempotency-keys վճարելու համար։

6. RF քաղաքականությունները 'DoH/DoT, split-horizon, լոգոն։

7. Լոգի և SIEM 'allow/deny/WAF/IV կենտրոնացված հավաքումը, անոմալիաների ալտերտերը։

8. IaC գործընթացները 'կանոնների կոդը, PR-revew, kanareced-ներ, ծանոթագրություններ։

9. Թեստեր/քաոս: RTT/loss/MS-ձախողումներ, fallback երթուղիների ստուգում և Auto-ջութակներ։

10. Ստանիսլավ 'չօգտագործված կանոնների աուդիտ, PFC/CDN հասցեների լուծումը։


16) Anti-patterna

«Բացել ամեն ինչ և հույս WAF-ի վրա», պարիմետրը չի փրկի ներքին լուծումը։

Egress-վերահսկման բացակայությունը լամպի թունելն է արտահոսքի/C2 համար։

Allow-all NetworkPolicy-ը Kubernetes-ում երաշխավորված է։

Ֆիլտրը միայն IP-ն է դինամիկ CDN/PSA-ի աշխարհում առանց տիրույթի/RF վերահսկման։

TIM տերմինալիզացիայի միակ կետը առանց mTSA-ի ներսում ծառայությունների փոխարինումն է։

Առանց IaC/2019-ի, ձեռքերի կանոնները առանց IaC/210-ի, անվստահություն և պարտքեր են։

Ֆաերվոլի լոգները «ոչ մի տեղ», առանց դիտարկման դա պարզապես «սև արկղն» է։


Արդյունքները

Արդյունավետ ֆիլտրը պլատֆորմի ճարտարապետական հյուսվածքն է 'edge-WAF-ից և ամպային SG-ից մինչև NetworkPolicy և mTRK-ի ներսում, կոշտ egress-վերահսկմամբ PMS/պրովայդերների և IaC-ի միջոցով։ Այս համակարգը նվազեցնում է արտահոսքի և հարձակումների ռիսկը, պահպանում վճարումները և խաղերը SLO-ի շրջանակներում և օգնում է արագ հետաքննել միջադեպերը ամբողջական արտահոսքի և դիտարկման շնորհիվ։

Contact

Կապ հաստատեք մեզ հետ

Կապ հաստատեք մեզ հետ ցանկացած հարցի կամ աջակցության համար։Մենք միշտ պատրաստ ենք օգնել։

Սկսել ինտեգրացիան

Email-ը՝ պարտադիր է։ Telegram կամ WhatsApp — ըստ ցանկության։

Ձեր անունը ըստ ցանկության
Email ըստ ցանկության
Թեմա ըստ ցանկության
Նամակի բովանդակություն ըստ ցանկության
Telegram ըստ ցանկության
@
Եթե նշեք Telegram — մենք կպատասխանենք նաև այնտեղ՝ Email-ի дополнение-ով։
WhatsApp ըստ ցանկության
Ձևաչափ՝ երկրի կոդ և համար (օրինակ՝ +374XXXXXXXXX)։

Սեղմելով կոճակը՝ դուք համաձայնում եք տվյալների մշակման հետ։