HTTPS

HTTPS (HTTP Secure, Türkçe güvenli hiper metin aktarım iletişim protokolü) bir bilgisayar ağı üzerinden  güvenli iletişim için internet üzerinde yaygın olarak kullanılan bir HTTP( hiper metin aktarım iletişim protokolü) uzantısıdır. HTTPS'te, iletişim protokolü Taşıma Katmanı Güvenliği (TLS) veya öncesinde, onun öncülü/selefi olan Güvenli Soket Katmanı (SSL)
ile şifrelenir. Bu nedenle protokol  sık sık  HTTP üzerinden TLS veya HTTP üzerinden SSL olarak da adlandırılır.
HTTPS için temel motivasyon, erişilen web sitesinin kimlik doğrulaması ve aktarılan verilerin alışverişi sırasında gizliliğin ve bütünlüğünün korunmasıdır. Ortadaki adam saldırılarına karşı korur. Bir istemci ve sunucu arasındaki iletişimin iki yönlü şifrelenmesi, haberleşmeyi gizlice dinlemeye ve kurcalamaya karşı korur. Uygulamada, bu, bir saldırganın aksine, iletişim kurmayı amaçladığı web sitesiyle saldırganların müdahalesi olmaksızın iletişim kurulmasını güvence altına alır.
Geçmişte, HTTPS bağlantıları öncelikle World Wide Web'deki ödeme işlemleri, e-posta ve kurumsal bilgi sistemlerinde hassas işlemler için kullanılmıştır. 2018'den itibaren, HTTPS, öncelikli olarak web sitesinin her türünde sayfa gerçekliğini korumak için, güvenlikli olmayan HTTP' den daha sık olarak web sitelerinde hesapları ve kullanıcı iletişimlerini güvenli tutmak ve web' de gizlilik ihlal edilmeden gezinmek gibi işler için kullanılmaktadır

Web sitelerinde kullanımı

Kasım 2017 itibarıyla, Alexa'nın en üst düzey 1.000.000 web sitesinin% 27,7'si varsayılan olarak HTTPS kullanıyor,  İnternetin  en popüler 141,387 web sitesinin %43.1' i HTTPS i güvenli olarak uyguluyor, ve sayfa yüklemelerinin %70'i ( Firefox Telemetri ölçümlerine göre) HTTPS kullanıyor.

Güvenlik

HTTPS' in güvenliğinin dayandığı TLS, genellikle uzun süreli açık ve özel anahtarları kullanarak daha sonra sunucu ile istemci arasındaki mesajların şifrelenmesinde kullanılacak olan kısa süreli oturum anahtarlarını oluşturur. X. 509 sertifikaları ,  sunucunun (ve bazen de istemcinin) kimliğini doğrulamak için kullanılır. Bunun sonucunda sertifika otoriteleri ve açık anahtar sertifikaları ,sertifika ve onun sahibi arasındaki ilişkiyi doğrulamak ve üretmek, imzalamak ve sertifikaların geçerliliğini yönetmek için gereklidir. Bu, kimlikleri bir güven ağı aracılığıyla doğrulamaktan daha faydalı olsa da,2013 kitlesel gözetleme ifşalamaları, sertifika otoritelerinin ortadaki adam saldırılarına izin veren potansiyel bir zayıf nokta olduklarına dikkat çekti.
 Bu bağlamda önemli bir özellik ileriye dönük gizliliktir, bu da geçmişte kaydedilen şifreli iletişimin uzun vadeli gizli anahtarların veya parolaların gelecekte ele geçirilmesi geçmişteki oturum anahtarlarının ele geçirilmesine sebep olmaması olarak açıklanabilir. Tüm web sunucuları ileri gizlilik sağlamaz.
Bir site, tamamen HTTPS üzerinden çalışmalıdır , HTTP üzerinden yüklenen bir parçası varsa(örneğin güvensiz bir biçimde yüklenmiş bir komut dosyası olursa ) kullanıcı bazı saldırılara ve gözetlenmeye açık olacaktır. Ayrıca, bir web sitesinin sadece hassas bilgiler içeren sayfası(örneğin oturum açma sayfası) HTTPS üzerinden çalışırsa, geri kalan kısım düz HTTP üzerinden yükleneceği için saldırılara maruz kalacaktır.
Bir yerde hassas bilgiler içeren bir sitede, siteye HTTPS yerine HTTP ile her erişildiğinde, kullanıcı ve oturum açıkta kalır. Benzer şekilde, HTTPS aracılığıyla sunulan bir sitedeki çerezlerin güvenli özniteliğe sahip olması gerekir.

HTTP 'den Farkı

