Başka bir hizmetle değil, yalnızca 443 numaralı bağlantı noktasındaki yasal web sunucusu trafiğine izin veren bir güvenlik duvarı oluşturmak mümkün müdür?


19

Herhangi bir bağlantı noktasını kullanmamı engelleyen çoğu güvenlik duvarını atlamak için her zaman basit numarayı kullandım. Sadece 443 numaralı bağlantı noktasındaki sunucularımdan birine ssh açtım ve oradaki tüm trafiği tünelledim.

Ancak şimdi daha önce hiç görmediğim bir güvenlik duvarına sahip bir ağdayım ve bunun mümkün olduğunu bile bilmiyordum.

Bu ağda 443 bağlantı noktasını yalnızca yasal web sunucusu trafiği için kullanabilirsiniz. Eğer ssh veya 443 numaralı bağlantı noktasındaki herhangi bir şeyi açarsam ve bu ağdan oraya bağlanmayı denersem, hemen öldürülür. Bu sunucuda apache başlatırsam çalışır.

Bu nasıl mümkün olabilir? Meşru https trafiği olduğunu doğrulamak için şifreli trafiği analiz edebilen süper gelişmiş güvenlik duvarları var mı? Nasıl?


4
Adı SPI, daha yüksek uç ekipmanı daha gelişmiş kontroller yapabilir ve istenmeyen bağlantıları kesebilir.
Linef4ult

Beyaz liste oluşturabilir ve yalnızca trafiğin sorununa izin vermesi meşru web sunucusu trafiğinin değişebilir olması nedeniyle, ip adresleri yeniden atanabilir, bu yüzden bugün Microsoft ne olabilir yarın Google olabilir. Sunucularınızla iletişim kurmak için güvenli bir tünel kullanmaktan ve izin verilen müşterilerin bir beyaz listesini oluşturmaktan daha iyi bir durumda olursanız, daha sonra gelecek müşterilere ek müşteriler ekleme prosedürünü belirleyin (çünkü bu liste değişecektir).
Ramhound

SSH trafiğini zararsız HTTP (S) trafiği olarak engellemek için örneğin Obfsproxy kullanabilirsiniz.
Michael

Yanıtlar:


26

Evet, ve burada herhangi bir sihre ihtiyaçları yok, sadece TCP paketinin içeriği ile önemsiz eşleşmeleri gerekiyor. SSH ve TLS (SSL) kendi şifrelemek olsa yükleri , protokol başlıklarını kendileri hala ayırt ve birbirinden çok farklıdır. Örneğin, bir SSHv2 bağlantısı daima müşteri gönderimiyle başlar SSH-2.0-(client name and version). Benzer şekilde, güvenlik duvarınız TLS bağlantısının içinde HTTP olup olmadığını gerçekten bilemese de, TLS'nin kendisini tanıyabilir .

TCP'nin üzerindeki katmanların bu şekilde denetlenmesi genellikle nispeten yaygın bir özellik olan "Derin Paket Denetimi" altına girer.

Bunu atlamanın açık bir yolu, SSH'yi TLS içinde tünellemektir - örneğin, sersemletici, haproxy veya sniproxy. (443 numaralı bağlantı noktasının TLS üzerinden SSH'ye tahsis edildiği düz tünele ek olarak, SNI ve ALPN'i temel alarak aynı bağlantı noktası üzerinden SSH / HTTP / diğer protokolleri çoğaltabilirler.)

Bu her zaman gerçekten karmaşık trafik analizini yenmeyecek olsa da, sadece "bu bir TLS başlığı gibi görünüyor" u kontrol eden filtrelerin çoğunu atlayacaktır.


Ve sonra can sıkıcı bir güvenlik duvarı var - TLS'yi tüm trafiğin şifresini çözmek ve yeniden şifrelemek için engelleyenler . Bunlar aslında TLS'nin içini görebilir ve diğer her şeyi engellerken HTTP isteklerini iletebilir. (Bazı virüsten koruma programlarının da aynı şeyi yaptığına dikkat edin.) Bu tür bilgileri sunucu sertifikalarına bakarak tanıyabilirsiniz; Proxy tarafından üretilen tüm sertifikalar aynı görünür ve gerçek sertifikalar çeşitli CA'lar tarafından verilirken çoğu zaman onaylamayı geçemez.


1
Yani SSH, TLS üzerinden başka bir protokol olmaktan ziyade, uygulama düzeyinde kendi güvenliğini sağlıyor (varsayılan olarak kullanmıyor).
Medinoc

2
@Medinoc: Evet, benzer özellikleri uygular (SSHv2 "transport" ve "authentication" katmanlarında ) ve hiçbir şey için TLS'ye ihtiyaç duymaz.
saat

Bu koklayıcı güvenlik duvarlarını tanımanın güvenilir bir yolu var mı? Https kullanırken birinin şifremi kesiyor olduğu fikrinden hoşlanmıyorum. Şimdiye kadar mümkün olduğunu bilmiyordum.
Petr

2
POST / HTTP / 1.0 base64garbage HTTP / 200 200 Tamam base64garbage taşıma protokolü yapıyor
Joshua

3
@Petr Grawity'nin sözlerini uzatma, eğer bir bilgisayar sahibi bir işverense, muhtemelen size vermeden önce sertifikalar yüklenmişti; MITM güvenlik duvarı, sertifikalarını kullanmadığınız takdirde https trafiğine izin vermeyecek, böylece seçimleriniz politikaya uygun olacak veya https alamayacak şekilde yapılandırılacaktır. OTOH bu durumda, sertifikanın kontrol edilmesi "İşveren Adı tarafından doğrulandı" gibi bir şey ve daha derin bir şekilde delinirse CA adına benzer bir şey söyleyecektir. örneğin çalışma bilgisayarımda bluecoat.companyname.com (bluecoat kullanılan güvenlik duvarının markasıdır).
Dan Neely,
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.