Blogum göz önünde olduğu sürece saldırganların da ilgisini çekmeye devam etti. Bir noktadan sonra sürekli olarak ve gün geçtikçe daha fazla saldırıya maruz kalmaya başladım.
İlk başlarda siber saldırılara karşı blogumun sunucusunu sürekli güncel tutuyor, database ve ftp yedeği alıyordum. Sonraları bu saldırıların büyük bir kısmının hedef odaklı olarak yapılmaya başlandığını fark ettim. Saldırılar devam ettikçe de koruma mekanizmaları geliştirerek bu alanda araştırmalar yapmaya kendime faydası olacak her türlü güvenlik sistemini öğrenmeye başladım.
Elbette ki hiç kolay olmadı! On iki yıldır yazıyorum ve birileri kurcalamaya devam ediyor.
Bugün blogumu korumak için özel bir sunucuda tek alan adı ile yoluma devam ediyorum. Sürekli güncel yazılımlar kullanmanın yanı sıra, Cloudflare sistemi ile Firewall ve IDS yazılımları dahi kullanmaya başladım.
Ancak yüzde yüz güvenlik sağlayamazsınız!
Sonrasında şunu fark ettim… Hırsıza kilit dayanmadığı gibi kötü niyetli hackera alacağınız güvenlik önlemleri pek de dayanıklı değil. Adamın biri sizi kafaya taktıysa, motivasyonu ve zamanı varsa elinde sonunda armut yer gibi hack yiyebiliyorsunuz…
Eyvallah! Peki ne yapacağız?
Hırsıza yaptığımız muamelenin aynısını lamerlere, hackerlara, spammerlara ve benzeri bilimum mahlukata yapacağız.
Hırsıza karşı en büyük silahınız caydırıcılıktır. Kötü niyetli saldırganlara karşı da bu silahı kullanabilirsiniz. Etkilidir ve güvende hissetmenizi sağlar.
Son 5 yıldır bu prensiple hareket ederek blogumun bazı klasörlerine sahte açıklıklar bırakıyorum.
Ör: teakolik.com/wp-config.txt
Wp-config dosyası blogumun database bilgilerinin yer aldığı önemli bir dosyadır. WordPress kullanan herkes bu dosyanın önemini iyi bildiği gibi, saldırganlar da bu gibi ayar, şifre ve benzeri verilerin yer aldığı dosyaları iyi bilirler. Hatta blogunuzu hedefledikleri zaman ilk yoklayacakları dosyalardan biridir. Bu dosyanın sahtesini oluşturarak, saldırgana bir yem atıyor (ne yani hep kurban mı yiyecek? Biraz da sazanlığı saldırganlar yapsın) ve o yemle uğraşmasını sağlıyordum.
Bu ve benzeri sahte ayar veya önemli klasörleri bilerek ve isteyerek bırakmaya devam ettim. Bloguma gelen saldırıların log kayıtlarını inceleye inceleye; bugün geldiğim noktada blogum üzerinde 30’dan fazla tuzak bıraktığımı söyleyebilirim. Sonuç olarak saldırganlar bu dosyaları tarama, deneme ve yanılma yöntemleri ile keşfettikleri zaman gerçek bir açıklık olduğunu düşündürüyor ve hedef saptırıyorum. O kadar uzun bir süredir bu dosyalar var ki, bloguma gelip bu dosyaları keşfederek…
- Hamza bak blogunda açıklık buldum kapat bunu…
- Blogunuzda güvenlik açığı var dikkat edin!
- Çok ciddi bir güvenlik açığı var blogunda kapat acilen…
Şeklinde bugüne kadar 100’den fazla mesaj aldım… Kimi iyi niyetli, kimi artistlik amacı ile… Hatırlatırsanız bir ara onların hepsini ekran görüntüsü ile galeri yapıp yayınlayabilirim 🙂
Kullanmış olduğum IDS yazılımı sürekli olarak alarmlar üretip bloguma gelen saldırı isteklerini bana bildiriyor. Bir yandan bu zararlı kod parçacıklarını log kayıtlarından okurken, diğer bir yandan… Acaba nasıl korunurum? Sorusunu sormaya devam ettim.
İşte bu noktada HoneyTEA projesine başlamaya karar verdim.
Proje şu şekilde çalışıyor…
Proje adını Honeypot sistemlerden alıyor. HoneyTEA projem benzer bir mantıkla çalışıyor. Bloguma gelen her istek, server üzerinde log dosyalarına kayıt oluyor. Bilerek bıraktığım Honeypot (sahte açıklıklar) dosyaları ve klasörlerine gelen istekler de yine serverim üzerinde access.log dosyasına yazılıyor.
HoneyTEA projemi ise birkaç bash scriptinden oluşturdum. Bu bash scriptleri serverimde belirli zaman aralıklarında çalışıyor ve çalıştığı zaman bloguma gelen isteklerin kayıt olduğu access.log dosyasını okuyor. Bash dosyalarının yanı sıra bir ayar dosyası oluşturarak HoneyTEA’ye…
wp-config.php
wp-config.txt
admin
Administrator
info.php
…
gibi daha önceden hazırlamış olduğum tuzakları belirtiyorum. HoneyTEA çalıştığı zaman accesss.log dosyası içerisinde bu dosyalara gelen istekleri arıyor. Bulduğu zamana isteği gönderen kişinin ip adresini alıyor ve başka bir dosyaya (blacklist.dat) yazdırıyorum.
Sonrasında HoneyTEA saldırgan kişilerin ip adreslerinin yer aldığı blacklist.dat dosyasını okuyor ve bu dosya içerisindeki ip adreslerini Cloudflare API‘sini kullanarak CloudFlare üzerinde bloke ediyor. Ardından HoneyTEA işlemini tamamlayarak en başa, dinleme moduna dönüyor.
Kısacası saldırgan blogumda bir açıklık aramaya veya tarama başlatmaya kalkarsa, access.log dosyasına gelen ip adresini HoneyTEA görüyor ve bir daha servera istek gönderememesi için Cloudflare üzerinden otomatik olarak bloke ediyor. Belirli bir zaman bu ipleri blokede tuttuktan sonra CloudFlare Apisi kullanarak daha sonra blokeleri kaldırıyor.
Bu sayede saldırgan bir tarama yaparsa taramasını tamamlayamadan bloke yemiş olacak. Hele ki kendi ipsini kullanıyor ve manuel yapıyorsa bu işi, bloguma uzunca bir süre giremeyecek…
Kısacası hırsıza kilit dayanmadığı gibi hackera da güvenlik yazılımı / sistemi dayanmaz. Yalnızca caydırabilirsiniz! Milyonlarca dolar para verip güvenlik sistemleri kurduracak değilim ya? Bu sistemin de amacı saldırganı mümkün olduğunca caydırmak ve uzak tutmaktan ibaret…
Server loglarım + honeypot tuzaklarım + Cloudflare’yi birleştirerek birkaç bash script ile bu sistemi geliştirdim.
Yalnız şunun altını çizmeden konuyu bitirmek istemiyorum. Bir yazılımcı değilim, bir güvenlik uzmanı değilim… Güvenlik konusunda 3-5 şey öğrendim yılların getirdiği IT uzmanlığı ve bloggerlık ile birleştirerek bu sistemi yazdım. Elbette ki hataları vardır ve elbette ki eksik yanları bulunacaktır.
Geliştirmek isterseniz Github hesabımda bol bol yorum, bol bol fork yapabilirsiniz. Eleştirilere ve önerilerinize de her zaman açığım. Bu projeyi de açık kod olarak yayınlamak ve benim gibi saldırılardan illallah etmiş herkese bir nebze faydalı olmaktır amacım…
Şu an tespit ettiğim bir tane hatayı düzeltmek için çırpınıyorum. Yukarıda da söylediğim gibi profesyonel bir yazılımcı değilim. Bu sebeple yapmak istediğim bu küçücük projeyi bir yazılımcı kadar hızlı çıkartamıyorum.
Bir sonraki yazımda proje kaynak kodlarında görüşmek üzere!
Görsel: DepositPhotos
bilgi icin tesekkurler sana bir tavsiyem var su rezalet temayi degistir bence 🙂
Abi. Millet bu tür saldırılarla ne kazanır anlamıyorum. Emek hırsızlığı, kul hakkı vs.. ayıp, yuh ya. Kendi blogumu kuralı 1 seneyi geçti. Spam yorumlardan bıktım. 1 ay önce antispambee kurdum, kurtuldum spam yorumlardan Yorumlar panelinde 1 ayda gelen spam yorum sayısını özet olarak belirtmiş “673 spam comments were blocked by Anti-spam plugin so far.” 673 spam engellemiş şu ana kadar. Ya altı üstü ünümüz bile yok, spamdan geçilmiyor. Siteyi mi kapatım ne yapım. O kadar emek var. Site: teveccuh.com
Bir öneri verin.
Abi önceki tema daha iyiydi. Bu aşırı kurumsal gibi.
Yapacağın iyi bir spam eklentisi kurmaktır. Başka bir yolu yok. Bu temada biraz kurumsallaşalım istedim 🙂
hocam bir kaç aydır bende sıkı bir saldırı altındaydım okuya okuya araştıra araştıra bir çok konuda bilgi sahibi oluyor insan…
Senden de bu anlamda çok şey öğrendik, WP kendi içeriside pek çok açığı barındırıyor maalesef, ve bu açıkları bileyen birinin kapatması oldukça zor..
Senden ricam bizleri daha fazla bilgilendir, daha fazla güvenlik önemleri almamızı sağla, senin kurduğun tuzakları bize de anlat..