Sunucunuzun kimlik doğrulama günlüklerine daha önce baktıysanız, İnternet’e bağlı herhangi bir sunucunun bilgisayar korsanlarının sürekli giriş denemesi barajı altında olduğunu bilirsiniz.
Sunucunuz tamamen bilinmeyen bir hobi sunucusu olsa bile, otomatik komut dosyaları onu bulur ve sürekli olarak kaba kuvvet kullanarak SSH’yi kullanmaya çalışır. Karmaşık parolalar veya diğer güvenlik önlemleri kullandığınız sürece içeri girmeleri pek olası olmasa da, başarılı olma şansları her zaman vardır.
Neyse ki, bu bilgisayar korsanlarını sunucunuzda yakalamanın ve herhangi bir soruna neden olmayacak kadar dikkatlerini dağıtmanın yararlı ve eğlenceli bir yolu var.
SSH Honeypot Nedir?
Basitçe söylemek gerekirse, bir SSH balküpü, siber suçluları çekmek ve onları hedef almak için tuzağa düşürmek için küçük meyvelere benzeyen bir tuzaktır. Ancak bu gerçek bir hedef değildir ve bilgisayar korsanı genellikle çok geç olana kadar bunu fark etmez.
Bir bal küpü birçok biçim alabilir ve birçok farklı kullanıma sahip olabilir. Bazen dikkati dağıtmaktan biraz daha fazlasıdırlar, ancak bazen saldırgan hakkında bilgi toplamak için kullanılırlar.
Pek çok devlet kurumu, suçluları yakalamak, onları saldırmaya teşvik etmek, ancak daha sonra onları yakalamak için onlar hakkında bilgi toplamak için bal küpleri kullanır. Ancak bal küpleri, şirketler için çalışan sistem yöneticileri ve hatta sadece eğlence için bir Linux sunucusu çalıştıran hobi sahipleri tarafından da kullanılabilir.
Neden SSH Honeypot Kullanmalısınız?
Birinin sunucusunda bir SSH bal küpü uygulamak isteyebilmesinin birçok nedeni vardır. Bazı durumlarda, gelecekte onlardan gelecek bağlantıları engellemek için kullanmak isteyebilirsiniz. Belki de onları sisteminizdeki gerçek hedeflerden uzaklaştırmak istiyorsunuz. Veya eğitim amaçlı olabilir: saldırıların nasıl çalıştığını öğrenmeye yardımcı olmak için.
Bu kılavuzun amaçları doğrultusunda, bal küpünü öncelikle dikkat dağıtmak için kullanıyoruz. Spesifik olarak, bilgisayar korsanının sunucunuzun daha savunmasız bölümlerine saldırmasının yanı sıra başka birinin sunucusuna saldıramayacak kadar meşgul olmasını sağlar.
Ve en azından bu durumda, kullanılan yöntem bir iki gülmek için de iyi olacaktır.
SSH’de kapana kısılmış
Esasen, yapmak istediğimiz şey, SSH girişini kaba kuvvete zorlamaya çalıştıklarında bilgisayar korsanını tuzağa düşürmektir. Bunu yapmanın birkaç yolu vardır, ancak en basitlerinden biri, onlara yavaş yavaş çok uzun bir SSH banner’ı göndermektir.
Bu şekilde, bilgisayar korsanının otomatik komut dosyası bir banner beklerken takılıp kalacaktır. Bu, günler veya haftalar olmasa da saatler sürebilir. Komut dosyası otomatik olduğundan, bilgisayar korsanı muhtemelen ona fazla dikkat etmiyor ve çok zaman geçene kadar takılı kaldığını fark etmeyecek.
Bu bazen şakacı bir şekilde “SSH tarpiti” olarak anılır, çünkü hacker’ın senaryosu buna takılır ve kendi başına çıkamaz.
Bu, bazı temel SSH kullanımını bilmenizi gerektirir. SSH’yi nasıl kullanacağınızdan emin değilseniz, başlamak için bu kılavuzu okuyun.
sonsuz
Bunu gerçekleştirmek için kullandığımız programın adı sonsuz ve skeeto tarafından yapılmıştır.
Sunucunuzda oturum açtıktan sonra depoyu klonlayın. (Sahip olmalısın
git yükledim.)
git clone https://github.com/skeeto/endlessh
Artık sunucunuzdaki depoya sahip olduğunuza göre, o dizine geçmeniz ve onu derlemeniz gerekecek.
cd endlessh make
Programı derlemeye çalışırken bazı hatalar ortaya çıkabilir. Bu, büyük olasılıkla, programın derlemesi gereken bir bağımlılığı kaçırdığınız anlamına gelir. Hangi bağımlılığın eksik olduğunu kontrol etmeniz ve ardından dağıtımınızın paket yöneticisi ile yüklemeniz gerekecek.
Derlenecek programa sahip olduğunuzda, yolunuzda olması için onu bin dizininize taşımak isteyeceksiniz.
sudo mv endlessh /usr/local/bin
Yolunuzda algılandığından emin olmak için iki kez kontrol etmek isteyeceksiniz.
which endless
çıktısını almalı
/usr/local/bin/endlessh yol. Durum böyle değilse, doğru dizine taşındığından emin olmak isteyeceksiniz.
Bundan sonra, programı bir hizmet daemon’a dönüştürün, böylece bir
systemd hizmet.
sudo cp util/endlessh.service /etc/systemd/system/
bu bittiğinde, hizmeti arka planda çalışacak şekilde etkinleştirin.
sudo systemctl enable endlessh
Varsayılan olarak, sonsuzh yalnızca 1024’ün üzerindeki bağlantı noktalarında çalışır, ancak bilgisayar korsanlarını saldırmaya çalışmak için kandırabilmemiz için varsayılan SSH bağlantı noktasını kullanmasını istiyoruz. Bunu yapabilmek için servis dosyasını düzenlememiz gerekiyor.
Bu örnek, yapılandırma dosyasını düzenlemek için nano’yu kullanır, ancak istediğiniz metin düzenleyiciyi kullanmaktan çekinmeyin.
sudo nano /etc/systemd/system/endlessh.service
Dosya açıldıktan sonra, # karakterini kaldırarak aşağıdaki satırın yorumunu kaldırın:
#AmbientCapabilities=CAP_NET_BIND_SERVICE
Ardından bu satırın başına bir # ekleyin:
PrivateUsers=true
Dosyayı kaydedin ve şu komutu çalıştırın:
sudo setcap 'cap_net_bind_service=+ep' /usr/local/bin/endlessh
Sonsuz’un hangi bağlantı noktasında çalışması gerektiğini bilmesi için bir yapılandırma dosyası oluşturmanız ve ayarlamanız gerekecektir. Önce bunun için yeni bir dizin oluşturmanız, ardından yapılandırma dosyasını oluşturmanız gerekir.
sudo mkdir -p /etc/endlessh sudo vim /etc/endlessh/config
Yapılandırma dosyası içinde yalnızca tek bir satıra ihtiyaç duyacaktır. Bu, sonsuzluğa SSH için varsayılan bağlantı noktası olan 22 numaralı bağlantı noktasında çalışmasını söyleyecektir. Bunu, bilgisayar korsanları için daha çekici bir hedef olması için yapıyoruz. Varsayılan SSH bağlantı noktasının açık olduğunu görecekler, ardından buna girmeye çalışacaklar.
Aşağıdakileri yapılandırma dosyanıza girin:
Port 22
Sonsuz hizmeti başlatmanız gerekecek.
sudo systemctl start endlessh
Hepsi bu kadar! Artık varsayılan SSH bağlantı noktanızda sonsuza kadar çalışacak ve bilgisayar korsanlarını zaten yakalayacaksınız.
Test Etme
Honeypot’un istendiği gibi çalıştığından emin olmak için bir saniyeliğine hacker gibi davranalım ve sunucunuzda SSH’ye erişmeye çalışalım.
ssh root@<server-ip-address>
Her şey doğru bir şekilde kurulduğu sürece, şunu görmelisiniz:
ssh komut sıkışmış ve hiçbir şey yapmıyor. Siz (veya gerçek bir bilgisayar korsanı) bu komutu verdiğinde gerçekte neler olduğunu görmek için bir göz atalım.
Aynı komutu tekrarlayın, ancak
-vvv ayrıntılı seçeneği kullanmak için bayrak.
ssh -vvv root@<server-ip-address>
Bu küçük aracın sizi nasıl tuzağa düşürdüğü ve sunucunuzdaki SSH’ye erişmenizi nasıl engellediği artık açık olmalıdır. Yavaşça, satır satır istemciye çok büyük bir SSH başlığı gönderiyor.
Ve elbette, bir bilgisayar korsanı bunu bir botla otomatikleştirdiği için, siz günler değilse de saatler harcayana kadar bunun olduğunu fark etmeyeceklerdir.
Sıkça Sorulan Sorular
1. Bu, bilgisayar korsanlarının SSH’ye erişmesini engeller mi?
Oldukça iyi bir caydırıcı olmasına rağmen, bilgisayar korsanlarını tamamen durdurması garanti edilmez. Özenli bir bilgisayar korsanı sonunda sunucunuzda bir bal küpü oluşturduğunuzu fark edecek ve sunucunuzdaki SSH’ye erişmek için farklı bağlantı noktaları deneyebilir.
Ancak bu, yalnızca düşük asılı meyveyi arayan bilgisayar korsanlarını önlemek için yeterli olmalıdır.
2. Bu program varsayılan bağlantı noktasında çalışıyorsa SSH’yi nasıl kullanırım?
SSH’nin çalıştığı bağlantı noktasını değiştirmeniz gerekecektir. Bu, sunucunuzda bir bal küpü olmasa bile iyi bir uygulamadır, çünkü bilgisayar korsanları diğerlerini taramadan önce her zaman varsayılan bağlantı noktalarını deneyecektir.
3. Yapılandırma dosyasına ekleyebileceğim başka seçenekler var mı?
Evet, gecikme hızını değiştirmek de dahil olmak üzere değiştirebileceğiniz başka birçok ayar vardır.
Örnek yapılandırma dosyasında bir seçenekler listesi görebilirsiniz. Github deposunda.
Son sözler
Artık bilgisayar korsanlarını tuzağa düşürmek ve başka hiçbir şeye saldırmamaları için dikkatlerini dağıtmak için sunucunuzda bir bal küpü kurmayı öğrendiğinize göre, sunucunuza SSH erişimini güvenli hale getirmenin tek yolu bu değildir.
Sunucunuzu daha da güvenli hale getirmek için SSH’de oturum açmak için şifreleme anahtarlarının nasıl kullanılacağını gösteren bu makaleye göz atın.
Resim kredisi: Tencerede bal, petek ve sopa Yay Görüntüler tarafından