Zəifliyin qarşısını almaq üçün Təhlükəsizlik HTTP başlıqlarını necə həyata keçirmək olar?

Bilirsinizmi, təhlükəsizlik zəifliklərinin əksəriyyəti cavab başlıqlarında lazımi başlıqları tətbiq etməklə düzəldilə bilər?


Təhlükəsizlik veb saytınızın məzmunu və SEO qədər vacibdir və minlərlə veb sayt səhv tənzimləmə və ya qorunma olmaması səbəbi ilə hack edilir. Bir veb sayt sahibi və ya təhlükəsizlik mühəndisisinizsə və veb saytınızı qorumaq istəsəniz Klik oyunu, kod injection, MIME növləri, XSS, və s. hücumlar edərsə, bu təlimat sizə kömək edəcəkdir.

Bu yazıda, bir çox veb serverində, şəbəkə kənarında həyata keçirmək üçün müxtəlif HTTP başlıqları haqqında danışacağam & Veb saytın daha yaxşı qorunması üçün CDN təminatçıları.

Qeydlər:

  • Dəyişiklik etməzdən əvvəl konfiqurasiya sənədinin bir nüsxəsini götürməyiniz tövsiyə olunur
  • Bəzi başlıqlar bütün brauzerlərdə dəstəklənə bilməz uyğunluğunu yoxlayın həyata keçirilmədən əvvəl.
  • Bu başlıqları tətbiq etmək üçün Mod_headers Apache-də aktiv olmalıdır. Aşağıdakı satırın httpd.conf faylında bölünməməsini təmin edin.

LoadModule başlıqları / modul modulları / mod_headers.so

  • Tətbiq sonrası, nəticələri yoxlamaq üçün təhlükəsiz başlıqlar onlayn vasitəsindən istifadə edə bilərsiniz.

WordPress istifadə olunur ?: istifadə etməyə cəhd edə bilərsiniz HTTP başlıqları plagin, bu başlıqlara və daha çoxuna diqqət yetirir.

X-XSS-Qoruma

X-XSS-Müdafiə başlığı bəzi səviyyələrin qarşısını ala bilər XSS (cross-site-scripting) hücumları və bu IE 8+, Chrome, Opera, Safari ilə uyğun gəlir & Android.

Google, Facebook, Github bu başlıqdan istifadə edir və nüfuzetmə test məsləhətçilərinin çoxu bunun həyata keçirilməsini xahiş edəcəkdir.

Bu başlığı konfiqurasiya edə biləcəyiniz dörd mümkün yol var.

Parametr dəyəriMəna
0XSS filtri əlil
1XSS filtri hücum aşkarlandığı təqdirdə səhifəni aktivləşdirdi və təmizlədi
1; rejim = blokXSS filtri işə salındı ​​və hücum aşkarlandığı təqdirdə səhifənin göstərilməsinin qarşısını aldı
1; hesabat = http: //example.com/report_URIXSS filtri işə salındı ​​və hücum aşkarlandığı təqdirdə pozuntu barədə məlumat verdi

Həyata keçirək 1; rejim = blok aşağıdakı veb serverlərdə.

Apache HTTP Server

Apache veb-serverinizin httpd.conf-a aşağıdakı girişi əlavə edin

Başlıq X-XSS-Müdafiə dəsti "1; rejimi = blok"

Doğrulama üçün apache’i yenidən başladın

Nginx

Nginx.conf-da http blokunun altına aşağıdakıları əlavə edin

add_header X-XSS-Mühafizə "1; rejimi = blok";

Bunun veb səhifənizdəki cavab başlığında əks olunması üçün Nginx yenidən başladın.

MaxCDN

İstifadə edirsinizsə MaxCDN, sonra başlıq əlavə etmək asan və tez bir zamanda.

Edge qaydalarına gedin >> “Yeni Qayda” düyməsini basın və açılan yerdən “X-XSS-Qoruma Başlığı əlavə et” seçin.

edgerules

Microsoft IIS

  • IIS menecerini açın
  • Üçün başlığı aktivləşdirməlisiniz Saytı seçin
  • “HTTP Cavab Başlıqları” na gedin.
  • Tədbirlər altında “Əlavə et” vurun
  • Adı, dəyəri daxil edin və “Ok” düyməsini basın

iis-x-xss-qorunması

  • Nəticələri görmək üçün IIS’i yenidən başladın

HTTP sərt nəqliyyat təhlükəsizliyi

