Neden livehttpheaders adımı ve şifremi göstermektedir ve bunu nasıl önleyebilirsiniz?

6 Cevap php

Ben livehttpheaders plugin for Firefox bakarak ve benim giriş sayfasını test etmeye karar verildi. Ben içinde gösterilen parametreler adımı ve şifremi içerdiğini fark ettim. Örneğin:

username=sarmenhb&password=thepassword&submit=Login

düz İngilizce.

Ben don diğer sitelerde bu göremiyorum.

Ne yanlış yapıyor olabilir? Ben bir güvenlik kusur olarak görüyorum. Giriş sayfası, öyle her kullanıcı doğrulamak ve log. Tüm alanlar (ilgili olduğu durumda) mysql_real_escape_string ile koştu.

6 Cevap

Bilgi istemci bazı nasıl sunucuya almak zorundadır. Eğer güvenlik konusunda endişeli iseniz SSL kullanın.

Bu oturum açma sayfasına karma göndermek için önemsiz olduğunu ve karma etkili bir şifre olur çünkü Javascript, bu does not help bir MD5 hash yapmak bile. Onlar, ya da taşıma, şifreli kadar her şey düz metin vardır. POST the variables, use SSL.

Aşağıda benim yorumun eklemek. Onlar AJAX, POST yöntemi veya doğrulamak için başka bir istemci tarafı mekanizmasını kullanabilir çünkü diğer siteleri için başlıkları görmek olmayabilir.

Bu da binanın kapıcı için web tabanlı bir arayüze sahip büyük bir şehir, belli bir binanın (Ben diğerleri diğer yerlerde vardır eminim) hatırlatıyor. Sakinleri (http üzerinden) bir web sitesinde oturum ve onların yokluğunda vb onarım için kendi daire girmek için izin kim (diğer şeyler arasında) belirleyebilirsiniz. Ben her şey bir 'guru' olan birinin yeğeni tarafından programlanmış eminim.

Ben eminim, biz diyelim good enough.

Livehttpheaders GET istekleri için URL'yi gösterir, ancak POST istekleri için içerik görünmüyor çünkü siteniz için değil, başkaları için bunu görüyoruz.

GET istekleri ile giriş bilgilerinizi gönderme GET istekleri için URL'leri bu onlara POST gönderme üzerinde küçük bir ekstra bir güvenlik deliği, genellikle ise hemen hemen hiç kimse POST içeriğini kaydeder, çeşitli yerlerde kaydedilir. Webserver günlükleri bakmak izni ile herkesin CEO şifresini bilmeniz izniniz var mı?

Eğer https:for giriş, verileri GET veya POST kullanmak ister düz metin olarak ağ üzerinden gidiyor kullandığınız sürece Ancak, diğerleri dikkat çekmişlerdir. Bu hemen hemen her zaman kötü.

Yine de, bir ara tedbir olarak ben size sunucunuzun günlüklerinde kullanıcı adlarını ve şifreleri depolamak sona kalmamak, bir POST değil GET olarak kullanıcı adı ve şifre şeyler göndermek için app değiştirmek istiyorum - tel üzerinden https kullanarak faydası yok Eğer sunucu üzerinde yeterince korumalı logfile kullanıcı adı ve şifre yazıyor şey yapıyoruz.

Eğer http kullanarak bir form göndermek zaman zaman görüyoruz, formun içeriği, "net" tel üzerinden gönderilir. Bu form gönderme kimlik bilgilerini içeren, o zaman evet, bir güvenlik sorunu var.

Lütfen alternatifler arasında yer almaktadır:

  • Over-the-wire iletişim şifrelenir, böylece https kullanmak
  • OpenID kapalı kullanıcının OpenID sağlayıcı üzerine https kimlik yönetimini iter giriş için kullanın
  • Formu göndermeden önce kimlik bilgilerini şifrelemek için istemci tarafında Javascript kullanın

İkinci yaklaşım, kimlik bilgilerini şifrelemek için mekanizma javascript incelemek için umurunda herkes tam olarak görülebilir çünkü, çok dikkatli değilseniz belaya insanları almak eğilimindedir.

Aslında, benim site için https POST yöntemi kullanıyorum. ama yine de ben adını görmek mümkün duyuyorum & Firefox Live HTTP başlıklarını yardımı ile düz metin parola.

Live HTTP Başlıkları da POST isteği gösterir.

Neden bu kadar oluyor?

HTTP canlı başlığı yanı sıra POST istekleri gösterir. GET yapar ama tek fark değişkenleri GET url kendisi geçti ama POST onlar HTTP başlığına eklenen varlık olarak post verisini aynı şekilde gönderir.

JS şifreleme daha iyi güvenlik yararlanmak için (sadece şifre veya token + şifre). Ama bu yine de diyelim ki MD5 veya başka herhangi bir özetleme tekniği için gökkuşağı tabloları kullanarak kesmek olabilir.

SSL yüksek güvenlik sağlamak için tek yoldur.