Merhaba Arkadaslar,
Asagidaki gibi calisan bir sistemde neler yapilabilir? Konu hakkinda bilgi ve deneyimli arkadaslarla tartisalim istiyorum.
VODS= Video dosyalarimizi barindiran sunucumuz
WEBS= Video dosyalarini yayinlayan, ziyaretcinin muhattap oldugu site.
HS= VODS daki videolari, kendi uzerinden izletmek isteyen, sisteme disaridan dahil olmak isteyen site.
Z= WEBS gelen Ziyaretci, vidolarimizi izlemek isteyen sahis.
* Z, google dan WEBS`de yayinlanan abcxyz.mp4 adli kedi videosunu izlemek icin WEBS ziyaret eder.
* WEBS, Z nin IP adresini alir ve VODS`a Z sahsi su IP ile senden abcxyz.mp4 izlemek istiyor der. WEBS, abcxyz.mp4 dosyasinin VODS`da yuklu oldugunu biliyor ama tam erisim URLS yok, sadece aralarindaki API vari bir yapi ile konusuyorlar. Yani VODS daki iceril listesi daha once WEBS bildirilmis ve aralarinda dosya URL sifrelenmesi icin KEY bilgisi var.
* VODS, sadece Z nin IP adresinden geldiginde erisilebilcek ve X saat sonra kendini imha edecek /sifrelihash/abcxyz.mp4 seklinde bir erisim linki olusturur ve WEBS iletir.
* WEBS, VODS dan gelen linki embed olarak basar.
* Z, abcxyz.mp4 videosunu izler.
Simdi bu yukaridaki senaryoda HS nasil VODS dan video izletir?
Tahmini guvenlik aciklari:
1* HS nin botu Z taklidi yaparak, WEBS girer ve abcxyz.mp4 icin talepte bulunur. Talepte bulunana HS IP si oldugu icin VODS gonderecegi link Z de izlenemez.
2* HS, IFRAME vs icerisinde WEBS abcxyz.mp4 yuklu oldugu sayfayi acarak videoyu izletmeye calisabilir. Bu durumda WEBS iFrame breaker yada X-Frame-Options ile IFRame uzerinden calismayi engelleyebilir.
3* HS tersine muhendislik ile VODS un link uretme algoritmasini cozmeye calisir. Bu sayade kendisine gelen her Z icin WEBS gibi oda VODS dan link isteyebilir. Bunun cozumu yok ama becerecek adam da kisitlidir. Bunu engelemek icin VODS link olusturma algoritmasinda WEBS bildigi KEY belli araliklarla degistirilir. Bu sayede VODS urettigi linkler her seferinde farkli sekilde sifrelenir.
4* "sadece Z nin IP adresinden geldiginde erisilebilcek dosya linki" Bu tarz bir koruma, basir bir .htaccess ile dahi mumkun, Farkli Web Server yazilimlarinda da farkli cozumler vardir ama bunu asmanin bir yolu var mi? IP spoof ile istek gonderilse de cevap spoof edilen IP`ye donecegi icin bir ise yaramamali.
5* HS, WEBS den video talep eder, VODS HS nin IP icin video linki olusturur. HS videoyu kendi uzerinden stream ederek Z ye videoyu izletir. Burada HS nin bot mu gercek bir ziyaretcimi oldugunu anlamak icin turlu turlu islem yapilabilir, hatta basit sekilde Google ReCaptcha dan "Im not a robot" bu sisteme eklenir. HS bu guvenligi assa dahi, videolari kendi uzerinden stream edecegi icin bizim VODS kadar trafik harcayacak, buda HS istemiyecegi birsey. Ayrica ortalamanin uzerinde bir sayida yaptigi video izleme taleplerinden HS nin BOT oldugu anlasilabilir ve IPsi banlanabilir. HS botlari icin cok sayida IP kullanabilir fakat bu dagitik IP listesi bile bir sure sonra anlasilir ve banlanir.
Bu konuda bilgisi olan baska arkadaslar, bu senaryo icin cozum ve hack onerisini dinlemek isterim. En basit kisim burada 5. Madde ama yuksek trafik ve bir suru sorunu olcak.
Var mi baska cozum oneren?