Bir brauzerdən bütün rabitəni təmin etmək üçün HSTS (HTTP Strict Transport Security) başlığı HTTPS (HTTP Secure) üzərindən göndərilir. Bu HTTPS düyməsini basaraq qarşısını alır və HTTP sorğularını HTTPS-ə yönləndirir.

Bu başlığı tətbiq etməzdən əvvəl, veb saytınızın bütün saytlarının HTTPS üzərindən əlçatan olmasını təmin etməlisiniz, əks halda onlar bloklanacaqdır.

HSTS başlığı IE, Firefox, Opera, Safari və Chrome kimi brauzerin bütün əsas son versiyalarında dəstəklənir. Üç parametr konfiqurasiya var.

Parametr dəyəriMəna
maksimum yaşBir brauzerə sorğuların yalnız HTTPS üzərindən mövcud olduğunu söyləmək üçün müddəti (saniyədə).
daxildirSubDomainsKonfiqurasiya subdomain üçün də etibarlıdır.
əvvəlcədən yükləyinDomeninizin daxil olmasını istəyirsinizsə istifadə edin HSTS əvvəlcədən yükləmə siyahısı

Buna görə HSTS-in bir il ərzində konfiqurasiyasını, o cümlədən domen və alt domen üçün əvvəlcədən yüklənməsini misal gətirək.

Apache HTTP Server

Httst-i Apache-də httpd.conf faylına aşağıdakı girişi əlavə etməklə həyata keçirə bilərsiniz

Başlıq sərt-nəqliyyat-təhlükəsizlik təyin etdi "maksimum yaş = 31536000; daxildirSubDomains; əvvəlcədən yükləyin"

Nəticələri görmək üçün apache’i yenidən başladın

Nginx

Nginx-də HSTS-i konfiqurasiya etmək üçün növbəti girişini nginx.conf-da server (SSL) direktivinə əlavə edin

add_header Strict-Transport-Security ‘max-age = 31536000; daxildirSubDomains; əvvəlcədən yükləmə ‘;

Həmişə olduğu kimi, yoxlamaq üçün Nginx-ı yenidən başlatmalısınız

Buludlar

Cloudflare istifadə edirsinizsə, onda bir neçə kliklə HSTS-i aktivləşdirə bilərsiniz.

  • Giriş Buludlar və saytı seçin
  • “Kriptovalyutası” nişanına gedin və “HSTS’i aktiv et” düyməsini basın.

cloudflare-hsts-config

Parametrləri lazım olanı seçin və dəyişikliklər sürətli tətbiq ediləcəkdir.

Microsoft IIS

IIS menecerini başladın və müvafiq sayt üçün “HTTP Cavab başlıqlarına” gedərək başlığı əlavə edin.

iis-hsts

Saytı yenidən başladın

X-Çərçivə-Seçimlər

Qarşısını almaq üçün X-Çərçivə-Seçimlər başlığından istifadə edin Klik oyunu veb saytınızdakı zəiflik. Bu başlığı tətbiq etməklə brauzerinizə veb səhifənizi çərçivə / iframe içərisinə yapışdırmamağı tapşırırsınız. Bu brauzer dəstəyində bəzi məhdudiyyətlərə malikdir, buna görə tətbiq etmədən əvvəl yoxlamaq məcburiyyətindəsiniz.

Aşağıdakı üç parametrləri konfiqurasiya edə bilərsiniz.

Parametr dəyəriMəna
SAMEORIGINÇərçivə / iframe tərkibinə yalnız eyni sayt mənşəli icazə verilir.
DENYFrame / iframe istifadə edərək məzmununuzu daxil etmək üçün hər hansı bir domenin qarşısını alın.
ALL-FROMMəzmunu yalnız müəyyən bir URI-də düzəltməyə icazə verin.

Gəlin necə həyata keçiriləcəyinə nəzər salaqDENY“Buna görə heç bir domen veb səhifəni daxil etmir.

Apache

Aşağıdakı sətri httpd.conf-a əlavə edin və nəticələri yoxlamaq üçün veb-serveri yenidən başladın.

Başlıq həmişə X-Çərçivə-Seçimlər DENY əlavə edir

Nginx

Nginx.conf-a aşağıdakıları server direktivi / bloku altında əlavə edin.

add_header X-Çərçivə-Seçimlər “DENY”;

Nəticələri yoxlamaq üçün yenidən başladın

F5 LTM

