🛡️ GÜVENLİK PLANI

Anti-Download Koruma Sistemi

Muzibu.com.tr - MP3 İndirme Engelleme Önlemleri

8 Ocak 2026

📝 Basit Anlatım (Herkes İçin)

Bazı kullanıcılar "biz şarkıları indirebiliyoruz" diye övünüyor. Bu planla onların ağzını kapatacağız:

📊 Mevcut Durum (Bugün Yaptıklarımız)

✅ Tamamlanan

  • file_path API'den kaldırıldı (13 endpoint)
  • • Blob URL eklendi (DevTools'ta URL gizli)
  • • Signed URL aktif (imzalı linkler)

❌ Eksik

  • • Expire süresi 60 dk (çok uzun)
  • • Segment'ler imzasız
  • • Download tool'lar engelsiz
  • • Rate limiting yok

🎯 Uygulama Planı (5 Adım)

1

Expire Süresini 5 Dakikaya Düşür

KOLAY

📝 Ne Yapılacak

Stream URL'leri 60 dakika yerine 5 dakikada expire olacak. Şarkı çalarken otomatik yenilendiği için kullanıcı fark etmez.

🔧 Teknik Detay

SongStreamController.php
expires = now() + 5 minutes

💡 Etki: Link kopyalayan kişi 5 dakika sonra "link geçersiz" hatası alır.

2

Segment URL'lerine Token Ekle

ORTA

📝 Ne Yapılacak

Şu an sadece playlist.m3u8 imzalı. Segment dosyaları (segment-000.ts, segment-001.ts) imzasız. Her segment için de token gerekecek.

🔧 Teknik Detay

m3u8 içeriği dinamik oluşturulacak:
segment-000.ts?token=xxx&expires=xxx

💡 Etki: Biri segment URL'sini kopyalasa bile imza olmadan çalışmaz.

3

Download Tool'ları Engelle

KOLAY

📝 Ne Yapılacak

youtube-dl, yt-dlp, ffmpeg, wget, curl gibi araçların User-Agent'ları tespit edilip engellenecek.

🔧 Teknik Detay

Middleware veya Nginx level:
if (User-Agent contains "youtube-dl") → 403

💡 Etki: Popüler indirme araçları direkt bloklanır.

4

Referrer Kontrolü

KOLAY

📝 Ne Yapılacak

HLS istekleri sadece muzibu.com'den geliyorsa kabul edilecek. Dışarıdan gelen istekler reddedilecek.

🔧 Teknik Detay

if (Referer != muzibu.com) → 403
Boş referrer → Kabul (bazı player'lar göndermez)

💡 Etki: Link'i başka siteye koysalar bile çalışmaz.

5

Rate Limiting

ORTA

📝 Ne Yapılacak

Aynı IP'den dakikada 100'den fazla segment isteği gelirse → Geçici blok. Normal dinleme ~10-15 segment/dakika.

🔧 Teknik Detay

Laravel Rate Limiter veya Nginx:
limit_req zone=hls burst=20

💡 Etki: Toplu indirme deneyen kişi otomatik engellenir.

📋 Özet: Çok Bilmişlere Cevap

Onlar Ne Yapıyor Biz Ne Yapıyoruz Sonuç
DevTools'tan URL kopyalama Blob URL + 5 dk expire ❌ Çalışmaz
youtube-dl ile indirme User-Agent block ❌ 403 Forbidden
Segment'leri tek tek indirme Signed segment URL ❌ Token gerekli
Başka siteden embed Referrer kontrolü ❌ 403 Forbidden
Script ile toplu indirme Rate limiting ❌ IP bloklanır

⚠️ Önemli Not

%100 koruma imkansızdır. Spotify, Apple Music, Netflix bile tam koruma sağlayamıyor. Ama bu önlemlerle:

Amaç: "Çok kolay indirdim" diyenlerin ağzını kapatmak. Profesyonel saldırı farklı konu.

✅ Onay Bekliyor

Bu planı onaylarsan sırayla uygulayacağım:

  1. 1️⃣ Expire süresini 5 dakikaya düşür
  2. 2️⃣ Segment URL'lerine token ekle
  3. 3️⃣ Download tool User-Agent'larını engelle
  4. 4️⃣ Referrer kontrolü ekle
  5. 5️⃣ Rate limiting ekle

Her adımdan sonra test edeceğiz, site bozulmayacak.