İçeriğe atla

Port knocking

Bilgisayar dünyasında port knocking terimi önceden belirlenmiş portlara yapılan bağlantı isteklerine göre istenilen portların açılması tekniğidir. Önceden belirlenmiş portlara yine önceden belirlenmiş zaman aralığında bağlantı isteği gönderilmesi ile birlikte ateş duvarı kuralları dinamik olarak değiştirilerek gerçekte istenilen servisin portları açılır. Bu uygulama güvenlik nedeni ile dışarıdan hizmet verildiğinin gizlenmek istendiği durumlarda oldukça kullanışlıdır.

Port knocking kullanılırken genel olarak karşı bilgisayardaki bir sunucu program ateş duvarı log dosyalarını inceler ve daha önce belirlenmiş bağlantı kalıbının görülmesi durumunda ateş duvarı ayarlarını değiştirerek istenilen hizmeti veren portun açılmasını sağlar.

Port knocking daha çok Secure Shell (Güvenli Kabuk - SSH) portunun, yani 22. portun açılması için kullanılmaktadır. Port knocking sayesinde kapalı görünen SSH için kullanılan 22. port bu gizli bağlantı bilgilerini bilen kişi için açılmaktadır. Port knocking için oldukça fazla değiştirilebilir ayar vardır. Portların sırası, belirli zaman aralıkları içinde sıra ile bağlantı isteği yollanması, belirli protokollerin kullanılması (TCP, UDP veya ICMP gibi), kaynak IP kısıtlamaları veya çeşitli şifrelenmiş bağlantı uygulamaları gibi.

Port knocking sistem tarafında çok az kaynak harcayan basit yazılımlar ile uygulanabilir. Port knocking uygulanan sunucuda hafif bir sunucu programı çeşitli portlara gelen paketleri loglara bakarak veya paketleri kaydederek dinler ve doğru durumlarda belirli port veya portları açabilir. Kullanıcı tarafında ise istemci programı karşı makineye istenilen bağlantıyı yapmadan önce daha önce belirlenmiş şekilde bağlantı istekleri gerçekleştirir.

Çoğunlukla port knocking programları, karşı kullanıcının doğru sıradaki isteklerinden sonra yanlış bir istekte bulunmaları durumunda hedef portu açmaz. Bunun olduğunu anlamanın tek yolu açılmasını beklediğiniz portun açılmamasıdır. Hiçbir zaman kullanıcıya bilgi yollanmaz, paket gönderilmez. Böylece rastgele port taraması yapan kötü niyetli kişilere portların açılması önlenmiş olur.

Güvenlik topluluklarında port knocking yöntemi geniş bir şekilde uygulanıyor olmasa bile, kullanımı gittikçe artmaktadır ve yeni bazı rootkitlerde de kullanılmaktadır.

Port Knocking teoride nasıl çalışır?

1. Adım

İstemci, sunucuda n portunu dinleyen uygulamaya bağlanamaz.

2. Adım

İstemci önceden belirlenmiş portlara önceden belirlenmiş şekilde (sırada, zamanda vs.) bağlantı açma istekleri (SYN Paketleri) yollar. İstemci sunucudaki port knocking programının iç yapısını bilmektedir ama bu işlem bitene kadar ona sunucudan herhangi bir doğrulama bilgisi yollanmaz.

3. Adım

Sunucuda çalışan port knocking programı doğru şekilde bağlantı isteği yapıldığını fark eder (bunu ya loglara bakarak ya da paketlere bakarak yapabilir) ve gerçekte istenilen portu (burada n portunu) o istemci için açar.

4. Adım

İstemci sunucuya normal şekilde bağlanarak normal kullanıcı doğrulama işlemlerinden geçer.

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">HTTP</span> iletişim protokolü

HTTP bir kaynaktan dağıtılan ve ortak kullanıma açık olan hiperortam bilgi sistemleri için uygulama seviyesinde bir iletişim protokolüdür. HTTP, World Wide Web için veri iletişiminin temelidir; burada köprü metni belgeleri, örneğin bir fare tıklamasıyla veya bir web tarayıcısında ekrana dokunarak kullanıcının kolayca erişebileceği diğer kaynaklara köprüler içerir.

