Ang HTTPS dili kanunay nga ingon ka luwas sa ingon. Ang mga kahuyangan nga nakit-an sa 5,5% sa mga site sa HTTPS

Ang HTTPS dili kanunay nga ingon ka luwas sa ingon. Ang mga kahuyangan nga nakit-an sa 5,5% sa mga site sa HTTPS
Usa sa nanguna nga mga site ni Alexa (sentro nga lingin), gi-secure sa HTTPS, nga adunay mga subdomain (gray) ug mga dependency (puti), diin adunay mga huyang (dashed shading)

Karong panahona, ang HTTPS secure connection icon nahimong standard ug bisan usa ka kinahanglanon nga attribute sa bisan unsang seryoso nga site. Kung ang sertipiko nawala, hapit tanan nga bag-o nga mga browser nagpakita sa usa ka pasidaan nga Ang koneksyon sa site "dili luwas" ug ayaw irekomendar ang pagbalhin sa kompidensyal nga impormasyon niini.

Apan kini nahimo nga ang presensya sa usa ka "lock" sa address bar dili kanunay nga garantiya sa proteksyon. Pagsusi sa 10 ka nanguna nga mga site gikan sa rating, gipakita ni Alexa nga daghan kanila ang naa sa kritikal nga mga kahuyangan sa mga protocol sa SSL / TLS, kasagaran pinaagi sa mga subdomain o dependency. Sumala sa mga tagsulat sa pagtuon, ang pagkakomplikado sa modernong mga aplikasyon sa web labi nga nagdugang sa pag-atake sa nawong.

Mga resulta sa panukiduki

Ang pagtuon gihimo sa mga eksperto gikan sa University of Venice Ca' Foscari (Italy) ug sa Vienna Technical University. Ipresentar nila ang usa ka detalyado nga taho sa ika-40 nga IEEE Symposium sa Seguridad ug Pagkapribado, nga ipahigayon sa Mayo 20-22, 2019 sa San Francisco.

Ang nag-una nga 10 ka Alexa nga naglista sa mga HTTPS nga mga site ug 000 nga may kalabutan nga mga host gisulayan. Ang mga bulnerable nga cryptographic configurations nakit-an sa 90 nga mga host, nga mao, gibana-bana nga 816% sa kinatibuk-an:

  • 4818 bulnerable sa MITM
  • Ang 733 huyang sa hingpit nga pag-decryption sa TLS
  • Ang 912 huyang sa partial TLS decryption

Ang 898 nga mga site hingpit nga bukas sa pag-hack, sa ato pa, gitugotan nila ang pag-injection sa mga script sa ikatulo nga partido, ug ang 977 nga mga site nag-load sa sulud gikan sa dili maayo nga giprotektahan nga mga panid nga mahimong makig-uban sa usa ka tig-atake.

Gipasiugda sa mga tigdukiduki nga taliwala sa 898 nga "hingpit nga nakompromiso" nga mga kapanguhaan mao ang mga online nga tindahan, serbisyo sa pinansyal ug uban pang dagkong mga site. Ang 660 sa 898 ka mga site nag-download sa mga eksternal nga script gikan sa mga huyang nga mga host: kini ang panguna nga gigikanan sa peligro. Sumala sa mga tagsulat, ang pagkakomplikado sa modernong mga aplikasyon sa web labi nga nagdugang sa pag-atake sa nawong.

Nakit-an usab ang ubang mga problema: 10% sa mga porma sa pagtugot adunay mga problema sa luwas nga pagpasa sa kasayuran, nga naghulga nga ma-leak ang mga password, gitugotan sa 412 nga mga site ang interception sa mga cookies ug pag-hijack sa sesyon, ug ang 543 nga mga site gipailalom sa mga pag-atake sa integridad sa cookie (pinaagi sa mga subdomain) .

Ang problema mao nga sa bag-ohay nga mga tuig sa SSL / TLS protocol ug software nakaila sa daghang mga kahuyangan: POODLE (CVE-2014-3566), BEAST (CVE-2011-3389), KRIMEN (CVE-2012-4929), BREACH (CVE-2013-3587), ug Heartbleed (CVE-2014-0160). Aron mapanalipdan batok kanila, daghang mga setting ang gikinahanglan sa server ug kliyente nga bahin aron malikayan ang paggamit sa mga daan nga mahuyang nga mga bersyon. Apan kini usa ka dili hinungdanon nga pamaagi, tungod kay ang ingon nga mga setting naglakip sa pagpili gikan sa usa ka halapad nga hugpong sa mga cipher ug mga protocol, nga lisud sabton. Dili kanunay klaro kung unsang mga cipher suite ug protocol ang gikonsiderar nga "igong luwas".

Girekomenda nga mga setting

Walay opisyal nga giaprobahan ug giuyonan sa listahan sa girekomendar nga mga setting sa HTTPS. Busa, Mozilla SSL Configuration Generator nagtanyag daghang mga kapilian sa pag-configure, depende sa gikinahanglan nga lebel sa proteksyon. Pananglitan, ania ang girekomenda nga mga setting alang sa nginx 1.14.0 server:

Modernong Mode

Labing karaan nga gisuportahan nga mga kliyente: Firefox 27, Chrome 30, IE 11 sa Windows 7, Edge, Opera 17, Safari 9, Android 5.0, ug Java 8

