
Network Time Protocol (NTP), ağ cihazlarının saat bilgisini otomatik olarak senkronize etmesini sağlayan bir protokoldür. Bu protokol, UDP 123 portunu kullanır ve yedinci katman (Uygulama Katmanı) protokolüdür.
NTP protokolü hakkında daha fazla bilgi almak için aşağıdaki yazıma göz atabilirsiniz.
NTP Amplification, dağıtılmış hizmet reddi (DDoS) saldırı türlerinden biridir. Bu saldırı, NTP protokolünün eski sürümlerinde varsayılan olarak açık olan “MON_GETLIST” komutu kullanılarak gerçekleştirilir. Bu komut, NTP sunucusunu yöneten sistem ve ağ yöneticilerine, NTP sunucusundan saat bilgisini öğrenen son 600 cihazın listesini verir. İlk bakışta cihazlar hakkında bilgi almak için yararlı bir komut olarak görülse de istismar edilebilir. Bu komutla yapılan sorguların boyutu küçüktür. Ancak “MON_GETLIST” komutuna sunucu tarafından verilen yanıt, sorgu boyutuna kıyasla çok daha büyük boyutta olacaktır.
Tehdit aktörleri, bu saldırının etkisini artırmak için botnet kullanabilir. Saldırı birkaç aşamadan oluşmaktadır. Öncelikle saldırgan bir hedef belirler ve ardından hedefin IP adresini taklit eder (IP Spoofing).
Daha sonra, eski sürüm NTP sunucularını Shodan ve benzeri platformlar aracılığıyla tespit eder. Eski sürümlerde çalışan NTP sunucularını bulmak için aşağıdaki gibi basit bir arama sorgusu gerçekleştirilebilir.

Ardından, seçtiği NTP sunucusuna veya sunucularına “MON_GETLIST” isteğinde bulunur. Sorgu, tehdit aktörünün makinesinden sunucuya iletilir. Ancak sahte bir IP adresi (IP Spoofing) kullanıldığı için sunucu, yanıtı spoof edilen IP adresine gönderir. Saldırgan, botnet kullanarak aynı anda birçok NTP sunucusuna sorgu gönderip saldırının hacmini artırabilir. Saldırıyı içselleştirmek için aşağıda hazırlamış olduğum topolojiyi inceleyebilirsiniz.

Yukarıdaki topolojiye botnetlerin de dahil olduğunu varsayarsak, hedeflenen sistemin trafiği önemli ölçüde yavaşlayabilir ve hatta sunucunun servis dışı kalmasına yol açabilir. Tehdit aktörü, botnetlerden faydalanarak hem kimliğini gizleyebilir hem de saldırı hacmini artırarak daha fazla zarara sebep olabilir. Bu şekilde, saldırı daha da etkili hale gelir.
Saldırının gerçekleşmesinin sebeplerinden biri, NTP protokolünün UDP üzerinden çalışmasıdır. Eğer bu protokol TCP üzerinden çalışsaydı, saldırgan hedef sunucunun IP adresini spoof edemezdi. Çünkü TCP protokolü, haberleşmeye başlamadan önce üçlü el sıkışması (Three-Way Handshake) yapar. Bu süreçte sunucu ve istemci, birbirlerinin Sequence ve Acknowledgment değerlerini öğrenirler. Ardından haberleşmeye başlarlar. Ancak UDP protokolü, önceden herhangi bir bağlantı kurma veya doğrulama süreci gerektirmediğinden, IP adresi spoof edilerek saldırı gerçekleştirilebilir.
Diğer DDoS saldırılarında olduğu gibi, bu saldırıyı tamamen engellemek mümkün değildir. Ancak, çeşitli önlemler alarak riskleri en aza indirebiliriz. Öncelikle, Access Control List (ACL) konfigüre ederek yalnızca belirli cihazların NTP sunucusuna erişmesine izin verebiliriz. NTP sunucusu üzerinde MONLIST komutunu devre dışı bırakabiliriz. Son olarak NTP sunucumuzun sürümünü güncelleyebiliriz. (4.2.7 sürümü öncesi NTP sürümlerinin güncellenmesi önerilir.)
Bu makale yalnızca bilgilendirme amaçlıdır. Yanlış kullanımından doğacak hiçbir sorumluluk tarafıma ait değildir.
Daha fazla siber-güvenlik içeriği için takipte kalın…

Leave a Reply