GH GambleHub

تقویت محیط غذایی

تقویت محیط تولید

1) هدف و قاب

سخت شدن مجموعه ای منظم از شیوه هایی است که احتمال حوادث و آسیب های ناشی از آنها را کاهش می دهد. تمرکز: محیط API، داده های مشتری/پرداخت، CI/CD، پلت فرم ظرف، دسترسی، کنترل تغییر، مشاهده پذیری و انطباق.

اصول کلیدی:
  • امنیت توسط طراحی & پیش فرض: حداقل امتیازات مورد نیاز, پیش فرض امن.
  • Zero Trust: بدون تأیید اعتبار، به شبکه یا هویت اعتماد نکنید.
  • دفاع در عمق: حفاظت چند سطحی (شبکه → خدمات → داده ها).
  • تغییر ناپذیری مصنوعات: «یک بار بسازید، بسیاری را اجرا کنید».
  • آثار E2E و حسابرسی: چه کسی، چه زمانی، چه چیزی تغییر کرده است - و چرا.

2) مدل تهدید و دارایی های حیاتی

دارایی ها: حساب ها و نشانه های پرداخت، اطلاعات PII/گذرنامه، تعادل RNG/بازی، کلیدهای رمزگذاری، اسرار ادغام، استقرار خطوط لوله، تصاویر کانتینر.
بردارها: آسیب پذیری های وابستگی، نشت توکن، misconfiguration/K8s ابری، SSRF/RCE در API، زنجیره تأمین (سازش CI/CD/مخزن)، دسترسی خودی، ترافیک DDoS/bot.
سناریوها: خروج وجوه توسط یک نهاد غیر مجاز، جایگزینی ضرایب/تعادل، تخلیه پایه، ضبط خط لوله، ویرایش دستی در محصول.

3) معماری شبکه و جداسازی

تقسیم بندی: VPC/VNet جداگانه برای prod/stage/dev. Inside prod - subnet for edge (LB/WAF), API, پایگاه داده, تجزیه و تحلیل, خدمات مدیریت.
سیاست «به صراحت مجاز»: انکار همه بین زیر شبکه ها، فقط پورت ها/جهت های لازم را باز کنید.
mTLS بین خدمات، چرخش گواهی خودکار است.

نمونه ای از K8s NetworkPolicy (انکار همه + اجازه لیست):
yaml apiVersion: networking. k8s. io/v1 kind: NetworkPolicy metadata:
name: default-deny namespace: prod spec:
podSelector: {}
policyTypes: ["Ingress","Egress"]
apiVersion: networking. k8s. io/v1 kind: NetworkPolicy metadata:
name: allow-api-to-db namespace: prod spec:
podSelector:
matchLabels: {app: db}
ingress:
- from:
- podSelector: {matchLabels: {app: api}}
ports: [{protocol: TCP, port: 5432}]

4) هویت و دسترسی (PAM/JIT)

SSO + MFA برای تمام دسترسی های انسانی.
RBAC&ABAC - نقش ها در ابر، خوشه، فضای نام و سطح برنامه.
PAM: پرش/سنگر، دسترسی JIT (زمان محدود)، ضبط جلسه.
شکستن شیشه ای: حساب های مهر و موم شده با یک کلید سخت افزاری، صدور ورود به سیستم.
اسکن های منظم از «چه کسی به چه چیزی دسترسی دارد»، هر 30 روز یکبار بررسی کنید.

5) اسرار و کلید

Vault/KMS/Secrets Manager، اسرار را از Git حذف کنید.
KMS/HSM برای کلید های اصلی ؛ KEK/DEK، چرخش اتوماتیک.
سیاست های TTL: توکن های کوتاه مدت (OIDC/JWT)، حساب های موقت برای CI.
رمزگذاری: در حالت استراحت (AES-256/GCM)، در پرواز (TLS 1). 2 +/mTLS)، ستون های داده PII/کارت - با یک کلید جداگانه.

6) زنجیره تامین и سخت شدن CI/CD

جداسازی دونده ها برای prod (خود میزبانی در یک شبکه خصوصی).
امضای مصنوعات (Sigstore/cosign)، تأیید امضا در تخلیه.
SBOM (CycloneDX/SPDX)، SCA/VA در هر مرتکب و قبل از انتشار.
سیاست های «بدون برچسب آخرین»، فقط برچسب های تغییر ناپذیر.
اصل 4 چشم: بررسی کد اجباری و تایید تغییر.
زیرساخت به عنوان کد: Terraform/Helm с سیاست به عنوان کد (OPA/Conftest).

