Skip to main content

Resurslar

HTTP müdafiə başlıqları, kriptoqrafik sertifikatlar, DNS e-poçt doğrulaması, domen qeydiyyatı nəzarəti və hücum səthinin minimallaşdırılması üzrə aydın sənədləşmə.

Təhlükəsizlik Başlıqlarının İzahı

HTTP təhlükəsizlik cavab başlıqları brauzerlərə məzmunu necə emal etməli olduğunu bildirir və XSS, clickjacking kimi hücumların qarşısını alır.

1. Strict-Transport-Security (HSTS)

Nə edir: Sayta növbəti bütün daxilolmaları yalnız HTTPS ilə məcbur edir, SSL zəiflətmə və kuki oğurluğunun qarşısını alır.

Tövsiyə olunan dəyər:

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

Qiymətləndirmə qaydası: max-age dəyəri 15552000 (6 ay) altında olduqda -3 bal çıxılır; ən azı 31536000 (1 il) tövsiyə olunur. includeSubDomains və preload olmaması yalnız məlumat xarakterlidir.

2. Content-Security-Policy (CSP)

Nə edir: Saytınızda hansı skriptlərin, obyektlərin, stillərin və çərçivələrin icra oluna biləcəyini məhdudlaşdırır və XSS təhlükəsini zərərsizləşdirir.

Tövsiyə olunan güclü baza:

Content-Security-Policy: default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none';

Qiymətləndirmə qaydası: script-src (və ya default-src) daxilində 'unsafe-inline', 'unsafe-eval', *, data:, http: istifadəsi, yaxud object-src 'none' / base-uri əskikliyi siyasəti Zəif (-5) kimi qiymətləndirilir. Yalnız Content-Security-Policy-Report-Only göndərilməsi aktiv qoruma sayılmır (-10), lakin qaydaları canlı saytda test etmək üçün ən təhlükəsiz yoldur.

3. X-Frame-Options

Nə edir: Saytınızın kənar <iframe> daxilində gizlədilərək istifadəçilərin aldadılmasının (clickjacking) qarşısını alır.

X-Frame-Options: DENY

4. X-Content-Type-Options

Nə edir: Brauzerin fayl növünü təyin olunmuş MIME növündən fərqli yozmasının qarşısını alır.

X-Content-Type-Options: nosniff

5. Referrer-Policy

Nə edir: İstifadəçi kənar keçidə keçdikdə ünvan sətrindəki həssas məlumatların kənar saytlara sızmasını əngəlləyir.

Referrer-Policy: strict-origin-when-cross-origin

6. Permissions-Policy

Nə edir: Kamera, mikrofon, geolokasiya kimi istifadə olunmayan aparat imkanlarını deaktiv edir.

Permissions-Policy: camera=(), microphone=(), geolocation=()

7. Cross-Origin-Opener-Policy (COOP)

Nə edir: Saytınızın açıldığı brauzer kontekstini kənar mənşəli pəncərələrdən təcrid edir, yan-kanal və pəncərə sızması risklərini azaldır.

Cross-Origin-Opener-Policy: same-origin

Necə Düzəltməli (10 Platforma üçün Hazır Kodlar)

Serverinizi və ya hostinq platformanızı seçərək istehsalata hazır təhlükəsizlik qaydalarını kopyalayın. Sərt CSP siyasətlərini tətbiq etməzdən əvvəl Content-Security-Policy-Report-Only rejimində sınayın.

10 platforma
Diqqət: CSP siyasətini əvvəlcə Content-Security-Policy-Report-Only rejimində test edin ki, saytın funksiyalarını bloklamasın.
# /etc/nginx/conf.d/security.conf
# Diqqət: CSP siyasətini əvvəlcə Content-Security-Policy-Report-Only rejimində test edin ki, saytın funksiyalarını bloklamasın.
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "DENY" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
add_header Cross-Origin-Opener-Policy "same-origin" always;
# Test in report-only mode first: Content-Security-Policy-Report-Only
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; style-src 'self'; img-src 'self' data:; font-src 'self'; object-src 'none'; base-uri 'self'; frame-ancestors 'none';" always;
server_tokens off;

DNS, E-poçt Doğrulaması, DNSSEC və RDAP

E-poçt autentifikasiya standartları hakerlərin sizin domeninizin adından saxta məktub göndərməsinin qarşısını alır, DNSSEC və RDAP isə infrastruktur bütövlüyünü qoruyur.