Aşağıdakı və müvafiq virtual server ilə əlaqəli bir iRule yaradın.

zaman HTTP_RESPONSE {

HTTP :: başlıq əlavə edin "X-ÇƏRÇİ VƏZİFƏLƏR" "DENY"

}

Bir şeyi yenidən başlatmaq lazım deyil, dəyişikliklər havada əks olunur.

WordPress

Bu başlığı WordPress vasitəsilə də həyata keçirə bilərsiniz. Aşağıdakıları bir wp-config.php faylına əlavə edin

başlıq (‘X-Çərçivə-Seçimlər: DENY);

Faylı redaktə etmək rahat deyilsə, burada və ya yuxarıda izah edildiyi kimi bir plagin istifadə edə bilərsiniz.

Microsoft IIS

Müvafiq sayt üçün “HTTP Cavab başlıqlarına” gedərək başlığı əlavə edin.

iis-x-frame-variantları

Nəticələri görmək üçün saytı yenidən başladın.

X-məzmun tipi seçimlər

Qarşısını almaq MIME bu başlığı veb səhifənizin HTTP cavabına əlavə edərək təhlükəsizlik riskini təyin edir. Bu başlığa sahib olmaq brauzerə fayl növlərini müəyyən edilmiş kimi nəzərdən keçirməyi və məzmunun qarışdırılmasını qadağan etməyi tapşırır. “Nosniff” əlavə etməyiniz üçün yalnız bir parametr var.

Görün bu başlığı necə reklam etmək olar.

Apache

Bunu httpd.conf faylındakı aşağıdakı sətri əlavə etməklə edə bilərsiniz

Başlıq X-məzmun tipi seçimlər nosniff

Konfiqurasiyanı aktiv etmək üçün Apache brauzerini yenidən başlatmağı unutmayın.

Nginx

Aşağıdakı sətri server blokunun altına nginx.conf faylına əlavə edin.

add_header X-Məzmun-Tip-Seçimlər nosniff;

Həmişə olduğu kimi, nəticələri yoxlamaq üçün Nginx-ı yenidən başlatmalısınız.

Microsoft IIS

IIS’i açın və HTTP Cavab Başlıqlarına gedin

Əlavə et vurun və Adı və Dəyərini daxil edin

iis-mime tipləri

Nəticələri yoxlamaq üçün OK düyməsini basın və IIS-i yenidən başladın.

HTTP İctimai Açar Pin

Adamı ortada minimuma endir (MİTM) sertifikat vuraraq riskə hücum edir. Bununla mümkündür HPKP (HTTP İctimai Açar Pin) başlığı.

Kök sertifikatının açıq açarını və ya dərhal sertifikatı bağlaya bilərsiniz. Yazı zamanı HPKP hazırda Firefox və Chrome-da işləyir və SHA-256 hash alqoritmini dəstəkləyir.

Dörd mümkün parametr konfiqurasiyası var.

Parametr dəyəriMəna
report-uri = “url”Pin təsdiqləməməsi halında göstərilən URL-ə bildirin. Bu isteğe bağlıdır.
pin-sha256 = “sha256key”Buradakı sancaqları göstərin
maksimum yaş =Vaxtı bir neçə saniyədə xatırlamaq üçün brauzer saytı yalnız bağlanmış düymələrdən birini istifadə etməklə əldə edə bilər.
Daxil edinSubDomainsBu alt alt domen üçün də tətbiq olunur.

Facebook.com-dan HPKP başlıq nümunəsini görək

public-key-pins-report-only: max-age = 500; pin-şa256 ="WoiWRyIOVNa9ihaBciRSC7XHjliYS9VwUGOIud4PB18 ="; pin-şa256 ="r / mIkG3eEpVdm + u / ko / cwxzOMo1bk4TyHIlByibiA5E ="; pin-şa256 ="q4PO2G2cbkZhZ82 + JgmRUyGMoAeozA + BSXVXQWB8XWQ ="; report-uri = http: //reports.fb.com/hpkp/

Bu, veb saytınızda həyata keçirməyiniz lazım olan bir şeydirsə, başına gedin Scott Helme tərəfindən yazılmış tətbiq bələdçisi.

Məzmun Təhlükəsizliyi Siyasəti

XSS, tıqqıltı qarşısını al, kod injection Məzmun Təhlükəsizliyi Siyasəti (CSP) başlığını veb səhifənizdə HTTP cavabında tətbiq edərək hücumlar. CSP veb saytına yükləmək üçün icazə verilən məzmunu yükləmək üçün brauzerə göstəriş verin.