نمونه ای از مقررات OPA (ممنوعیت S3/Storage عمومی):
rego package iac. guardrails

deny[msg] {
input. resource. type == "storage_bucket"
input. resource. acl == "public-read"
msg:= sprintf("Public bucket forbidden: %s", [input. resource. name])
}

7) ظروف و Kubernetes

حداقل پایه تصویر (distroless)، بدون ریشه، FS فقط خواندنی، CAP قطره.
کنترل پذیرش: انکار ممتاز، hostPath، hostNetwork.
استانداردهای امنیتی غلاف: پایه/محدود для prod ns.
ImagePolicyWebhook - پرش فقط تصاویر امضا شده است.
سیاست های زمان اجرا (Falco/eBPF): هشدار به syscalls غیر طبیعی.
Quota/LimitRange: محافظت از گره ها از «همسایگان پر سر و صدا».

8) محیط API: WAF، محدودیت نرخ، Bot/DDoS

API دروازه: احراز هویت (OAuth2/JWT/HMAC)، نرمال سازی، mTLS، اعتبار سنجی طرح.
WAF: قوانین اساسی + کاست برای معیارهای تجاری.
محدودیت های نرخ: جهانی/توسط IP/توسط کلید مشتری ؛ «نشانه» و پشت سر هم.

مثال محدودیت نرخ NGINX:
nginx limit_req_zone $binary_remote_addr zone=api:20m rate=10r/s;

server {
location /api/ {
limit_req zone=api burst=30 nodelay;
proxy_pass http://api_backend;
}
}

مدیریت ربات: سیگنال های رفتاری، اثر انگشت دستگاه، چالش.
DDoS: CDN/scrubbing لبه، autoscaling، «تاریک راه اندازی» برای ویژگی های داغ.

9) سیاست های پیکربندی و پیش فرض های امن

ویژگی پرچم/کشتن سوئیچ به سرعت غیر فعال کردن ویژگی های مخاطره آمیز.
پیکربندی به عنوان کد با اعتبار مدار، canary/blue-green برای پیکربندی.
زمان لغو به عنوان KPI هنگام لغو پیکربندی/کلید.

10) داده ها و حریم خصوصی

طبقه بندی: PII/امور مالی/سیاهههای مربوط به عملیات/تله متری.
به حداقل رساندن: فروشگاه تنها آنچه شما نیاز دارید، ناشناس/pseudonymization.
پشتیبان گیری: حساب/پروژه جداگانه، رمزگذاری، تمرینات منظم DR.
قوانین برداشت: همان روش، محدودیت سرعت، ریسک پذیری، 4 چشم.
نگهداری/نگهداری قانونی: برنامه های ذخیره سازی، دفع مدیریت شده.

11) قابلیت مشاهده، هشدار و پاسخ

سه گانه: سیاهههای مربوط (شامل اسرار نیست)، معیارها (SLO/SLA)، مسیرها (W3C).
سیگنال های امنیتی: موفقیت/شکست ورودی ها، افزایش امتیازات، تغییر در اسرار، انحراف ترافیک.
SIEM + SOAR: همبستگی و playbooks نیمه اتوماتیک.
کتابهای حوادث: DDoS، نشت اسرار، سازش دونده، بازگرداندن انتشار، «انجماد» پرداخت.
MTTD/MTTR به عنوان معیارهای اصلی پاسخگویی.

12) مدیریت تغییر و انتشار

تغییر هیئت مشاوره (سبک وزن) برای تغییرات در معرض خطر.
Pre-prod gates: test, security, perf, database migrations را انتخاب کنید.
Canary/Blue-Green/Shadow depley، بازگشت خودکار توسط SLO.
ویرایش مستقیم را در prod ممنوع کنید: فقط از طریق خط لوله تغییر می کند.

13) آسیب پذیری ها و تکه های

سیاست پچ: بحرانی - ASAP ؛ بالا - برای N روز.
نجات پس از اصلاح ؛ وزن دهی در معرض CVE.
Chaos-security: تمرینات جدول بالا و حملات فرمان قرمز در پنجره های برجسته.

14) انطباق و حسابرسی

چارچوب کنترل: PCI DSS (پرداخت)، SOC 2، ISO 27001.
مصنوعات: ماتریس کنترل، سیاهههای مربوط تغییر، گزارش اسکن، نتایج آزمون DR، دسترسی به بررسی.
در دسترس بودن مداوم: «شواهد به عنوان کد» - مصنوعات به طور خودکار از خطوط لوله و سیستم ها جمع آوری می شوند.