server {
listen 80 default_server;
listen [::]:80 default_server;

# Redirect all HTTP requests to HTTPS with a 301 Moved Permanently response.
return 301 https://$host$request_uri;
}

server {
listen 443 ssl http2;
listen [::]:443 ssl http2;

# certs sent to the client in SERVER HELLO are concatenated in ssl_certificate
ssl_certificate /path/to/signed_cert_plus_intermediates;
ssl_certificate_key /path/to/private_key;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;


# modern configuration. tweak to your needs.
ssl_protocols TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';
ssl_prefer_server_ciphers on;

# HSTS (ngx_http_headers_module is required) (15768000 seconds = 6 months)
add_header Strict-Transport-Security max-age=15768000;

# OCSP Stapling ---
# fetch OCSP records from URL in ssl_certificate and cache them
ssl_stapling on;
ssl_stapling_verify on;

## verify chain of trust of OCSP response using Root CA and Intermediate certs
ssl_trusted_certificate /path/to/root_CA_cert_plus_intermediates;

resolver <IP DNS resolver>;

....
}

Medium nga suporta

Labing karaan nga gisuportahan nga mga kliyente: Firefox 1, Chrome 1, IE 7, Opera 5, Safari 1, Windows XP IE8, Android 2.3, Java 7

server {
listen 80 default_server;
listen [::]:80 default_server;

# Redirect all HTTP requests to HTTPS with a 301 Moved Permanently response.
return 301 https://$host$request_uri;
}

server {
listen 443 ssl http2;
listen [::]:443 ssl http2;

# certs sent to the client in SERVER HELLO are concatenated in ssl_certificate
ssl_certificate /path/to/signed_cert_plus_intermediates;
ssl_certificate_key /path/to/private_key;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;

# Diffie-Hellman parameter for DHE ciphersuites, recommended 2048 bits
ssl_dhparam /path/to/dhparam.pem;

# intermediate configuration. tweak to your needs.
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
ssl_prefer_server_ciphers on;

# HSTS (ngx_http_headers_module is required) (15768000 seconds = 6 months)
add_header Strict-Transport-Security max-age=15768000;

# OCSP Stapling ---
# fetch OCSP records from URL in ssl_certificate and cache them
ssl_stapling on;
ssl_stapling_verify on;

## verify chain of trust of OCSP response using Root CA and Intermediate certs
ssl_trusted_certificate /path/to/root_CA_cert_plus_intermediates;

resolver <IP DNS resolver>;

....
}

Daang Suporta

Labing karaan nga gisuportahan nga mga kliyente: Windows XP IE6, Java 6

server {
listen 80 default_server;
listen [::]:80 default_server;

# Redirect all HTTP requests to HTTPS with a 301 Moved Permanently response.
return 301 https://$host$request_uri;
}

server {
listen 443 ssl http2;
listen [::]:443 ssl http2;

# certs sent to the client in SERVER HELLO are concatenated in ssl_certificate
ssl_certificate /path/to/signed_cert_plus_intermediates;
ssl_certificate_key /path/to/private_key;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
ssl_session_tickets off;

# Diffie-Hellman parameter for DHE ciphersuites, recommended 2048 bits
ssl_dhparam /path/to/dhparam.pem;

# old configuration. tweak to your needs.
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:ECDHE-RSA-DES-CBC3-SHA:ECDHE-ECDSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:DES-CBC3-SHA:HIGH:SEED:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!RSAPSK:!aDH:!aECDH:!EDH-DSS-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA:!SRP';
ssl_prefer_server_ciphers on;

# HSTS (ngx_http_headers_module is required) (15768000 seconds = 6 months)
add_header Strict-Transport-Security max-age=15768000;

# OCSP Stapling ---
# fetch OCSP records from URL in ssl_certificate and cache them
ssl_stapling on;
ssl_stapling_verify on;

## verify chain of trust of OCSP response using Root CA and Intermediate certs
ssl_trusted_certificate /path/to/root_CA_cert_plus_intermediates;

resolver <IP DNS resolver>;

....
}

Girekomenda nga gamiton nimo kanunay ang full cipher suite ug ang pinakabag-o nga bersyon sa OpenSSL. Ang cipher suite sa mga setting sa server nagtino sa prayoridad diin sila gamiton, depende sa mga setting sa kliyente.

Gipakita sa panukiduki nga dili igo nga mag-install lang usa ka sertipiko sa HTTPS. "Samtang wala kami nagdumala sa mga cookies sama sa among gibuhat kaniadtong 2005, ug ang 'disenteng TLS' nahimong kasagaran, kini nahimo nga kini nga mga sukaranan nga mga butang dili igo aron makuha ang usa ka katingad-an nga daghang mga sikat nga site," isulti ang mga tagsulat sa trabaho. Aron kasaligan nga mapanalipdan ang channel tali sa server ug kliyente, kinahanglan nimo nga bantayan pag-ayo ang imprastraktura gikan sa imong kaugalingon nga mga subdomain ug mga host sa ikatulo nga partido diin gihatag ang sulud sa site. Tingali makatarunganon ang pag-order sa usa ka pag-audit gikan sa pipila nga kompanya sa ikatulo nga partido nga espesyalista sa seguridad sa kasayuran.

Ang HTTPS dili kanunay nga ingon ka luwas sa ingon. Ang mga kahuyangan nga nakit-an sa 5,5% sa mga site sa HTTPS

Source: www.habr.com