POP3, OSI referans modelinin uygulama katmanında çalışan bir E-posta iletişim protokolüdür. Bu protokol yerel E-posta alıcıları tarafından uzak sunucudan E-postaları indirmek için kullanılır ve bu işlem TCP 110 numaralı port üzerinden gerçekleştirilir. POP ve IMAP günümüzde en çok kullanılan iki e-posta protokolüdür. Tüm güncel e-posta alıcıları ve sunucuları iki protokolü de destekler. POP birkaç versiyon olarak geliştirilmiştir ve şu anda standart olarak kullanılanı 3. versiyonudur. Bu yüzden POP3 adı kullanılır.

<span class="mw-page-title-main">Dosya aktarım iletişim kuralı</span> Bilgisayarcılık terimi

Dosya aktarım iletişim kuralı,, bir veri yığınının - ASCII, EBCDIC ve binary- bir uç aygıttan diğerine iletimi için kullanılmaktadır.

Telnet, Internet ağı üzerindeki çok kullanıcılı bir makineye uzaktaki başka bir makineden bağlanmak için geliştirilen bir TCP/IP protokolü ve bu işi yapan programlara verilen genel isimdir. Telnet iki bileşenden oluşur: (1) iki tarafın nasıl iletişim kuracağını belirleyen protokolün kendisi ve (2) hizmeti sağlayan yazılım uygulaması.Kullanıcı verileri, İletim Kontrol Protokolü (TCP) üzerinden 8 bitlik bayt yönlendirmeli bir veri bağlantısında Telnet kontrol bilgisi ile bant içi serpiştirilir. Telnet, 1969'da RFC 15 ile başlayarak geliştirildi, RFC 855'te genişletildi ve ilk İnternet standartlarından biri olan İnternet Mühendisliği Görev Gücü (IETF) İnternet Standardı STD 8 olarak standartlaştırıldı. encryption sağlayan bazı Telnet eklentileri geliştirilmiştir. Bağlanılan makineye girebilmek (login) için orada bir kullanıcı isminizin (İng:username) ve bağlantının gerçekleşebilmesi için bir telnet erişim programınızın olması gereklidir. Fakat bazı kütüphane ve herkese açık telnet bazlı web servisleri, bağlantı sırasında kullanıcı ismi (numarası) istemeyebilirler; ya da, kullanıcı isim ve parola olarak ne yazmanız gerektiği bağlandığınızda otomatik olarak karşınıza çıkar. Telnet, BBS sistemlere İnternet üzerinden erişimde günümüzde yaygın olarak kullanılmaktadır. Telnet erişim programları, günümüzdeki işletim sistemlerinin çoğunda işletim sistemi ile birlikte gelmektedir. Çok kullanıcılı işletim sistemleri genellikle kullanıcılara metin tabanlı bir arayüz sunar ve bu sistemlerde tüm işlemler klavye vasıtası ile komut isteminden gerçekleştirilir.

<span class="mw-page-title-main">Sanal özel ağ</span> Uzaktan erişim yoluyla farklı ağlara bağlanmayı sağlayan internet teknolojisi

Sanal Özel Ağ, uzaktan erişim yoluyla farklı ağlara bağlanmayı sağlayan bir internet teknolojisidir. VPN, sanal bir ağ uzantısı oluşturarak, ağa bağlanan cihazların fiziksel olarak bağlıymış gibi veri alışverişinde bulunmasına olanak tanır. Basitçe, İnternet veya diğer açık ağlar üzerinden özel bir ağa bağlanmayı mümkün kılan bir bağlantı türüdür.

Network Address Translation (NAT), TCP/IP ağındaki bir bilgisayarın yönlendirme cihazı ile başka bir ağa çıkarken adres uzayındaki bir IP ile yeniden haritalandırma yaparak IP paket başlığındaki ağ adres bilgisini değiştirme sürecidir.

