Bu proje, T.C. Ulaştırma ve Altyapı Bakanlığı Siber Güvenlik Daire Başkanlığı (USOM) tarafından yayınlanan zararlı URL listesini çeşitli güvenlik araçları için uygun formatlara dönüştürmektedir.
Canlı web sayfası: https://enesehs.dev/usom-filter
- 📁 Çıktı Dosyaları
- 🚀 Temel Özellikler
- 🛠️ Kurulum ve Kullanım
- 📋 Sistem Mimarisi
- 🔧 Yapılandırma
- 📖 API Dokümantasyonu
- 🌐 Entegrasyon Örnekleri
- 📈 GitHub Actions Otomasyonu
- 🤝 Katkı Sağlama
- � Lisans
- 🔗 İlgili Kaynaklar
⚠️ Yasal Uyarı
| Dosya Adı | Açıklama | Kullanım Alanları |
|---|---|---|
ips.txt |
Zararlı IP adres listesi | Güvenlik duvarı, IPS/IDS sistemleri |
urls.txt |
Zararlı bağlantı listesi | Proxy sunucuları, güvenlik araçları |
urls_pihole.txt |
Alan adı listesi | Pi-hole, AdGuard Home |
urls_UBL.txt |
Adblock formatı | uBlock Origin, AdBlock Plus, Brave |
- ✅ Performanslı veri işleme:
aiohttpkütüphanesi ile asenkron işlemler - ✅ Güvenilir hata yönetimi: Eksponansiyel geri çekilme ile 8 deneme
- ✅ Otomatik kategorizasyon: IP adresleri, URL'ler ve alan adlarının ayrıştırılması
- ✅ Çoklu format desteği: Pi-hole ve uBlock Origin için optimize edilmiş formatlar
- ✅ Otomatik güncelleme: GitHub Actions ile günlük otomatizasyon
- ✅ Web erişimi: GitHub Pages üzerinden dokümentasyon
- ✅ Kapsamlı günlük kayıtları: Detaylı işlem logları
- ✅ Modern Python: 3.11+ sürümü ile tip güvenliği
- Python 3.11 veya üzeri
aiohttpkütüphanesitldextractkütüphanesi
# (İsteğe bağlı) Sanal ortam
python -m venv .venv
.\.venv\Scripts\Activate.ps1
# Bağımlılıklar
pip install -r .\requirements.txt
# Çalıştırma
python .\generator.py
# Çıktıları listele
Get-ChildItem .\output\- Veri İndirme: USOM zararlı URL listesinin
aiohttpile asenkron çekilmesi - Veri Temizleme: Geçersiz ve boş girişlerin filtrelenmesi
- Kategorizasyon:
- IPv4/IPv6 adreslerinin tespiti
- URL'lerden alan adı bilgisinin çıkarılması
- Kategorilere göre sınıflandırma
- Format Dönüştürme:
- Pi-hole formatı:
example.comyapısında - uBlock Origin formatı:
||example.com^yapısında - Ham veri: Orijinal format
- Pi-hole formatı:
- Dosya Çıktısı: Alfabetik sıralama ve zaman damgası ile kayıt
- Yeniden Deneme Mekanizması: 1s, 2s, 4s, 8s artan aralıklarla deneme
- Zaman Aşımı Kontrolü: 30 saniye bekleme süresi
- Kapsamlı Loglama: Tüm hata durumlarının kaydedilmesi
- Süreklilik: Kısmi hata durumlarında işleme devam etme
Betik başlangıcındaki parametreler:
USOM_URL = "https://www.usom.gov.tr/url-list.txt"
MAX_RETRIES = 8
BASE_DELAY = 1.0
TIMEOUT_SECONDS = 30async with USOMProcessor() as processor:
islem_durumu = await processor.process()fetch_url_list(): Zararlı URL listesinin indirilmesicategorize_entries(): Verilerin kategorizasyonuwrite_output_files(): Çıktı dosyalarının oluşturulması
is_valid_ip(text): IP adresi doğrulamais_valid_domain(text): Alan adı format kontrolüextract_domain_info(url): URL'den alan adı bilgisi çıkarma
curl -o /etc/pihole/custom.list https://enesehs.github.io/usom-filter/output/urls_UBL.txt
pihole restartdns- uBlock Origin ayarlarına erişim
- "Filter lists" bölümüne geçiş
- "Import" seçeneğini kullanma
- URL ekleme:
https://enesehs.github.io/usom-filter/output/urls_UBL.txt
curl -s https://enesehs.github.io/usom-filter/output/urls_UBL.txt | \
grep -v '^#' | while read ip; do
iptables -I INPUT -s $ip -j DROP
doneOtomatik işlem adımları:
- Python çalışma ortamının hazırlanması
- Gerekli bağımlılıkların kurulması
- Ana betiğin çalıştırılması
- Değişikliklerin commit edilmesi
- GitHub Pages'a dağıtım
- Repository'yi fork edin
- Yeni özellik dalı oluşturun (
git checkout -b yeni-ozellik) - Değişikliklerinizi commit edin (
git commit -am 'Yeni özellik eklendi') - Dalınızı push edin (
git push origin yeni-ozellik) - Pull Request oluşturun
Bu proje MIT Lisansı altında lisanslanmıştır. Detaylar için LICENSE dosyasını inceleyiniz.
- T.C. Ulaştırma ve Altyapı Bakanlığı Siber Güvenlik Daire Başkanlığı (USOM)
- USOM Zararlı URL Listesi
- Pi-hole Projesi
- uBlock Origin
Bu proje USOM ile resmi bir ilişkisi bulunmayan bağımsız bir açık kaynak projesidir. Veriler halka açık API'lar aracılığıyla erişilmektedir. Kullanım sorumluluğu son kullanıcıya aittir.
Son Güncelleme: 2025-09-01 | Sürüm: 1.0.0