Hamısı brauzerlər CSP-i dəstəkləmir, buna görə onu həyata keçirmədən əvvəl yoxlamalısınız. CSP başlıqlarına çatmağın üç yolu var.

  1. Məzmun-Təhlükəsizlik-Siyasət – Səviyyə 2 / 1.0
  2. X-məzmun-təhlükəsizlik-siyasət – köhnəlmiş
  3. X-Webkit-CSP – köhnəlmişdir

Hələ köhnəlmiş birini istifadə edirsinizsə, o zaman ən yenisini təkmilləşdirməyi düşünə bilərsiniz.

CSP tətbiq etmək üçün bir çox parametr var və müraciət edə bilərsiniz OWASP bir fikir üçün. Ancaq ən çox istifadə olunan iki parametrə keçək.

Parametr dəyəriMəna
default-srcHər şeyi müəyyən bir mənbədən yükləyin
skript-srcMüəyyən edilmiş mənbədən yalnız skriptləri yükləyin

Hər şeyi eyni mənşəli müxtəlif veb serverlərdə yükləməyin aşağıdakı nümunəsi.

Apache

Aşağıdakıları httpd.conf faylına əlavə edin və təsirli olmaq üçün veb-serveri yenidən başladın.

Başlıq Məzmun-Təhlükəsizlik-Siyasəti təyin etdi "default-src ‘özünü’;"

Nginx

Nginx.conf faylındakı server blokuna aşağıdakıları əlavə edin

add_header Məzmun-Təhlükəsizlik-Siyasət "default-src ‘özünü’;";

Microsoft IIS

IIS Manager-dəki müvafiq saytınız üçün HTTP Cavab başlıqlarına gedin və aşağıdakıları əlavə edin

iis-csp

X-İcazəli-Çarpaz Domain-Siyasətləri

PDF, Flash və s. Kimi Adobe məhsullarından istifadə edirsiniz? Bu başlığı brauzerə çarpaz bir domen üzərində istəkləri necə idarə etmək barədə təlimat vermək üçün tətbiq edə bilərsiniz. Bu başlığı tətbiq etməklə, resursdan sui-istifadə etməmək üçün saytınızın aktivlərini digər domenlərdən yükləməyi məhdudlaşdırırsınız.

Bir neçə variant mövcuddur.

DəyərTəsvir
heç biriheç bir siyasətə icazə verilmir
yalnız ustayalnız usta siyasətinə icazə verin
hamısıhər şeyə icazə verilir
yalnız məzmunlaYalnız müəyyən bir məzmun növünə icazə verin. Misal – XML
by-ftp-yalnızyalnız bir FTP server üçün tətbiq olunur

Apache

Hər hansı bir siyasətə icazə vermək istəmirsinizsə.

Başlıq X-İcazəli-Çarpaz Domain-Siyasətləri təyin etdi "heç biri"

Aşağıdakı kimi başlığı görməlisiniz.

Nginx

Və deyək ki, master tətbiq etməlisiniz, sonra server blokunun altında nginx.conf-a aşağıdakıları əlavə edin.

add_header X-İcazəli-Cross-Domain-Siyasətləri master-yalnız;

Və nəticə.

İstinad-Siyasət

Saytınızın referer-siyasətinə nəzarət etmək istəyirsiniz? Müəyyən gizlilik və təhlükəsizlik üstünlükləri var. Bununla birlikdə, bütün seçimlər bütün brauzerlər tərəfindən dəstəklənmir, buna görə tətbiq olunmadan əvvəl tələblərinizi nəzərdən keçirin.

Referrer-Policy aşağıdakı sintaksisi dəstəkləyir.

DəyərTəsvir
istinad etmirReferrer məlumatları sorğu ilə göndərilməyəcək.
heç referent-zaman-aşağıİstinadçinin HTTP ilə HTTP, HTTPS’den HTTPS ilə eyni protokola göndərildiyi standart parametr.
təhlükəli-urltam URL sorğu ilə göndəriləcəkdir.
eyni mənşəliReferrer yalnız eyni mənşəli sayt üçün göndəriləcəkdir.
sərt mənşəliyalnız bir protokol HTTPS olduqda göndərin
sərt mənşəli-zaman-çarpaz mənşəlitam URL HTTPS kimi ciddi bir protokol üzərindən göndəriləcəkdir
mənşəlibütün sorğularda mənbə URL göndərin
mənşə-zaman-çarpaz mənşəlieyni mənşəli FULL URL göndərin. Ancaq digər hallarda yalnız mənbə URL göndərin.