SPF (Sender Policy Framework)

Domeninizin DNS TXT qeydində yerləşir. SurfaceScan include və redirect keçidlərini rekursiv izləyərək RFC 7208 üzrə maksimum 10 DNS sorğusu limitini yoxlayır. Birdən çox v=spf1 qeydi və ya >10 sorğu SPF-in sıradan çıxmasına səbəb olur (-5). +all və ya ?all hər kəsə adınızdan məktub göndərmək icazəsi verir (-10).

v=spf1 include:_spf.google.com ~all

DKIM (DomainKeys Identified Mail)

SurfaceScan 10 geniş yayılmış DKIM selektorunu (default, google, selector1, selector2, k1, k2, s1, s2, mail, dkim) yoxlayır. Selektorlar gizli və fərdi ola bildiyi üçün tapılmaması yalnız məlumat xarakterlidir və bal çıxılmır.

DMARC (Domain-based Message Authentication)

_dmarc.<domen> ünvanında yerləşir. SPF/DKIM yoxlamasından keçməyən məktubların bloklanmasını (p=reject və ya p=quarantine) təmin edir.

v=DMARC1; p=reject; rua=mailto:[email protected]; pct=100

CAA (Certification Authority Authorization)

Domeniniz üçün yalnız icazə verilən mərkəzlərin SSL sertifikatı buraxmasına şərait yaradır.

example.com. IN CAA 0 issue "letsencrypt.org"

DNSSEC və Domen Qeydiyyat Müddəti (RDAP)

SurfaceScan Cloudflare DNS-over-HTTPS (AD bayrağı) vasitəsilə DNSSEC statusunu neytral məlumat kimi göstərir. Domenin bitmə tarixi rdap.org üzərindən oxunur: 30 gündən az qalıbsa -5, vaxtı keçibsə -10 bal çıxılır; RDAP dəstəklənmədikdə bal çıxılmadan Unknown göstərilir.

TLS və Sertifikat Təhlükəsizliyi

Transport Layer Security (TLS) brauzerlərlə serveriniz arasındakı bütün trafiki şifrələyir:

  • Müasir protokollar: Yalnız TLSv1.3 və TLSv1.2 aktiv olmalıdır. SSLv3, TLSv1.0 və TLSv1.1 deaktiv edilməlidir.
  • Açar gücü: RSA açarları ən azı 2048 bit olmalıdır. Müasir ECDSA P-256 sertifikatları daha sürətli TLS bağlantısı təmin edir.
  • Avtomatik yeniləmə: Sertifikatın bitməsinə 14 gündən az qalmamış yenilənməsi tövsiyə olunur.

Alt-domen Ələkeçirmədən Müdafiə

Subdomain takeover (alt-domen ələkeçirmə) DNS qeydinin (əsasən CNAME) artıq silinmiş və ya sahibsiz qalmış kənar bulud xidmətinə (GitHub Pages, Heroku, S3 və s.) işarə etməsi nəticəsində yaranır.

Həll yolu

İstifadədən çıxarılan hər hansı bulud xidmətini dayandırdıqda ona uyğun CNAME və ya ALIAS DNS qeydlərini dərhal silin.

Qiymətləndirmə Qaydası

Hər bir domen 100 bal ilkin qiymətlə başlayır. Aşkarlanan çatışmazlıqlara görə cərimə balları çıxılır və minimum 0-da dayanır (dərəcələr: A+ ≥ 97, A ≥ 90, B+ ≥ 80, B ≥ 70, C ≥ 60, D ≥ 50, F < 50):

