Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Zabezpečení Domino HTTP
Josef Honc, M-COM
2
Hlavní partneři a prezentátoři
3
Zabezpečení domino HTTP serveru
Základní typy útoků a ochrana proti nim Přístup k serveru Komunikační protokoly
4
Základní typy útoků Znemožnění poskytování služby (DoS)
Přetížení pomocí DDoS, případně zneužití zranitelnosti služby nebo protokolu Získání neoprávněného přístupu k serveru resp. datům Uživatelské přístupové údaje – jméno, heslo, session cookie Zachycení a následné dešifrování přenášených dat Cookie: Zneužití zranitelností služeb, starších šifrovacích protokolů a algoritmů (CRIME, BEAST/Lucky13, BREACH, Heartbleed, Poodle) Heslo: Social engineering, Phishing, brute force
5
Jak se proti útokům chránit
Aktualizace Nastavení „Best Practices“ Testování
6
Zabezpečení přístupu k serveru
Enforce server access settings Use more secure Internet Passwords Internet password lockout Ochrana internetových hesel pomocí xACL Vynucení složitosti internetových hesel Nastavení cache pro změnu HTTP hesla
7
Enforce Server Access Settings
8
Use more secure Internet Passwords
9
Use more secure Internet Passwords
10
Use more secure Internet Passwords
11
Internet password lockout
12
Ochrana internetových hesel pomocí xACL
Configuring xACLs to protect Internet Password fields in the Domino Directory
13
Vynucení složitosti internetových hesel
Od verze za podmínek: ID Vault – včetně povolení pro iNotes UserID uloženo v poštovní databázi Heslo je změněno pomocí uživatelských předvoleb v iNotes How to implement a Custom Password Policy for iNotes users
14
Nastavení cache pro změnu HTTP hesla
HTTP server udržuje v platnosti staré heslo 48 hod Cache nastavena z důvodu konsistence při replikaci Notes.ini: HTTP_Pwd_Change_Cache_Hours=0 Can the time in which a changed Internet password is cached ever be modified
15
Zabezpečení přenosové vrstvy
Kryptografické protokoly Šifrovací algoritmy Optimalizace nastavení HTTP serveru
16
Kryptografické protokoly
Domino podporuje nativně pouze SSL 3.0 (SSL2.0 standardně deaktivován) Podpora pro TLS1.0 v 9.0.1FP2HF384 (vydán ) IBM HTTP Server podporuje TLS 1.2 (Domino 9.0.x Windows) Defined Protocol Year SSL 1.0 n/a SSL 2.0 1995 SSL 3.0 1996 TLS 1.0 1999 TLS 1.1 2006 TLS 1.2 2008 TLS 1.3 TBD
17
Šifrovací algoritmy
18
Výchozí konfigurace Domino
SSL 3.0 Selfsigned certifikát pomocí certsrv.nsf (512b public key, MD5 hash) Výchozí šifrovací algoritmy
19
Test konfigurace SSL
20
Platný certifikát 2048 bit SHA1
21
Povolení silnějších šifer
22
Povolení silnějších šifer
23
SSL_DISABLE_RENEGOTIATE=1
Zakázání insecure renegotiation pomocí parametru SSL_DISABLE_RENEGOTIATE=1 v notes.ini na domino serveru
24
9.0.1 FP2IF1 Výchozí konfigurace domino (bez úprave) jen s důvěryhodným certifikátem a výchozími středními šiframi (slabé šifry jsou po instalaci fixu implicitně zakázány)
25
9.0.1 FP2IF1 – silnější šifry Po povolení silnějších šifer (AES) – slabé šifry jsou po instalaci fixu implicitně zakázány Lepší nastavení není možné, nelze kompletně vypnout SSLv3, aktivovat Forward Secrecy nebo Strict Transport Security
26
Podpora SHA-2 v Notes/Domino 9.x
Domino FP2 IF1 / Domino 9.0 IF6 Notes FP2 IF2 Kyrtool (KYRTool_9x_ClientServer) – import klíču a certifikátů z PEM do KYR Planned SHA-2 deliveries for IBM Domino 9.x
27
IBM HTTP server + Podpora TLS1.2 Založen na Apache 2.2.8
Součástí Domino 9.0.x na OS Windows Nepodporuje Perfect Forward Secrecy Is it possible to run IBM HTTP Server (IHS) on the same computer as a Domino server?
28
IBM HTTP Server
29
IBM HTTP server
30
Konfigurační úpravy v domino.conf
LoadModule rewrite_module modules/mod_rewrite.so RewriteEngine on #presmerovani HTTP na HTTPS RewriteCond %{SERVER_PORT}=80 RewriteRule ^(.*) [R,L] #zakazani metod TRACK a TRACE RewriteCond %{REQUEST_METHOD} ^TRACE RewriteRule .* - [F] RewriteCond %{REQUEST_METHOD} ^TRACK <VirtualHost *:443> SSLEnable SSLProtocolDisable SSLv2 SSLProtocolDisable SSLv3 #nastaveni HSTS Header always set Strict-Transport-Security "max-age= ; includeSubDomains„ # preferovane sifrovaci alogoritmy SSLCipherSpec ALL NONE SSLCipherSpec TLSv12 TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 SSLCipherSpec TLSv12 TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 SSLCipherSpec TLSv12 TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 SSLCipherSpec TLSv12 TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 SSLCipherSpec ALL TLS_RSA_WITH_AES_128_GCM_SHA256 SSLCipherSpec ALL TLS_RSA_WITH_AES_256_GCM_SHA384 SSLCipherSpec ALL TLS_RSA_WITH_AES_128_CBC_SHA256 SSLCipherSpec ALL TLS_RSA_WITH_AES_256_CBC_SHA256 SSLCipherSpec ALL TLS_RSA_WITH_AES_128_CBC_SHA SSLCipherSpec ALL TLS_RSA_WITH_AES_256_CBC_SHA SSLCipherSpec ALL SSL_RSA_WITH_3DES_EDE_CBC_SHA </VirtualHost> KeyFile c:\IBM\Domino\ihs\sutol2.kdb SSLDisable Kompletní vypnutí SSLv3, komunikace je výhradně protokoly TLSv1.0 a vyšší
31
IBM HTTP server
32
Alternativní řešení reverzní proxy
Apache HTTP server Nginx Pound Reverse proxy
33
Nginx - default
34
Nginx – po ladění Po zapnutí Strict Transport Security.
Kompletní konfigurace nginx, pozor tato je z windows, což produkčně nedoporučuju. #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen :80; server_name sutol2.m-com.cz; server_tokens off; access_log logs/sutol2_http.log main; location / { return 301 proxy_set_header Host $http_host; error_page /err/50x.html; location /err { root c:/nginx/html; # HTTPS server # listen :443; server_name sutol2.m-com.cz.cz; access_log logs/sutol2.log main; ssl on; ssl_certificate sutol2.crt; ssl_certificate_key sutol2.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS"; # podpora RC4 pro starší klienty, kteří nic lepšího neumí (XP, IE6) # ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS +RC4 RC4"; ssl_prefer_server_ciphers on; # silnejsi DH parametry – nutno vygenerovat pomoci OpenSSL ssl_dhparam dhparam.pem; # Enable HSTS (HTTP Strict Transport Security) add_header Strict-Transport-Security "max-age= ;includeSubDomains"; proxy_next_upstream off; proxy_redirect off; proxy_buffering off; client_max_body_size 20M; client_body_buffer_size 128k; #proxy_set_header X-Forwarded-Host $host; #proxy_set_header X-Forwarded-Server $host; #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass # redirect server error pages to the static page /50x.html location /err {
35
Vyšší zabezpečení Domino HTTP
Zakázání metod TRACE: HTTPDisableMethods=TRACE Skrytí identifikace HTTP serveru: DominoNoBanner=1
36
Zabezpečení Session Cookie
37
Děkujeme za pozornost M-COM s.r.o. Josef Honc
Web:
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.