Berkeley r-komutları, bir Unix sisteminin kullanıcılarının TCP/IP bilgisayar ağı üzerinden başka bir Unix bilgisayarında oturum açmasını veya komutlar vermesini sağlamak için tasarlanmış bir bilgisayar programları paketidir. Berkeley r-komutları, 1982'de Berkeley'deki Kaliforniya Üniversitesi'ndeki Computer Systems Research Group (CSRG) tarafından, TCP/IP'nin erken uygulanmasına dayanarak geliştirildi.

<span class="mw-page-title-main">Transport Layer Security</span> Internet Şifreleme Protokolü

Taşıma Katmanı Güvenliği (TLS) ve onun öncülü/selefi olan Güvenli Soket Katmanı (SSL), bilgisayar ağı üzerinden güvenli haberleşmeyi sağlamak için tasarlanmış kriptolama protokolleridir. X.509 sertifikalarını kullanırlar ve bundan dolayı karşı tarafla iletişime geçeceklerin kimlik doğrulaması asimetrik şifreleme ile yapılır ve bir simetrik anahtar üzerinde anlaşılır. Bu oturum anahtarı daha sonra taraflar arasındaki veri akışını şifrelemek için kullanılır. Bu, mesaj/veri gizliliğine ve mesaj kimlik doğrulama kodları için mesaj bütünlüğüne izin verir. Protokollerin birçok versiyonu ağ tarama, elektronik mail, İnternet üzerinden faks, anlık mesajlaşma ve İnternet üzerinden sesli iletişim gibi uygulamalarda yaygın olarak kullanılmaktadır. Bu durumda/içerikte/bağlamda en önemli özellik iletme gizliliğidir. Bundan dolayı kısa süreli oturum anahtarı, uzun süreli gizli simetrik anahtardan türetilememelidir.

PAT, port address translation kelimesinin kısaltılmasıdır. Nasıl ki, NAT'da iç ağdan dış ağa bağlanırken, iç ağdaki bilgisayarların ip adresleri değiştirilerek dış ağa bağlanması sağlanıyorsa; PAT'da da dış ağdan iç ağa bağlanırken dış ağdan gelen bağlantının port adresi değişime uğrar. NAT ile birlikte kullanılır.

RADIUS, Livingston Enterprise tarafından geliştirilmiş, daha sonra da IETF RFC 2865 ve RFC 2866 ile standartlaştırılmıştır. RADIUS istemci-sunucu modeli tabanlıdır ve mesaj değişimi UDP protokolü ile gerçekleşir. Network Access Storage (NAS), RADIUS kullanıcısı olarak davranır ve kullanıcı isteğini RADIUS server'a aktarır. Diğer RADIUS kullanıcıları kablosuz bağlantı noktaları, yönlendiriciler (Router) ve anahtarlayıcılar (Switch) olabilir. RADIUS sunucusu kullanıcılardan istek aldıktan sonra kimlik doğrulama (Authentication), yetkilendirme (Authorization) ve ücretlendirme (Accounting) yani AAA işlemlerini gerçekleştirir. Kullanıcı ile sunucu arasındaki iletişim özel anahtar ile şifrelendirilmiş şekilde gerçekleştirilir, bu sayede şifre asla ağ üzerinden gönderilmez. Kullanıcı ve sunucular iletişim olmadan önce bu güvenlik yöntemine göre ayarlanmıştır ve eğer şifreler uyuşmazsa bağlantı sonlandırılır.

Zaman Protokolü, paket anahtarlamalı, değişken gecikmeli veri ağları üzerinden bilgisayar sistemleri arasında saat senkronizasyonu için bir ağ protokolüdür. 1985'ten beri kullanımda olan NTP, şu anda kullanımda olan en eski İnternet protokollerinden biridir. NTP, Delaware Üniversitesi'nden David L. Mills tarafından tasarlanmıştır.

