Daily AbuseIP Collector
Exploit / Proje Detayları
The Daily AbuseIP Collector is a .NET 9.0 console application designed to run as a background service within a Docker container. Its primary purpose is to automatically fetch, filter, and store a list of abusive IP addresses from a public blocklist into a MongoDB database.
Detailed Write-up
Amaç
Daily AbuseIP Collector (Günlük AbuseIP Toplayıcı), bir Docker konteyneri içinde arka plan servisi olarak çalışmak üzere tasarlanmış bir .NET 9.0 konsol uygulamasıdır. Temel amacı, halka açık bir kara listeden (blocklist) zararlı IP adreslerini otomatik olarak çekmek, filtrelemek ve bir MongoDB veritabanında saklamaktır. Bu sayede, analiz veya engelleme işlemleri için potansiyel olarak kötü niyetli IP adreslerinin güncel bir yerel kopyasına sahip olursunuz.
Nasıl Çalışır?
- Veri Çekme: Uygulama her 24 saatte bir borestad/blocklist-abuseipdb deposuna bağlanır ve
abuseipdb-s100-1d.ipv4listesini indirir. - Veri Temizleme: İndirilen içeriği ayrıştırır, yorum satırlarını filtreler ve geçerli IPv4 adreslerini ayıklar.
- Veritabanı Güncelleme:
- Yerel bir MongoDB örneğine bağlanır.
- Eski verileri kaldırmak için mevcut
AbuseIPDB_DailyInfokoleksiyonunu temizler. - Yeni çekilen IP adreslerini
lastUpdated(son güncelleme) zaman damgasıyla birlikte veritabanına ekler.
- Döngü: Bu işlem 1 günlük aralıklarla süresiz olarak tekrarlanır.
Gereksinimler
- Docker
- Docker Compose
Kurulum ve Kullanım
- Bu depoyu klonlayın.
- Proje ana dizinine gidin.
- Hem uygulamayı hem de MongoDB veritabanını başlatmak için aşağıdaki komutu çalıştırın:
docker-compose up -d --build - Uygulama hemen veri çekmeye başlayacak ve ardından 24 saat boyunca uyku moduna geçecektir.
Yapılandırma
- Veritabanı Kimlik Bilgileri: Uygulama, MongoDB'ye
adminkullanıcı adı veStrong_Password_1881şifresi ile bağlanacak şekilde yapılandırılmıştır. Bu kimlik bilgileri,docker-compose.ymldosyası aracılığıyla uygulama ve MongoDB Docker konteyneri arasında senkronize edilmiştir.