İçeriğe atla

SYN cookies

SYN çerezleri (SYN cookies), SYN saldırılarına karşı korunmak için kullanılan bir tekniğin en önemli unsurudur. İlk olarak Daniel J. Bernstein tarafından bulunmuştur, bu kişi "TCP sunucuları tarafından TCP sıra numaraları başlangıç değerlerinin belirli seçenekleridir" diyerek SYN cookies tanımlaması yapmıştır. Özellikle, SYN cookies kullanımı, SYN kuyruğu üste doldururken bağlantıların düşmesini engellemek için bir sunucu kabul eder. Bu sunucu istemciye uygun SYN+ACK cevabı geri döner fakat SYN kuyruk girişi atılır. Eğer sunucuya istemciden altsıralı ACK cevabı ulaşırsa sunucu TCP sıra numarasındaki şifrelenmiş bilgiyi kullanarak SYN kuyruk girişini tekrar yapılandırabilir.

Gerçekleştirimi

İstemci TCP bağlantısı başlatmak amacıyla sunucuya bir TCP SYN paketi gönderir. Bunun üzerine, sunucu istemciye bir TCP SYN+ACK paketi geri gönderir. Bu paketteki değerlerden bir tanesi sıra numarasıdır. Bu numara TCP tarafından veri akışının tekrar kurmak için kullanılır. TCP tanımlamasına göre, bir uç nokta tarafından gönderilmiş ilk sıra numarası uç nokta tarafından kararlaştırılmış herhangi bir değer olabilir. SYN cookies aşağıdaki kurallara göre dikkatli bir şekilde yapılandırılmış sıra numaralarının başlangıcıdır:

  • t = Yavaşça artan zamanbilgisi(genellikle time() mantıksal olarak 6 pozisyon sağa ötelenmiş, 64 saniye netlikle)
  • m = Sunucunun SYN kuyruk girişinde depolaması gereken maksimum segment boyutu değeri
  • s = Sunucunun IP adresi ve port numarası, istemcinini IP adresi ve port numarası ve t değeri üzerinden hesaplanmış kriptografik gizli bir fonksiyonun sonucu. Geriye dönen s değeri 24 bit değer olmalıdır.

TCP sıra numarasının başlangıcı, SYN cookies'de, aşağıdaki gibi hesaplanır:

  • İlk 5 bit: t mod 32
  • Sonraki 3 bit: m olarak temsil edilen şifrelenmiş değer
  • Son 24 bit: s

Bir istemci sunucunun SYN+ACK paketine cevap olarak sunucuya TCP ACK paketi geri gönderirken, istemci paketin kabul numarası içerisinde n+1 kullanmalıdır. Buradaki n sunucu tarafından gönderilen sıra numarası başlangıcıdır. Daha sonra sunucu, istemciye gönderilen SYN cookie'yi ortaya çıkarmak için kabul numarasından 1 çıkartır.

Daha sonra sunucu aşağıdaki işlemleri uygular.

  • Bağlantı sonlanmış mı diye görmek için şimdiki zamana karşı t değerini kontrol eder.
  • Geçerli SYN cookie olup olmadığına karar vermek için s yi tekrar hesaplar.
  • SYN cookie içerisinde şifrelenmiş 3 bitten m değerini çözer, daha sonra onu SYN kuyruk girişini tekrar yapılandırmak için kullanabilir.

Bu şekilde bağlantı normal bir şekilde sağlanmış olur.

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">DNS</span>

DNS, internet uzayını bölümlemeye, bölümleri adlandırmaya ve bölümler arası iletişimi organize etmeye yarayan, bilgisayar, servis, internet veya özel bir ağa bağlı herhangi bir kaynak için hiyerarşik dağıtılmış bir adlandırma sistemidir.

<span class="mw-page-title-main">UDP</span>

UDP, TCP/IP protokol takımının iki aktarım katmanı protokolünden birisidir. Verileri bağlantı kurmadan yollar.

<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.