15) اقتصاد و قابلیت اطمینان

Guardrails با هزینه: سهمیه، بودجه، هشدار، خاموش کردن خودکار منابع استفاده نشده.
ظرفیت: برنامه ریزی مبتنی بر SLO، تست بار، «روزهای هرج و مرج».
اولویت های بازیابی: RTO/RPO توسط سرویس، نقشه وابستگی.

16) ضد الگوهای

اسرار v.env در Git، مشترک «admin» برای همه، «SSH مستقیم در prod»، رفع دستی در ظروف، «آخرین» برچسب ها، یک خوشه مشترک برای همه چیز، سطل های عمومی، دونده CI با اینترنت خروجی در شبکه prod، سیاهههای مربوط با PII، بدون سوئیچ کشتن برای ویژگی های «داغ».

17) چک لیست شروع سریع (90 روز)

0-30 روز

فعال کردن MFA/SSO، بررسی دسترسی ؛ انکار تمام سیاست های شبکه ؛ مدیر اسرار/KMS ؛ در K8s ممنوع است ؛ فعال کردن WAF/Rate-limit هشدار ورود/تشدید اولیه.

31-60 روز

امضای تصویر + سیاست تصویر ؛ SBOM + SCA в CI ؛ قناری/عقب نشینی ؛ همبستگی SIEM ؛ کتاب های IR ؛ JIT/پم ؛ پشتیبانی با تست DR

61-90 روز

OPA-guardrails برای IAc ؛ eBPF/فالکو ؛ مدیریت ربات ؛ دسترسی دوره ای بررسی ؛ تمرین هرج و مرج امنیتی ؛ ممیزی پیکربندی ها و هزینه های گارد محافظ.

18) معیارهای بلوغ

دسترسی:٪ از حساب ها با MFA، متوسط سن نشانه ها، زمان فراخوانی.
خط لوله:٪ امضا شده/تصاویر SBOM، پوشش SAST/DAST.
بستر های نرم افزاری: سهم غلاف با فقط خواندنی FS، PSS محدود، پوشش NetworkPolicy.
محیط:٪ API با قوانین نرخ محدود/WAF، پاسخ متوسط به DDoS.
IR: MTTD/MTTR، فرکانس جدول بالا، درصد تمرینات موفق DR.
انطباق: نسبت کنترل با شواهد خودکار.

19) ضمیمه: قالب سیاست

AWS SCP (ممنوعیت سطل عمومی)

json
{
"Version": "2012-10-17",
"Statement": [{
"Sid": "DenyPublicS3",
"Effect": "Deny",
"Action": ["s3:PutBucketAcl","s3:PutBucketPolicy"],
"Resource": "",
"Condition": {"StringEquals": {"s3:x-amz-acl": "public-read"}}
}]
}

Kubernetes PodSecurity (namespace-label)

yaml apiVersion: v1 kind: Namespace metadata:
name: prod labels:
pod-security. kubernetes. io/enforce: restricted pod-security. kubernetes. io/audit: restricted

OPA برای ظروف (ممتاز ممنوع)

rego package k8s. admission deny[msg] {
input. request. object. spec. containers[_].securityContext. privileged == true msg:= "Privileged containers are not allowed in prod"
}

20) نتیجه گیری

تقویت محیط غذایی یک روند مداوم است. اولویت بندی اقدامات کاهش ریسک: دسترسی و اسرار، جداسازی شبکه، امضای مصنوعی و کنترل خط لوله، حفاظت از محیط API، مشاهده پذیری و تغییر نظم و انضباط. بقیه را بطور مکرر بسازید، معیارهای بلوغ را بدست آورید و اقتصاد را کنترل کنید.

Contact

با ما در تماس باشید

برای هرگونه سؤال یا نیاز به پشتیبانی با ما ارتباط بگیرید.ما همیشه آماده کمک هستیم!

Telegram
@Gamble_GC
شروع یکپارچه‌سازی

ایمیل — اجباری است. تلگرام یا واتساپ — اختیاری.

نام شما اختیاری
ایمیل اختیاری
موضوع اختیاری
پیام اختیاری
Telegram اختیاری
@
اگر تلگرام را وارد کنید — علاوه بر ایمیل، در تلگرام هم پاسخ می‌دهیم.
WhatsApp اختیاری
فرمت: کد کشور و شماره (برای مثال، +98XXXXXXXXXX).

با فشردن این دکمه، با پردازش داده‌های خود موافقت می‌کنید.