İnternete bağlı herhangi bir makinedeki açık portları kapatmak yaygın bir bilgidir ve bu nedenle yaygın bir uygulamadır.
Örneğin, tipik bir program iletişim kanalı olarak xyz bağlantı noktasını kullanırsa ve bu programda bu bağlantı noktasından kullanılabilecek bir güvenlik açığı varsa, aynı saldırı neden 80 numaralı bağlantı noktası aracılığıyla başarılı olmaz?
Sahte programımız 888 numaralı bağlantı noktasını kullandığından ve bu güvenlik açığından yararlanılabilecek bir güvenlik açığına sahip olduğundan, bu güvenlik açığından neden 80 TCP (HTTP ve neredeyse açıktır) herhangi bir makine)?
Web sunucusundaki 80 numaralı bağlantı noktası yalnızca BENZERSİZ bir tür TCP paket) dinliyor mu? Yalnızca belirli bir tür paketi kabul ediyor mu?
Bir bilgisayar korsanı neden bir TCP paketini kötü amaçlı bir dizeyle oluşturmaya, HTTP paketinin içine yerleştirmeye ve bu nedenle web sunucusuna saldırmaya çalışamıyor?
Hizmetler bağlantı noktalarını dinler. Web sunucuları (bir hizmet) 80 numaralı bağlantı noktasını dinler, ancak bu sadece standarttır, zor bir kural değildir. Herhangi bir hizmeti herhangi bir bağlantı noktasında dinlemek üzere yapılandırabilirsiniz. 'Özel paketler' ile ilgili değil, istediğiniz hizmeti almak için 'doğru port numarasını çevirme' ile ilgili.
Sahte programınızın bir güvenlik açığı varsa, saldırıya uğrayabilir atandığı bağlantı noktasında. Dinlemediği portlarda bir programa saldıramazsınız. Başka bir bağlantı noktasına (örneğinizdeki bağlantı noktası 80 gibi) saldırmaya çalışırsanız, programınıza ulaşılamaz.
Öyleyse son sorunuz biraz garip: "Bir bilgisayar korsanı neden kötü niyetli bir dizeyle TCP paketi oluşturmaya çalışamaz, HTTP paketinin içine yerleştiremez ve bu nedenle web sunucusuna saldıramaz?" Bilgisayar korsanlarının yaptıkları IS. Ama vurmak istedikleri hizmetin limanını hedef alıyorlar. Ama belki de bu soruyu verdiğim bilgilere dayanarak hassaslaştırabilirsiniz.
Peki, neden limanları kapatalım? Çünkü Internet'e maruz bırakabileceğiniz güvenlik açığı bulunan hizmetlerin sayısını azaltmak istiyorsunuz.
"Bağlantı noktalarını engelleme", gerçekten ne yapmak istediğimizi belirtmenin yaklaşık bir yoludur, bu da bazı hizmetler erişimini engeller.
Yeni yüklenen bir işletim sistemi genellikle otomatik olarak çalışan ve bazıları bir ağ bölümüne sahip olan bazı şeylere sahiptir. Böyle bir hizmetteki ağdan yararlanılabilecek güvenlik açıkları, bir saldırgan için potansiyel bir erişim kapısıdır. Bununla birlikte, bu tür servislere geniş İnternet'teki herkes tarafından erişilebilir olması nadiren önemlidir. Örneğin, bir Web sunucusu olduğu düşünülen bir makine için, yeryüzündeki herkesin belirli "Web" hizmetine (bu işlevidir) erişmeye çalışması normaldir ve SSH hizmetinin de açık olması normaldir ( böylece sunucu yöneticisi sunucuyu yönetebilir); ancak, bu sunucu için dosya paylaşım hizmetlerinin de yaygın olarak kullanılmasının bir faydası yoktur.
Belirli bir bağlantı noktasına erişimi engelleme güvenlik duvarında yapılabilir ve bir yazılım vesilesiyle işletim sistemini belirli bir hizmeti çalıştırmamaya ikna etmeye çalışmaktan ya da yeni hizmetler icat etmekten daha zaman tasarruflu olarak kabul edilir. Güncelleme. Bu nedenle, dünya çapında erişilebilir olması gereken hizmetlere (örneğin Web ve SSH için sırasıyla 80 ve 22) karşılık geldiği bilinen tümü bağlantı noktalarını hariç engellemek gelenekseldir.