Thanks to @martin_u from Rue89, he just found on webarchive.org that the awaited live.free.fr website was … a p0rn site.

http://web.archive.org/web/20011104050024/http://www.live.free.fr/

No image are available we would have like to see what kind of p0rn site it was (hard, soft, SM maybe :p)
If someone found the old images …

 

, ,

Introduction

As some of you may know, today should be the official launch date for the Free Mobile GSM carrier in France. Why is it interesting?

Because Free.fr was always a synonym of evolution.

They were the first to sell 50 hours of dial up internet connectivity for 30€ a month when everybody else was selling 10 hours for 50€.

They were the first to sell unlimited 512k DSL internet access for 30€ when everybody else was selling it for at least twice more.

They were the first to promote ADSL2+, increasing the average customer bandwidth by a factor of at least 5.

They announced a new revolution for today: follow the announcement live with us!

Read the rest of this entry

Introduction

As www.devquotes.com was suffuring for a huge peak of traffic, I figured I should install some caching server to meet the performance requirements.

I knew that Varnish was a good choice because of the many articles I came into the last few years, so I decided to give it a try.

Read the rest of this entry

Hi,

Free.fr is playing with us on http://live.free.fr: they added a MD5 checksum on the side of the space shuffle.

It seems that the checksum value changed twice already, so I built a little script that will fetch the page in an infinite loop looking for a new value.

#!/usr/bin/python

from httplib2 import Http
from re import compile
from time import sleep

URL = "http://live.free.fr"
USER_AGENT = "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.12011-10-16 20:23:00"
REGEX = "^[\s]*.*([0-9a-f])[|\\\\].*$"

def fetch():
  h = Http()
  response, content = h.request(URL, headers = { 'User-Agent' : USER_AGENT })
  return content

def parse(content, regex):
  lines = content.split('\n')
  ret = ""
  for line in lines:
    occurences = regex.findall(line)
    ret += "".join(occurences)

  return ret

if __name__ == "__main__":
  latest_hash = ""
  regex = compile(REGEX)

  while 1:
    current_page = fetch()
    current_hash = parse(current_page, regex)

    if (current_hash != "") and (current_hash != latest_hash):
      print "New hash value!"
      print current_hash
      latest_hash = current_hash

    sleep(60)

Today the free.fr staff updated his ascii art space chip (at http://live.free.fr) with the following hash :

df73b956808cd23d30c76725215c9e0e

Atm, this hash has not yet been broken. Will you be the one to find it ?
Maybe it is the startup date of the Free Mobile offer ?

A few hours later, the hash was updated to:

efb7929e6a5b7dcc6ebb79aa3c45af13

This one was quickly cracked: it is corresponding to the checksum for the string jesaispas.

You may also find the following hash on http://www.free.fr/adsl

901b3221b8a74073b6a76371171b69f0

Which was cracked as well: launchpad

We have been informed of a hash that has been Twitted but we can’t confirm that it comes from Free:

e84f1fc5c9fdea09f8f4a1ae2adde8a4

It was cracked a few minutes ago by one of our readers: call3179
Thanks to olahaye74!

You may also be interested into our other post about monitoring the checksum on http://live.free.fr.

EDIT:
We are still trying to crack the first hash. We chosen to generate all dates matching the XX/XX/XXXX format and then use some rainbow tables. Any other idea ?
We are now really close to breaking the hash. Our hashing machines are running for 3 complete hours, and we can say the hash is at least 13 characters long.
Stay tuned!

If you wanna retrieve the md5 hash, here is the script (not from us, I found it on gist.github.com):

#!/bin/bash
# troll: If you don't have bash, go get a real OS.

curl -s "http://md5.noisette.ch/md5.php?hash=$(curl -s http://live.free.fr | gunzip | tail -n 36 | head -n 32 | grep '[a-f0-9]' -o | xargs echo -n | sed 's/ //g')" | grep '<string>' | sed 's/^.*\[CDATA\[\(.*\)\]\].*$/\1/'

, , ,