חומת אש וסינון תנועה
(סעיף: טכנולוגיה ותשתיות)
סיכום קצר
חומת אש היא לא קופסה אחת בהיקפה, אלא מודל סינון שכבתי מ- L3-L4 ל-L7: קבוצות אבטחת ענן/NACL, מדיניות רשת בקוברנטס, בקרת יציאה, ניהול WAF ו-BOT על הקצה, ו-MTLS/Source-Truth לשירות. עבור iGaming, המפתח הוא להגן על זרימות תשלום וספקי משחקים, גיאו-פוליטיקה, DNS שליטה ויכולת תצפית (מי, איפה, מתי ולמה).
1) מטרות ועקרונות
ברירת מחדל מכחישה: כברירת מחדל, אנו מאפשרים את המינימום הנדרש.
אותה מדיניות על היקף, ענן, אשכול, ויישום.
Egress-first: תנועת פלט היא אותו סיכון כמו קלט (PSP, ספקי משחקים, דואר, אנליטיקה).
זהות> כתובת: היכן שאפשר, אישור על ידי זהות (mTLS/Spiffe) במקום IP חשוף.
תצפיות וביקורת: רישומי החלטות (לאפשר/להכחיש), עקבות, מתאם עם אירועים.
2) מפה של שכבות סינון
1. קצה: CDN/WAF/DDOS/BOT, חוקי L7, סיום TLS.
2. ענן: קבוצות אבטחה/NACL/Firewall Rules ברמת VPC/subnet/VM.
3. אשכול: Kubernetes Networking Policy, Servoy mesh (שליח/איסטיו) עם מסנני mTLS ו-L7.
4. מארח: iptables/nftables/ufw, סוכן מסנני eBPF.
5. יישום: rate-limit/idempotency/WAF in-app, רשימת דומיין ליציאה.
6. DNS: אופק מפוצל, רזולוציות רשימה, בלוק של תחומי סיכון/סוגים.
3) היקפי: WAF, DDOS וניהול רובוט
WAF: חתימות בסיסיות + כללים מותאמים אישית עבור API (תוכניות JSON, שיטות/תוכן-סוג).
בוטים: ניקוד התנהגותי, טביעת אצבע התקן, קפצ 'ה דינמית לסטיות.
DDOS: L3/4 (וולום/סינפסה) ו ־ L7 (שיטפונות HTTP) - זריקה אוטומטית על הקצה.
Geo/ASN: אנו מגבילים אזורים/מערכות אוטונומיות לאזורים מסוכנים (לדוגמה, לוח מנהלים).
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) ענן: קבוצות אבטחה ו ־ NACL
קבוצת אבטחה (סטטוטורית) - מסננים על ידי פורט/פרוטוקול/מקטע.
NACL (חסר מעמד) - סינון רשת גס של תת רשתות.
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
פרקטיקה: עבור תשלומים יש לשמור SGs נפרדים ו-egress-allowlists עבור טווח ספקי PSP/משחק ספציפי. עדכונים דרך איי-סי וסקירה.
5) Kubernetes: NetworkPolicy and Service Mesh
מדיניות Networks מגבילה L3/4 בתוך האשכול; כברירת מחדל ”כולם מדברים עם כולם” - קרוב.
הכחיש-כל + רזולוציה בלבד הכרחית: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 }]
Service mesh (איסטיו/לינקרד/קונסול) מוסיף:
- MTLS נמצא בכל מקום (אימות שירות לפי זהות, לא IP).
- סינון LA7 (שיטות/פונדקאים/שבילים/כותרות), מפסק-מעגל, חריגה-פליטה.
- מדיניות גישה לפי חשבון שירות/Spiffe ID.
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
דוגמה לחסרונות (מדינתי, מכחיש-כל):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 (Cilium, וכו ') מספקים מדיניות וראות L3-L7 דקה (זורמים, DNS, HTTP metadata).
7) בקרת יציאות וספריות יעד
Allowlist Domains/IP עבור שיחות חיצוניות (PSP, דואר, KYC, ספקי משחקים).
מדיניות DNS pinning/SNI: לפתור רק באמצעות נחישות מהימנה; אוסר על יציאת איי-פי גולמית.
יציאת VPC/VNet עבור תשלום, משחקים ומעגלים כלליים.
פרוקסי עם בדיקת TLS עבור תנועה שאינה PII; תשלום זורם - אין MITM, ישיר MTLS/PII-בטוח בלבד.
8) TLS/mTLS ומדיניות ההצפנה
TLS 1. 2 +, צפנים מודרניים, הידוק OCSP, HSTS.
MTLS בתוך - מחייב לספיף זיהוי/הסמכה של חשבונות שירות.
סבב תעודות רגיל ואימות שרשראות אמון.
CORS/CSP על פרוקסי L7 לחתוך מקורות תוקפים בחזית.
9) מגבלת קצב ו ־ L7-quotas
גבולות קצה על ידי IP/ASN/prefixes; הגבלת יישום - בזהות (חשבון/דייר/מפתח).
Idempotency-keys עבור פעולות תשלום POST כך המגשים מחדש לא ליצור כפילויות.
דלי דולף/טוקן עם ג 'יטר; במהלך השפלה - ”תשובות אפורות ”/קאפצ 'ה/האטה.
10) ביטחון DNS
רק נחישות תאגידית (VPC reliver/raised CoreyDNS) מותרת.
שמות פנימיים לא נפתרים מבחוץ.
חסימת TLD/קטגוריות מזיקות, איסור DoH/DoT מהאחים החוצה.
רישום בקשות והתראה על ידי חריגות (תחומים חדשים, תכופות NXDOMAIN).
11) יומנים, יכולת תצפית ובדיקה
logs Firewall (אפשר/מכחיש, כללים, בייטים), ביקורת WAF, יומני DNS * SIEM/SOAR.
מופת: מנעול מדדים עם "trace _ id' = = קפיצה מהירה לתוך שאילתת הבעיה.
סינתטיים: בדיקות קבועות על הזמינות של ספקי PSP/משחק מהאזורים הנכונים.
בדיקות כאוס ברשת: אובדן מנות, אר-טי-טי, שגיאות DNS - בדקו את התגובה של כללים ושיקום אוטומטי.
12) אוטומציה ו ־ IC
כל החוקים הם כמו קוד (Terraform/Ansible/Helm/Kyverno/Gatekeeper).
בקשות-סקירה עם מדיניות אבטחה (OPA).
ורסינינג וסימני אנוטציה כל שינוי כלל על גרפים.
שינויים קנריים: רול מדיניות רשת בהדרגה (שם/תווית, 5-10% של הגשות).
13) הפרטים של iGaming
מסלולי תשלום (PSP): קבוצות יציאה בודדות, רשימת מוקדים קפדנית, ניטור קוד/פסק זמן.
ספקי משחקים: domains CDN, הגנה מפני כיוונים מחדש פתאומיים.
חוקי גיאו: ציות להגבלות מקומיות, בלוקים של אזורים על הקצה.
Backoffice/KYC: גישה רק מרשתות אמינות/דרך bastion + MFA.
הונאה: הגבלת מהירות על L7 ובקשות ”כבדות” ל-API של מקורות לא תקינים.
14) דוגמאות לחוקים מהירים
UFW (מארח)
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
איסטיו אנז 'ה פילטר (איסור על שיטות לא סטנדרטיות, רעיון)
yaml typed_config:
"@type": type.googleapis.com/envoy.extensions.filters.http.router.v3.Router до роутера — Lua/Match для блокировки методов not in [GET,POST,OPTIONS]
הגבלת קצב NGINX
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. מכחיש ברירת מחדל ברמת הענן (SG/NACL), אשכול (NetworkPolicy) ומארח.
2. Egress-allowlist to PSP/spectures, נפתר רק באמצעות DNS מהימן.
3. WAF/BOT ניהול/DDOS על קצה, L7 כללים למנוחה/JSON והורדות.
4. MTLS בין שירותים, אישור זהות (Spiffe/SA).
5. דרגה-גבול/מכסות על קצה ובאפליקציה, אידמפוטנטיות-מפתחות לתשלומים.
6. מדיניות DNS: איסור DoH/DoT, פיצול אופק, כריתת עצים.
7. יומנים ו-SIEM: אוסף מרכזי מאפשר/מכחיש/WAF/DNS, התראות לחריגות.
8. תהליכים: קוד כללי, ביקורת יחסי ציבור, לחמניות כנריות, הערות.
9. בדיקות/תוהו ובוהו: כשלים ב-RTT/אובדן/DNS, בדיקת נתיבי נסיגה ותסריטים אוטומטיים.
10. ביקורת רגילה: ביקורת של כללים שלא נעשה בהם שימוש, סיבוב של כתובות PSP/CDN.
16) אנטי דפוסים
”פתח הכל ותקווה עבור WAF” - המתחם לא יחסוך תנועה פנימית.
אין בקרת יציאה - צינור מנהרה החוצה עבור leaks/C2.
מדיניות כל הניירות בקוברנטס - תנועה צדדית מובטחת.
סינון IP בלבד בעולם הדינמי CDN/PSP ללא בקרת תחום/DNS.
נקודת הסיום היחידה של TLS ללא mTLS היא החלפת שירות.
כלל ידני משתנה במכירות ללא איי-סי-סי/ביקורת - אי-רבייה וחובות.
יומני חומת אש ”לשום מקום” - ללא תצפית זה רק ”קופסה שחורה”.
תוצאות
סינון תנועה יעיל הוא מארג ארכיטקטוני של הפלטפורמה: החל מאדג '- WAF וענן SG ועד NetworkPolicy ו-mTLS בתוך האשכול, עם בקרת יציאה הדוקה ל-PSP/ספקים וניהול באמצעות IAC. מערכת כזו מפחיתה את הסיכון של דליפות והתקפות, שומרת על תשלומים ומשחקים בתוך ה-SLO ומסייעת בחקירת אירועים במהירות באמצעות ביקורת מלאה ומעקב.