<img src=x> XSS AÇIĞI [gameofturk.com]

hacii_

Zombi Katili
En iyi cevaplar
0
Merhaba arkadaşlar: gameofturk.com sayfasındaki keşfettiğim xss açığını anlatacağım.
Başlayalım:
#1#

XSS açıkları kısaca sayfaya enjekte edilen form elementlerin valuelerindeki html etiketleridir desek doğru olur.
Xss açıkları için formları kontrol etmek en doğru yöntemdir.
Kayıt olma formunu ele alıyoruz.

Xss açığı formdaki elementlerinin hepsi olabilir anlamak için hepsini denemeliyiz.
"<", ">" etiketlerini kullanarak kayıt olmaya çalıştım ve kayıt olmadı yani çalışmıyor.
Bu demek oluyor ki: <hikmet></hikmet> adında bir kullanıcı adı alamam.
Fakat ' (tırnak) işareti çalışmakta yani: hacii_' adında bir kullanıcı adı alabiliriz.
Sayfaya axa kullanıcı adıyla kayıt oldum ve giriş yaptığımda benim kullanıcı adım: axa yazıyor ve birde karakterin skin resmi var hemen aşağıdaki resime bakın göreceksiniz:

axa skinini benim profil resmine vermiş. Hemen profil resmini merak ettim ve inceledim. Resimin kaynağına baktım.

Resimlerin kaynağı belli oldu cravatar.eu sayfasından oyuncuların skini geliyor.
Çalışma mantığı şu: cravatar.eu/avatar/isim/büyüklük
Yani isiminizi img src kısmına /avatar/isiminiz/büyüklük yeşil yazan yere enjekte edecek.
Peki ben tırnak işaretli bir isimle giriş yaptığımda örneğin hikmet' isimli bir kullanıcı adıyla giriş yapıyorum sonuç aşağıdaki resimde.

Resim yok çünkü resimin kaynağı bulunamadı ve hikmet' isimli kullanıcı adımı hikmet\\\' diye yazdı. PHP string fonksiyonlarından birisiyle alakalı herhalde herneyse, bence ilginç.
Hemen resimin kaynağını <img src= > kısmını inceliyelim aşağıdaki resime bakın:

src kısmını inceleyin yeşil ile işaretli yeri gördünüz mü 80.png yazıyor bundan bahsediyorum :D
Bu ne demek nasıl oldu ? hikmet' kullanıcı adımızın sonundaki tırnak ' işareti src= kısmını bitirdi kapattı ve ondan sonra yazılacakları src ' ın dışına yazdı. Yani tırnak işaretini anlamamız gerek inceleyin:

hikmet (tırnaksız isim):
<img src='avatar/hikmet/80.png'> // url doğru resim yüklendi.

hikmet' (tırnaklı isim):
<img src='avatar/hikmet' 80.png'> // url yanlış resim yüklenmedi.

Tırnak işareti işte src kısmını bitirdi ve 80.png yi dışarıya yazdırdı.
Yani sonuç src= kısmından çıktık ve <img> etiketinin içindeyiz.
şu an buna height= özelligini verebiliriz test edelim:
İsmimi 'height:599px yaptım ve sonuç :


 
Son düzenleme:

AliOfficial

Zombi Katili
En iyi cevaplar
0
baya iyi bir açıkmış bek bir şey olmaz bu açıktan ama genede düzeltilmesi gereken bir açık.
 

UmmetEmin

İnsanlar unutulduklarında ölürler.
En iyi cevaplar
0
Peki bir soru sormak istiyorum. Bunu senden başka kaç kişi görecek? Html ile oynadığını görecek tek kişi sensin. Siteyi incelemedim ama sanırsam başka kullanıcıların profillerini göremiyorsun. O yüzden tek sen görmüş olacaksın. Tek sen göreceğin içinde hiçbir işine yaramayacaktır. Site zaten COOKIE kullanmıyor o yüzden javascript bir işine yaramayacak. Kısacası: Boş iş, boş uğraş...
 

bgencacat

Lapis Toplayıcısı
En iyi cevaplar
0
Bir şeyin açık olabilmesi için o şeyin istenmeyen bir duruma yol açması gerekir. Çok yormasaydın kendini öğeyi denetleden csslerle oyna logoyu değiştir hackledim de.
 
Üst