Apache

Referer təyin etmək istəsəniz aşağıdakıları əlavə edə bilərsiniz.

Başlıq Referrer-Policy təyin etdi "istinad etmir"

Yenidən başladıqdan sonra cavab başlıqlarında olmalısınız.

Nginx

Deyək ki, eyni mənşəli tətbiq etməlisiniz, buna görə aşağıdakıları əlavə etməlisiniz.

add_header Referrer-Policy eyni mənşəli;

Konfiqurasiya edildikdən sonra aşağıdakı nəticələrə sahib olmalısınız.

Gözləmək-CT

Təcrübə vəziyyətində olan yeni bir başlıq brauzerə veb serverləri ilə əlaqəni sertifikat şəffaflığı (CT) üçün təsdiqləməyi tapşırmaqdır. Google tərəfindən hazırlanan bu layihə SSL / TLS sertifikat sistemindəki bəzi çatışmazlıqları aradan qaldırmaq məqsədi daşıyır.

Gözləmək-CT başlığı üçün aşağıdakı üç dəyişən mövcuddur.

DəyərTəsvir
maksimum yaşSaniyələrdə, brauzer siyasəti nə qədər müddətə saxlaya bilər.
tətbiq etməkSiyasəti tətbiq etmək üçün əlavə bir göstəriş.
hesabat-uriEtibarlı sertifikat şəffaflığı alınmadıqda göstərilən URL-ə hesabat göndərmək üçün brauzer.

Apache

Güman edək ki, bu siyasəti, hesabatı və önbelleği 12 saat tətbiq etmək istəyirsən, sonra aşağıdakıları əlavə etməlisən.

Başlıq dəsti Gözləmə-CT ‘tətbiq edin, maksimum yaş = 43200, report-uri ="https://somedomain.com/report"’

Və nəticə budur.

Nginx

1 saat hesabat vermək və önbelleğe istəsəniz nə edərsiniz?

add_header Gözləmək-CT ‘maksimum age = 60, report-uri ="https://mydomain.com/report"’;

Çıxış olardı.

Xüsusiyyət-Siyasət

Veb tətbiqetməsində aktivləşdirmək və ya söndürmək üçün brauzerin geolokasiya, tam ekran, dinamik, USB, avtoplayat, dinamik, vibrasiya, mikrofon, ödəniş, vr və s. Xüsusiyyətləri.

Apache

Deyək ki, tam ekran funksiyasını deaktiv etməlisiniz və bunu etmək üçün aşağıdakıları httpd.conf və ya apache2.conf əlavə edə bilərsiniz..

Başlıq həmişə xüsusiyyət xüsusiyyətini təyin edir "tam ekran ‘heç’ "

Bir sətirdə birdən çox xüsusiyyətləri əlavə etmək necə?

Bu da mümkündür!

Başlıq həmişə xüsusiyyət xüsusiyyətini təyin edir "tam ekran ‘heç’; mikrofon ‘heç’"

Nəticəni görmək üçün Apache HTTP-ni yenidən başladın.

Yuxarıdakı kod brauzerə tam ekranı və mikrofonu söndürməyi tapşıracaqdır.

Nginx

Başqa bir misal çəkək – vibrasiya xüsusiyyətini deaktiv edin.

add_header Xüsusiyyət Siyasəti "titrəmək ‘heç’;";

Və ya, geolokasiya, kamera və dinamikləri deaktiv edin.

add_header Xüsusiyyət Siyasəti "geolokasiya ‘heç biri’; kamera ‘heç’; natiq ‘yox’;";

Nginx-ı yenidən başladıqdan sonra çıxışı.

Bütün Nginx konfiqurasiyası nginx.conf-da http blokunda və ya istifadə etdiyiniz hər hansı bir xüsusi fayl altında gedir.

Nəticə

Bir veb saytın təhlükəsizliyini təmin etmək çətindir və ümid edirəm ki, yuxarıdakı başlıqları tətbiq etməklə təhlükəsizlik qatını əlavə edirsiniz. Bir iş saytı işlədirsinizsə, bulud-WAF kimi istifadə etməyi də düşünə bilərsiniz SUCURI onlayn işinizi qorumaq üçün. SUCURI’nın yaxşı tərəfi təhlükəsizlik və performans təklif edir.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map