<span class="mw-page-title-main">TCP</span>

TCP (Transmission Control Protocol), TCP/IP protokol takımının taşıma katmanı protokollerinden birisidir. Son güncellemesi Ağustos 2022 tarihi itibarıyla RFC 9293 içerisinde tanımlanmıştı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.

Adres Çözümleme Protokolü ağ katmanı adreslerinin veri bağlantısı katmanı adreslerine çözümlenmesini sağlayan bir telekomünikasyon protokolüdür. 1982 yılında RFC 826 aracılığıyla tanımlanmıştır. STD 37 kodlu bir internet standardıdır.

<span class="mw-page-title-main">DHCP</span>

DHCP, ağda bulunan her bir bilgisayarın IP adresi, alt ağ maskesi, varsayılan ağ geçidi ve DNS sunucuları gibi ağ bağlantısı ayarlarının otomatik olarak atamasını sağlar. Bu sayede ağ yöneticileri, ağdaki her bir bilgisayarın IP adresi ve diğer ağ bağlantısı ayarlarını elle girerek zaman kaybetmek yerine, DHCP sunucusu üzerinden bu bilgileri otomatik olarak atayarak daha verimli ve güvenilir bir ağ yönetimi yapabilirler. Bu sayede sistem yönetim işlemi de kolaylaşmış olur. Ayrıca UDP, TCP'ye dayalı herhangi bir iletişim protokolünün ve DNS, NTP gibi ağ hizmetlerinin kullanımına olanak sağlar.

<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.

Trivial File Transfer Protocol (TFTP) 1980 yılında tanımlanmış, FTP' nin temel fonksiyonel şekli olarak ifade edilen basit bir dosya transfer protokolüdür.

İngilizce: Lightweight Directory Access Protocol veya kısaca LDAP TCP/IP üzerinde çalışan indeks servislerini sorgulama ve değiştirme amacıyla kullanılan uygulama katmanı protokolü.

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.

Datagram Congestion Control Protocol (DCCP), mesaj tabanlı bir Ulaşım katmanı protokolüdür.

Nmap, bilgisayar ağları uzmanı Gordon Lyon (Fyodor) tarafından geliştirilmiş bir güvenlik tarayıcısıdır. Taranan ağın haritasını çıkarabilir ve ağ makinalarında çalışan servislerin durumlarını, işletim sistemlerini, portların durumlarını gözlemleyebilir.

Tcphdr C programlama dilinde bir yapıdır.Tcphdr yapısı bir sıralı soketteki Tcp başlik formu için kullanılan bir şablondur.Bu yapı birçok Unix versiyonunda tanımlı olarak bulunmaktadır ve genellikle <netinet/tcp.h> başlık dosyasında tutulur.BSD ve Linux olmak üzere iki farklı formatta bulunmaktadır.Melez bir Linux ya da BSD başlık dosyanız varsa,BSD formatında kullanmak için tanımlamanızın başında, add#define_USE_BSD ve #include<netinet/tcp.h> satirindan önce #define_FAVOR_BSD komutlarını kullanmalısınız.(Aksi takdirde Linux tanımlı olacaktı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">SYN saldırısı</span>

SYN saldırısı, DoS saldırısının bir biçimidir. Bu saldırı biçiminde bir saldırgan sistemin yasal trafiğini isteklere cevap veremeyecek duruma getirmek için yeterli sunucu kaynaklarını tüketme girişiminde bulunarak, hedef alınan sisteme ardışık SYN istekleri gönderir.

<span class="mw-page-title-main">IP spoofing</span>

IP spoofing veya IP sahteciliği, sahte kaynak IP adresi ile Internet Protokolü (IP) paketlerinin oluşturulmasıdır. IP spoofing kavramı, ilk olarak 1980'li yıllarda akademik çevrelerde tartışılmıştır.

ACK saldırısı, TCP'de uygulanan üçlü el sıkışmayı kullanarak yapılan bir saldırı türüdü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.