HTTPS URL'leri "https: //" ile başlar ve varsayılan olarak bağlantı noktası(port) 443'ü kullanırken, HTTP URL'leri "http: //" ile başlar ve varsayılan olarak bağlantı noktası(port) 80'i kullanır.
HTTP şifrelenmemiş ve ortadaki adam saldırısı ve dinleme saldırılarına açık olduğu için saldırganlar web sitesi hesaplarına erişim elde edip web sitesini değiştirebilir ya da kötü amaçlı yazılım enjekte edebilirler. HTTPS, bu tür saldırılara dayanacak şekilde tasarlanmıştır ve bunlara karşı güvenli olarak kabul edilir (SSL'nin eski, kullanımdan kaldırılmış sürümleri hariç).

Ağ katmanları

HTTP, TCP / IP modelinin en üst katmanında, iletimden önce bir HTTP mesajını şifreleyen ve varışta bir mesajın şifresini çözen TLS güvenlik protokolü (aynı katmanın alt alt katmanı olarak çalışır) gibi, Uygulama katmanında çalışır. HTTPS ayrı bir protokol değildir, ancak şifreli bir SSL / TLS bağlantısı üzerinden normal HTTP kullanılmasını ifade eder.
HTTPS mesajındaki her şey, başlıklar ve istek / yanıt yükü dahil şifrelenir. Aşağıdaki sınırlama bölümünde açıklanan olası CCA şifreleme saldırısı haricinde, saldırgan sadece iki taraf ile alan adları ve IP adresleri arasında bir bağlantı olduğunu bilir.

Server kurulumu

Bir web sunucusunu HTTPS bağlantısını kabul etmeye hazırlamak için, yönetici sunucu için açık anahtar sertifikası oluşturmalıdır. Bu sertifikanın web tarayıcısı tarafından uyarı vermeden kabul edilebilmesi için güvenilir bir sertifika otoritesi tarafından imzalı olması gerekir. Otorite ,sertifika sahibinin, bunu sunan web sunucusunun operatörü olduğunu onaylar. Web tarayıcıları genelliklebüyük sertifika yetkililerinin imza sertifikalarının bir listesiyle dağıtılır, böylece onlar tarafından imzalanan sertifikaları doğrulayabilirler.

Sertifika edinme

Let's Encrypt 2016 Nisanda  web sitelerine ücretsiz ve otomatik SSL/TLS sertifikaları sağlamaya başladı.  Electronic Frontier Foundation' a göreElectronic Frontier Foundation'a göre, "Let's Encrypt", HTTP'den HTTPS'ye geçişi "tek bir komut vermek kadar kolay" veya "tek bir tuşa tıklayarak" yapacak. Web hostlarının ve bulut sağlayıcılarının büyük bir kısmı, müşterileri için ücretsiz sertifikalar sağlayan Let's Encrypt 'in ürününü kullanıyor.

Erişim kontrolünde kullanmak

Sistem, bir web sunucusuna erişimi yetkili kullanıcılara sınırlamak için istemci kimlik doğrulaması amacıyla da kullanılabilir. Bunu yapmak için site yöneticisi, genellikle her kullanıcı için bir sertifika oluşturur ve tarayıcıya yüklenen bir sertifika oluşturur.Normalde bu, yetkili kullanıcının adını ve e-posta adresini içerir ve kullanıcının kimliğini doğrulamak için, muhtemelen bir parola bile girmeden, her yeniden bağlantıda sunucu tarafından otomatik olarak kontrol edilir.

Özel(gizli) Anahtarın Açığa çıkması durumunda

Bu bağlamda önemli bir özellik mükemmel ileri gizliliktir (PFS).
Bir HTTPS oturumu oluşturmak için kullanılan uzun vadeli asimetrik gizli anahtarlardan birine sahip olmak, kısa süreli oturum anahtarının türetilmesini daha kolay hale getirmemeli, daha sonrasında konuşmanın şifresini çözülmesine sebep olmamalıdır.Diffie – Hellman anahtar değişimi (DHE) ve Eliptik eğri Diffie – Hellman anahtar değişimi (ECDHE) 2013'te bu özelliğe sahip olduğu bilinen 2 yöntemdir. Firefox, Opera ve Chromium Browser oturumlarının yalnızca% 30'u bunu kullanır ve Apple'ın Safari ve Microsoft Internet Explorer oturumlarının yaklaşık% 0'ı kullanır.
 Daha büyük internet sağlayıcıları arasında yalnızca Google 2011'den bu yana PFS'yi desteklemektedir (Eylül 2013).
Bir sertifikanın süresi dolmadan bazı durumlarda(örneğin özel anahtarın gizliliği tehlikeye girmiş olduğunda) iptal edilebilir.
Firefox gibi popüler tarayıcıların daha yeni sürümleri, Opera, ve Internet Explorer üzerinde Windows Vista Çevrimiçi Sertifika Durum Protokolü (OCSP) uygulayarak bu durumun oluşup oluşmadığını doğrular. Tarayıcı, sertifikanın seri numarasını sertifika otoritesine veya temsilcisine OCSP aracılığıyla gönderir ve otorite yanıt verir; tarayıcıya sertifikanın hala geçerli olup olmadığını söyler.

Tarih

Netscape Communications ,Netscape Navigator web tarayıcısı için 1994 yılında HTTPS'yi oluşturdu. Başlangıçta, HTTPS SSL protokolü ile kullanıldı. SSL, Aktarım Katmanı Güvenliği'ne (TLS) dönüştükçe, HTTPS, Mayıs 2000'de RFC 2818 tarafından resmi olarak belirtildi.