oui Matejie je m'en souvient tres bien^^
je passait juste faire un tour, histoire de voir ce qui a changé
revenons a nos moutons :
ce qui blinde les serveurs, c'est de faire combattre ses 30 000 eleves en 10 minutes
fois 500 personnes et devinez le resultat
a l'epoque de accro , c'est clair que c'est a cause de ca que leur serveur tenait pas, mais ensuite ils ont mit une "clé k" pour les combats, et pendant 4 mois on etait dans l'impossibilité de faire combattre plusieurs millier d'eleves en quelques minutes
en gros avant le simple fait de charger ça par exemple : http://thebrutux.mybrute.com/vs/aylove , le combat etait fait
(exemple sans le mdp de thebrutux : http://machin.labrute.fr/vs/m-allison45 )
maintenant il faut obligatoirement cliquer sur " lancer le combat" , ce qui n'était pas le cas avant
et ça génère un lien de ce genre : http://thebrutux.mybrute.com/fight/?d=aylove;k=4bfd551e1be4
les programmeurs de brutal combo ont cracké cette clé entre autre, et on donc permit a nouveau un uppage des eleves extrement rapide
apres le reset, MT a aussi changer radicalement leur mode de reqetes, avant ils envoyait leur requete en GET,
c'est a dire par exemple sur yahoo, si je veut faire une recherche pour "requete get" la reqete envoyé est :
http://fr.search.yahoo.com/search?rd=r1&p=requete+get&toggle=1&cop=mss&ei=UTF-8&fr=yfp-t-703
en chargeant cette reqette, en le collant dans le navigateur et en validant , ou avec une iframe etc... la requete sera effectué sans probleme
maintenant sur labrute, le systeme d'iframe a l'epoque de accro ne fesait que recuperer des requêtes de ce genre, grace a tamperdata on bloquait les requetes et on les recuperait
on appelle ca des "lien de creations", un lien est egal a 1 eleve
il fallait donc plusieurs millier de liens de ce genre :
http://w13winni.labrute.fr/create?name=elevespost1&gfx=1%3B0%3B64%3B45%3B70%3B54%3B13%3B84%3B8%3B69%3B7%3B64%3B34%3B31%3B71%3B23&k=5aa682037186&cpl=40j389Zq758cjEICeFLHdWsUYwddy0tt&m=MnLeSC8KKc%5Bn%40VBD%5CGXHRjFRUr%3DFs%5Boc
vu que c'est une requête en get, le seul fait de charger ce lien dans le navigateur créait un eleve, ici elevespost1
on metttait des millier de lien de ce genre dans un fichier.txt( jai par exemple creer un script actionnaz pour recuperer en boucles des liens de creation ) , ensuite un script php allait chercher un lien de la liste et le chargeait dans la navigateur, et cela chaque fois qu'un visiteur visitait un site ou une iframe avait été placé et redirigeait sur le script php
vous me suivez toujours ? xD
apres le reset, MT a migré vers un autre systeme de requetes, les requête POST.
c'est a dire que ce qui etait chargé dans le navigateur etait seulement : http://w13winni.labrute.fr/create
et dans le header de la requete on trouve :
POSTDATA =name=elevespost1&gfx=1%3B0%3B64%3B45%3B70%3B54%3B13%3B84%3B8%3B69%3B7%3B64%3B34%3B31%3B71%3B23&k=5aa682037186&cpl=40j389Zq758cjEICeFLHdWsUYwddy0tt&m=MnLeSC8KKc%5Bn%40VBD%5CGXHRjFRUr%3DFs%5Boc
donc on ne peut plus charger dans la navigateur,
les requetes POST sont beaucoup plus compliqué a mettre en place
bien sur nous avons reussi a faire un script php qui envoit des requetes POST, le problème c'est que les requetes ne se chargeait plus dans la navigateur, mais sur notre serveur, donc quand une personnes activait l'iframe, ce n'etait pas son ip qui etait utilisé, mais l'ip de notre serveur, c'est a dire notre pc !
donc le systeme d'iframe etait neutralisé, du moins en php, car c'est un langage web qui s'exécute coté serveur
on pouvait du moins utilisé le script , mais en rebootant sa box ( ce script etait utilisé seulement par nous bien sur, environ 15 membres "vip" pour nous préserver de MT )
vous allez me dire : mais tout a l'heure aussi s'était un script php, alors pourquoi les requêtes s'exécutait dans la navigateur ?
tout simplement parceque le script php émulait juste une "iframe html",il generait un code html, une iframe qui contenait le lien de creation, qui se chargeait donc dans la navigateur
or pour une requete en post, c'est plus compliqué et on ne peut pas utilisé une iframe pour envoyé une requetes
/!\ a ne pas s'embrouillé, il y a une iframe que l'on place sur un site qui vas charger un script php qui lui meme vas charger une iframe qui elle vas charger un lien de creation
c'est clair ?
une iframe ressemble a :
<IFRAME src="http://google.fr" width=0 height=0 scrolling=auto frameborder=0 > </IFRAME>
si on place ça dans le code source d'un site, d'un forum, google sera charger en invisible a l'insu des utilisateur
c'est une requete get
pour en revenir au POST, les fonctions php pour l'envoie d'une requête post ne permettent pas de charger cette requête dans la navigateur et donc de prendre l'ip du client
jai donc essayer moi meme de passer par une script javascritp /html de type formulaire
le POST est bien envoyé sur les serveur de labrute et par le navigateurs!
par exemple je peut creer une page permettant de changer le mdp de sa brute sans allé sur le site de labrute !
malheureusement en ce qui concerne la creation, il y a encore une autre protection :
le xhttpmagic : http://thebrutux.mybrute.com/crossdomain.xml
vous voyez, si le serveur ne trouve pas le xhttpmagic dans le header, la requete n'est pas accepté
hors, en php il est tres facile d'implanter un header, mais pas dans un un formulaire html / javascript !
c'est impossible !
l'un dans l'autre, le script php et le formulaire se complète, mais tout seul, ils ont chacun un gros defaut que l'on ne peut pas resoudre.
exemple d'un header d'une requete :
Host=thebrutux.mybrute.com
User-Agent=Mozilla/5.0 (Windows; U; Windows NT 5.1; fr; rv:1.9.0.13) Gecko/2009073022 Firefox/3.0.13
Accept=text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language=fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding=gzip,deflate
Accept-Charset=ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive=300
Connection=keep-alive
Cookie=__utma=80257992.1519820047232599800.1251814735.1251996934.1252096047.7; __utmz=80257992.1251814735.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none); __utmc=80257992; __utmb=80257992.22.10.1252096047; sid=q2tJTkSuF2uAkgQWJhZ2xxbdqeoVbHVr
Content-type=application/x-www-form-urlencoded
X-Http-Magic=fd329f2e37e6Content-length=191
POSTDATA =name=elevespost1&gfx=1%3B0%3B64%3B45%3B70%3B54%3B13%3B84%3B8%3B69%3B7%3B64%3B34%3B31%3B71%3B23&k=5aa682037186&cpl=40j389Zq758cjEICeFLHdWsUYwddy0tt&m=MnLeSC8KKc%5Bn%40VBD%5CGXHRjFRUr%3DFs%5Boc
voila la requete type lors d'une creation d'eleve sur labrute
avec un formulaire html,, il manque juste le hxttpmagic a implanter, ce qui est impossible
dommage
comme quoi MT a ete irréprochable pour le coup, car il est tout simplement impossible de refaire un systeme d'iframe
( bon, avec des aplets en java, ça serait possible, mais avec plein d'avertissement pour l'utilisateur, bref, ca ne vaudrait pas le coup)
les programmeurs de brutal combo ont aussi cracké toute les autres clée, on peut refaire des brute ameliorés etc... etc.... ils ont fait quelques choses d'enormes
leur programme ont tout basé sur le reboot des box, 10 % des eleves creer depuis leur prog leur reviennent, d'ou les 1 millions d'eleves
en espérant avoir éclairé quelques uns sur la façon de cheat, sur les clé, sur les differents systeme de protection,
et en espérant que les rageux soit eclairé sur le fait que le cheat sur labrute n'est pas seulement cliquer sur un bouton et hop on est 1er....
il y a un énorme travaille derrière et je ne pense pas démérité en étant 1er sur le serveur mybrute
ps : utiliser tamperdata pour analyser les requetes
fin de l'exposé
note : ?