Bir yazılım yazarsın, çalışsın diye. Ama bazıları çalışmaması için yazar. Hatta kendi kendini sabote etsin, bozulunca başka bir sayfa açılsın, diye. Evet, bugün öyle scriptlerden bahsedeceğiz ki... Bunlar, kendi içine gömülmüş bir virüs gibi davranır. Bozulduğunda bozulmaz. Aksine uyanır.
Hack Script Değil, Hacklenen Script!
Normalde bir sitede dosya bozulursa hata verir, değil mi? Ama bazı özel yazılmış sayfalarda bozulmak, çalışmasının bir parçasıdır. Bu sistemlere kendini hackleyerek tetiklenen sayfa yapısı denir.
Yani kodun içine bilerek hatalar eklenmiştir. Ancak bu hatalar, sadece belirli koşullarda ortaya çıkar:
- Yanlış User-Agent geldiğinde
- Beklenmeyen bir IPden sorgu geldiğinde
- Dosyanın URL parametresi manuel değiştirildiğinde
Ve işte o an... Script bozulmuş gibi yapar ve arka plandaki gizli fonksiyonlar tetiklenir.
Kaynak Kodu Bilerek Bozmak Ne Demek?
İyi bir yazılımcı hata yapmaz. Ama çok iyi bir yazılımcı, hatayı tasarlar. İşte örnek bir bozulma senaryosu:
// Normalde:
if(user.isAdmin) {
showPanel();
}
// Hackli hali:
if(user.isAdmin = true) {
showPanel();
triggerGhostScript();
}
Yukarıdaki örnekte bir = ile == farkı, her şeyi değiştiriyor. Kod, admin kontrolünü baypas ediyor. Ama bunu sadece belirli bir URL query geldiğinde yapıyor. Sıradan kullanıcıya hata, bilene gizli içerik.
Bu Siteler Ne İşe Yarıyor?
Kodlar bozulduğunda şunlar olabilir:
- Yeni bir sekmede gizli bir içerik açılır
- Arka planda dark webe bağlantı kurulur
- Kullanıcının makinesi gizlice fingerprint edilir
- Ekstra JS kütüphaneleri yüklenir
Bazı durumlarda bu siteler, görünüşte bozulmuş gibi bir 500 Internal Server Error verir. Ama kaynak kodda şunlar olur:
if(location.search.includes("debug=1")){
document.body.innerHTML = ghostPageContent;
}
Yani sadece ?debug=1 parametresiyle tüm sayfa değişir. Görenlerin tüylerini diken diken eden bir başka evreye geçilir.
Neden Böyle Sayfalar Yazılır?
| Motivasyon | Kullanım Alanı | Etki |
|---|---|---|
| Gizli ağ iletişimi | Darknet komut zinciri | Bot ağı yönetimi |
| Psikolojik test | Hacktivist siteler | Yalnızca meraklılar görür |
| Sanatsal protesto | Anti-sistem web projeleri | Kullanıcıyı sorgulatır |
Bozuldu Sanıyorsun, Ama Sen Bozuluyorsun
İşin psikolojik kısmı da var. Bir sayfayı açıyorsun, hata veriyor. Sayfa çalışmıyor gibi. Ama arka planda seni tarıyor, analiz ediyor. Bazen seni başka bir sekmeye yönlendiriyor, kendine çok benzeyen ama aslında olmayan bir kopyaya... İşte orada başlıyor oyunun ikinci turu.
Bu Sayfaları Nasıl Anlarsın?
Gerçekten zor. Ama birkaç ipucu:
- Sayfa hata verir gibi yapıyorsa ama console.logda trafik varsa, dikkat.
- URLlerde trigger, openkey, gate gibi kelimeler varsa dikkat.
- Hata mesajları çok özensiz ve yapay duruyorsa (çünkü gerçek bir hata değil)
Ayrıca bazı siteler, kendilerini sadece eski tarayıcılarda gösterir. Çünkü modern tarayıcılar kodları parse edemez. Bu bir tür geriye dönük tuzak mantığıdır.
Kapanış?
Kodlar bozuldukça bozan değil, açan hale geldi. Eskiden hatalar felaketti. Şimdi ise bir geçit. Belki de modern yazılımcılar artık programlamıyor, tasarlanmış hata evrenleri kuruyor.
Bozulan kod, bazen en dürüst mesajdır.