Yoxlama Şərt Bal çıxılması
SSL / TLS Sertifikatı 443 portuna qoşulmur, sertifikat vaxtı keçib, etibarsızdır, TLS 1.0/1.1 və ya < 2048-bit RSA -40
SSL / TLS Bitmə Müddəti Sertifikatın bitməsinə 14 gündən az vaxt qalıb -15
Alt-domen Ələkeçirmə Sahibsiz bulud resursuna yönlənən ölü CNAME qeydi aşkarlandı -20
Strict-Transport-Security (HSTS) Strict-Transport-Security cavab başlığı yoxdur -10
Zəif HSTS max-age Strict-Transport-Security max-age 15552000 (6 ay) dəyərindən aşağıdır; 31536000 tövsiyə olunur -3
Content-Security-Policy (CSP) Content-Security-Policy başlığı yoxdur (və ya yalnız Report-Only təyin olunub) -10
Zəif Content-Security-Policy CSP script-src/default-src içində unsafe-inline, unsafe-eval, *, data:, http: istifadə edir və ya object-src 'none' / base-uri yoxdur -5
Clickjacking Qoruması X-Frame-Options və CSP frame-ancestors hər ikisi yoxdur -5
X-Content-Type-Options X-Content-Type-Options: nosniff başlığı yoxdur -5
Referrer-Policy Referrer-Policy cavab başlığı yoxdur -3
Permissions-Policy Permissions-Policy cavab başlığı yoxdur -2
Cross-Origin-Opener-Policy (COOP) Cross-Origin-Opener-Policy başlığı yoxdur (same-origin tövsiyə olunur) -2
HTTP-dən HTTPS-ə Yönləndirmə Adi HTTP sorğusu avtomatik HTTPS-ə yönləndirilmir -5
Təhlükəsiz Olmayan CORS Credentials ilə wildcard CORS (*) və ya istənilən Origin əks olunması -10
Zəif Kuki Bayraqları Set-Cookie başlığında Secure, HttpOnly və ya SameSite əskikdir -3
Kənar Skriptlər və SRI Kənar domenlərdən yüklənən <script> teqlərində integrity atributu yoxdur -3
Aktiv Qarışıq Məzmun (Mixed Content) HTTPS səhifə etibarsız http:// üzərindən aktiv resurslar (<script>, stil, <iframe>) yükləyir -5
Çatışmayan SPF Qeydi Domen üzrə v=spf1 DNS TXT qeydi tapılmadı -5
Xətalı SPF Siyasəti Birdən çox SPF qeydi (>1) və ya 10 rekursiv DNS sorğusu limitinin aşılması (SPF işləməyəcək) -5
Açıq SPF (+all / ?all) SPF +all və ya ?all ilə bitir (istənilən şəxs domeninizin adından e-poçt göndərə bilər) -10
Çatışmayan və ya Zəif DMARC _dmarc TXT qeydi yoxdur və ya siyasət p=none olaraq qalıb -5
DNS CAA Qeydləri Certificate Authority Authorization (CAA) qeydi yoxdur -2
RFC 9116 security.txt /.well-known/security.txt faylı yoxdur və ya müddəti bitib -2
Domen Qeydiyyat Müddəti Bitib RDAP üzrə domenin qeydiyyat müddəti artıq bitib -10
Domen Müddəti Tezliklə Bitir RDAP üzrə domenin qeydiyyat müddəti 30 gündən azdır -5
HSTS includeSubDomains / preload includeSubDomains və ya preload parametrləri əskikdir (məlumat xarakterli) Məlumat xarakterli (0)
DNSSEC Təsdiqləməsi Cloudflare DoH üzərindən DNSSEC AD bayrağı yoxlanışı (məlumat xarakterli) Məlumat xarakterli (0)
DKIM Selektor Yoxlanışı 10 geniş yayılmış DKIM selektorunu yoxlayır; xüsusi selektorlar görünməyə bilər (məlumat xarakterli) Məlumat xarakterli (0)
RDAP Əlçatanlığı TLD üçün RDAP dəstəklənmirsə və ya xəta verərsə, bal çıxılmadan Unknown göstərilir Məlumat xarakterli (0)
MTA-STS / TLS-RPT / BIMI _mta-sts, _smtp._tls və default._bimi DNS TXT qeydlərini yoxlayır (məlumat xarakterli) Məlumat xarakterli (0)
Server / Çərçivə Versiyası Açıqlaması Server və ya X-Powered-By cavab başlıqlarında açıqlanan versiyaları göstərir (məlumat xarakterli) Məlumat xarakterli (0)

Terminlər Lüğəti

SNI (Server Name Indication)
TLS bağlantısının əvvəlində hansı domen sertifikatının tələb olunduğunu göstərən genişlənmə.
COOP (Cross-Origin-Opener-Policy)
Səhifəni kənar domen pəncərələrindən təcrid edən müdafiə başlığı.
RDAP (Registration Data Access Protocol)
Domenin qeydiyyat və bitmə tarixini öyrənmək üçün WHOIS-in müasir JSON əvəzləyicisi.
RFC 9116 (security.txt)
Təhlükəsizlik tədqiqatçılarının boşluqları bildirməsi üçün standart əlaqə faylı formatı.