it-swarm-tr.com

Çok çeşitli limanlar açmanın tehlikeleri? (Mosh)

Güvenlik duvarlarını neden özellikle izin vermediğimiz tüm trafiği filtreleyecek şekilde yapılandırıyoruz? Sistemimizde kötü amaçlı yazılım çalıştırmıyorsak, bize hiçbir şey satın almayan derinlemesine savunma için ekstra bir güvenlik katmanı mıdır?

Açma söz konusu olduğunda, gelen UDP bağlantıları için 60000 ila 61000 numaralı bağlantı noktalarının, yalnızca birkaç bağlantı noktası açmaktan çok daha az güvenli olduğu söylenebilecek herhangi bir tehlike var mı?

Ben sadece mobil ssh (wifi/cep telefonu üzerinden) yapmak için daha iyi bir yol olarak tanıtan mosh duydum. Mosh TCP yerine UDP kullanır, bu nedenle kısa bir süre için bir tünel girerseniz veya IP adresiniz değişirse (cep telefonu kulelerini değiştirerek), tıkanıklık kontrolünden geri dönmek veya yeni bir ssh oturumu oluşturmak için beklemek zorunda değilsiniz. Temel olarak mosh, bir mosh sunucusunu ayrıcalıklı olmayan bir kullanıcı olarak uzaktan başlatmak için ssh'yi kullanır, ssh kullanarak AES-OCB anahtarını değiştirir ve daha sonra 60000-61000 aralığındaki bir bağlantı noktasına şifreli paketleri (sıra numaralarıyla) gönderir/alır. güvenlik duvarınızı açılacak şekilde yapılandırın.

Gelen (UDP) bağlantılar için ~ 1000 bağlantı noktası açmaktan biraz rahatsızım, ancak bunun için iyi bir neden düşünemiyorum. Bu bağlantı noktasındaki verileri dinleyen bir yazılım yoksa, yok sayılır mı? (Düzenleme: hayır - aslında sunucuyu ICMP (ping) hedefine ulaşılamayan yanıt göndermeye yönlendirir). Sanırım sunucumda kötü amaçlı yazılım çalışıyorsa, bu açılan bağlantı noktalarından birinde sahte IP adreslerinden gelen talimatları dinlemek için beklemiş olabilir. Bununla birlikte, internete bağlı bir sistemde çalışan kötü amaçlı yazılımlar zaten diğer kötü amaçlı yazılım sunucularından bağlantılar kurabilir/bilgi indirebilir (ancak bir IP adresini bilmeleri gerekir) ve talimatları getirebilir, bu da güvenliği daha az güvenli hale getirmez.

EDIT: İlginç, sadece gördüm diğer sor hangi hakkında okumak beni --- DP_flood_attack . Ayrıca ek olarak sistemimin yeni açılan UDP bağlantı noktaları için ping hedefine ulaşılamayan yanıtlar göndermesini bir şekilde devre dışı bırakmam gerekir.

29
dr jimbob

Justin'in yanlışlıkla uzaktan erişilecek uygulamaları açma konusundaki cevabına ek olarak, hiçbir şey özel olarak bir bağlantı dinlemiyor olsa bile, işletim sisteminin HER ZAMAN dinleyeceğini unutmayın - yalnızca uygun işleme yönlendirmek/eşleştirmek veya reddetmek için veya sessizce paketi bırakın. Bu nedenle, işletim sistemi hala bir güvenlik duvarı trafiğin "etkin olmayan" bir bağlantı noktasına akmasına izin verdiğinde korumasız kalabilen belirli bir saldırı vektörüdür.

Ancak, bu senaryoda her şeyin eşit olması, bir inaktif port veya 1000 inaktif port açılması çok az fark yaratır. Ama kesinlikle en az ayrıcalık ilkesinin tavsiyelerine dikkat edin.

11
logicalscope

Anladığım kadarıyla, Mosh'un gerçekten çalışmak için bin limana ihtiyacı yok; sadece bir tane gerekir (müşteri başına). Böylece herhangi bir bağlantı noktasını açabilir ve Mosh'a onu kullanmasını söyleyebilirsiniz ( manuel ):

mosh -p 60000 my.server

Bağlantı noktasını rasgele seçmenin nedeni nedir? Bunu anlamıyorum.

[GÜNCELLEME] rastgele bir bağlantı noktası seçmiyor. İlk açık olanı bulmak için bir dizi bağlantı noktasını arar ( bkz. Kod ). Bunu yapmazsanız, çok kullanıcılı bir sistemde manuel olarak ücretsiz bir bağlantı noktası seçmeniz gerekir.

Bu, sunucunuzda yalnızca kullanıcılara (mosh kullanabilen kişiler) sahip olduğunuz kadar bağlantı noktasına ihtiyacınız olduğu anlamına gelir. Kendi kutunuzsa, sadece 60000 numaralı bağlantı noktasını açmanız gerekir.

11
Leonid Shevtsov

Sorun, çok çeşitli bağlantı noktalarının açılması, bir saldırganın bu bağlantı noktalarını kullanan başka bir uygulamayı açığa çıkarmasına izin verebilmesidir. Örneğin, hasta kayıtlarını depolamak için kullanılan EMR uygulamam, bu bağlantı noktası aralığını kullanacak şekilde yapılandırılmış olabilir, ancak güvenilmeyen Internet'ten birinin bu açıktan yararlanabilmesini istemiyorum. Mümkün olduğu kadar az en az hakka sahip olmak gerekir. Bu senaryolarda, bu bağlantı noktası aralığını açık hale getirecek bir VPN'den yararlanmak istersiniz. Bu, kimlik doğrulama ve dolayısıyla yetkilendirme sorununu halleder. Harici güvenlik duvarınız hakkında konuşmanız DMZ Yalnızca protokol/bağlantı noktası düzeyinde güveniyorsanız ve bu nedenle daha da katı olmanız gerekir.

6
Justin Andrusk

Mosh'ın UDP bağlantı noktası aralığını en aza indirmek

https://github.com/keithw/mosh/blob/master/src/network/network.h#L77

Doğru anladıysam, gönderen sürecin UDP bağlantı noktasını seçeceği aralık budur. Bu yüzden yerel bir "dar aralıklı" mosh baskısı derlemek ve mosh için uygun bir yerel "dar aralıklı" güvenlik duvarı UDP politikasına sahip olmak mümkün olmalıdır.

Bu da beni şu meta soruya getiriyor: bir aralık, yosunun yararlı olması için yeterince geniş mi?

Doğru anladıysam, mosh sunucusu başına bir port gereklidir. Bu nedenle, kişisel bir sunucu ve tmux'un (= sadece bir istemci) alışılmış kullanımı durumunda, biri çalışmak için ve diğeri işleri düzeltmek için gereklidir.

Ama yanılmış olabilirim, ben C kodlayıcı değilim ve dün dün mosh keşfettim.

4
Peter