Teredo [1] ; yönlendirici ile istemci arasında kurulan bir tüneli kullanan IPv6 Geçiş Yöntemi'dir. Bu yöntemin 6to4 ve ISATAP yöntemlerinin kullanılamadığı senaryolarda son çare olarak kullanılması önerilmektedir. Teredo yönteminin temel amacı NAT veya güvenlik duvarı arkasında kalan istemcilerin IPv6 ağına bağlanmalarını sağlamaktır.

<span class="mw-page-title-main">IEEE 802.1X</span>

IEEE 802.1x, bağlantı noktası tabanlı ağ erişim kontrolü için kullanılan bir standarttır ve 802.1 protokol grubunun bir parçasıdır. Bir kablolu (LAN) veya kablosuz (WLAN) ağa dahil olmak isteyen istemci cihazlara kimlik doğrulama mekanizması sağlar.

Tünel protokolü, bir ağ protokolü farklı bir yük-taşıma protokolü içerdiğinde bilgisayar ağ bağlantısı, bir tünel protokolü kullanır. Tünel protokolü kullanılarak, uyumsuz olan bir iletim protokolü üzerinde bir yük-taşıma taşınabilir ya da güvenilmeyen ağlarda güvenli bir yol oluşumu sağlanabilir.

HTTP tünelleme, kapsüllenmiş http protokolünü kullanan çeşitli ağ protokollerini çalıştırarak bağlantı gerçekleştiren bir tekniktir. Ağ protokolleri genelde TCP/IP ailesine ait olan protokollerdir. HTTP protokolü dolayısıyla, ağ protokolü tünnellenmiş olan kanal için kılıf (wrapper) olarak davranır.

<span class="mw-page-title-main">SoftEther VPN</span> Baymuhammet

SoftEther VPN, Tsukuba Üniversitesi'nden Daiyuu Nobori'nin yüksek lisans tezi araştırması kapsamında geliştirilen ücretsiz bir açık kaynak kodlu, çapraz platform, çoklu protokol destekli VPN çözümüdür. SoftEther VPN, SSL VPN, L2TP/IPsec, OpenVPN ve Microsoft Güvenli Yuva Tünel Protokolü gibi VPN iletişim kurallarını tek bir VPN sunucusundan verilecek şekilde desteklemektedir. 4 Ocak 2014 tarihinde GPLv2 lisansını kullanarak yayınlanmıştır.

Güvenli kabuk,, ağ hizmetlerinin güvenli olmayan bir ağ üzerinde güvenli şekilde çalıştırılması için kullanılan bir kriptografik ağ protokolüdür. En iyi bilinen örnek uygulaması bilgisayar sistemlerine uzaktan oturum açmak için olandır.

<span class="mw-page-title-main">Port tarayıcı</span>

Port tarayıcı, açık portlar için bir sunucuyu veya ana bilgisayarı araştırmak için tasarlanmış bir uygulamadır. Bu tür bir uygulama, yöneticiler tarafından bilgisayar ağlarının güvenlik politikalarını doğrulamak ve saldırganlar tarafından bir ana bilgisayar üzerinde çalışan ağ hizmetlerini tanımlamak ve güvenlik açıklarından yararlanmak için kullanılabilir.

Bilgisayar ağlarında bağlantı noktası (port) veya bağlantı noktası numarası, bir bağlantı uç noktasını benzersiz bir şekilde tanımlamak ve verileri belirli bir hizmete yönlendirmek için atanan sanal bir numaradır. Yazılım düzeyinde, bir işletim sistemi içinde, bir bağlantı noktası belirli bir işlem veya bir ağ hizmeti türünü tanımlayan mantıksal bir yapıdır. Yazılım düzeyindeki bir bağlantı noktası, her taşıma katmanı protokolü ve adres kombinasyonu için kendisine atanan bağlantı noktası numarasıyla tanımlanır. Port numaralarını kullanan en yaygın taşıma protokolleri TCP ve UDP 'dir; bu port numaraları 16 bitlik işaretsiz sayılardır.

HTTP 403, istenen kaynağa erişimin yasak olduğu anlamına gelen bir HTTP durum kodudur. Bu kodun gösterilmesinin anlamı: sunucu isteği anladı, ancak yerine getirmeyecek.