Partie d’une simple compulsion, ce matin 11h, j’ai décidé d’avoir un Asus EEE …. Et bien c’est un échec. Voici un petit bilan de mes recherches pour ceux qui comme moi ont des envies caractérisées par une nette impulsivité consommatrice.

Comment le demander ? 

Initialement, le constructeur ASUS a décidé d’appeller cet ultra portable un EEE PC (se prononce ipici ) pour 3 easy successifs. Mais pour les commerciaux français il semblerait que l’on le prononce plutôt des manières suivantes :

Heu Heu Heu, ou Hipécé ou bien encore Heupécé.

Néanmoins pour être compris de tous je pense que le mieux c’est de dire : Le tout petit pc en faisant un rectangle avec ses mains.

Ou l’acheter ? 

Nulle part … mais voici un résumé de mes recherche sur Paris :

Darty / carrefour : Ne leur en parlez même pas, il ne savent pas ce que c’est …

Surcouf de Belle épine : Alors là ils savent vaguement que ça va sortir mais quand ? ….

SFR : Plusieurs réponses possibles, “Ah je viens de vendre le dernier ..” ou bien “J’en ai deux mais ils sont réservés“. Par contre je tiens à signaler une illégalité en ce qui concerne de la vente lié. Sur 5 centres SFR, 4 m’ont certifié qu’il était impossible d’acheter un Asus EEE chez eux sans abonnement. C’est tout simplement faux selon la lois mais aussi selon leur site internet.

Fnac chatelet : Là un grand moment de tristesse .. “Monsieur, cela ne va pas être possible, on  en a 9 et il y a 150 réservations il va falloir attendre Mars.

 Et sur le net ?

Materiel.net : après entretien téléphonique il semblerait que la bête ne soit plus disponible. En ce qui concerne le modèle de couleur Noir, leur prochaine livraison est annoncée dans 15 jours et aucunes livraisons n’est prévu pour le blanc.

Mais alors quand ? 

Vendredi pour les lèves tôt et dans toutes les agences SFR, il y a des chances qu’il y en ai. Sinon je pense qu’il va vraiment falloir attendre Mars pour pouvoir l’acheter sans courir.

Conclusion 

Je suis très déçu. D’une part ma compulsion n’ a pu être assouvie, ce qui va sans doute me rendre très triste. D’autre part l’engouement pour ce produit était plus que prévisible et visiblement “presque” aucun professionnel de la vente ne s’en ait aperçu. Mais peut être que je me trompe, que j’ai faux sur toute la ligne et que tout a été mis en œuvre pour satisfaire le besoin du client compulsif que je suis. Seulement dans ce cas pourquoi ouvrir des réservations seulement un jour avant sa sortie pour les magasin SFR contre une semaine pour materiel.net ? SFR n’avait-il pas confiance en ce produit ?

Un démarrage craintif en France, c’est ce que je retiendrais du EEE.

Comme une sorte de firewall applicatif le programme doit récupérer les paquets et les décoder.
Pour ce faire j’utilise un module d’iptable, ip_queue (source : http://www.cs.princeton.edu/~nakao/libipq.htm) .

Il faut tout d’abord installer les devel de iptable ( yum install iptable-devel ).

Ensuite on charge le module ip_queue :

[root@bodman ~]# modprobe ip_queue
[root@bodman ~]# lsmod | grep ip_queue
ip_queue 17113 0

Pour finir , il faut d’une part, sélectionner quelle partie du trafic réseau doit on analyser et d’autre part utiliser une application tiers pour l’analyser. En ce qui concerne la capture des paquets ip on utilise une regle iptable qui redirige vers QUEUE :

iptables -A OUTPUT -p tcp –sport 6112 -j QUEUE

ou

iptables -A OUTPUT -p TCP -m owner –uid-owner 500 -j ACCEPT

Pour information voici l’aide du module owner :
OWNER match v1.3.8 options:
[!] –uid-owner userid Match local uid
[!] –gid-owner groupid Match local gid
[!] –pid-owner processid Match local pid
[!] –sid-owner sessionid Match local sid
[!] –cmd-owner name Match local command name
NOTE: pid, sid and command matching are broken on SMP
En ce qui concerne l’application, elle sera en C, un exemple est disponible su cette page :http://www.cs.princeton.edu/~nakao/libipq.htm

Voila, j’utilise ensuite xosd pour afficher les infos. Il me reste à effectuer les ping en C (je ne sais pas encore trop comment m’y prendre au mieux).

Bon soyons sérieux, je déteste la LiveBox, seulement c’est le seul moyen d’avoir TV et Telephone chez Orange…
Il ne s’agit pas d’un appareil professionnel et pour lui faire cracher ne serait-ce que quelques valeurs comme la marge de bruit il faut se lancer dans tout un mic mac telnet machin truc chouette … (et j’en passe…).
Bref comme j’ai passé mon dimanche à triturer ce bout de ferraille, voici quelques brides de mes recherches.

L’interface Web de la live box permet d’obtenir ces valeurs, seulement pour automatiser sa récupération …prout…
Comme la livebox dispose AUSSI du service telnet j’ai commencé par chercher les valeurs nécessaires : user:root / pass:1234

Ensuite on se retrouve dans le système suivant :

[ root @ home ] $ adsl
[ root @ adsl ] $ mon
ADSL Monitoring is Successful.  The values are:

  adslLineStatus : Opérationnel
   adslMode  : G992_5_A
   Upstream = 944 Kb ( Intlv[LP0] )
   Downstream = 8524 Kb ( Intlv[LP0] )
 =================================================
   DIAG Info            :
=================================================
   Attenuation ( dB )   :       29.2        12.3 (FE)
   SNR margin  ( dB )   :        10         13 (FE)
   HEC counter          :      956
   CRC counter          :      131
  RTFirmwareVer  : 0x0c16010c

Superbe j’ai tous ce que je voulais et même plus. Il ne reste plus qu’à me faire un petit script pour automatiser tout cela :

#!/usr/bin/perl
# A Script to get LiveBox ADSL status by Bodman@wanadoo.fr
 # standard output :
 #   Up:944 Down:8524 LocalAtt:29.2 TermAtt:12.3 LocalSNR:10 TermSNR:13 HEC:960 CRC:135
 # Reason to get no output :
 #   no host param
 #   bad user/password (  <> root/1234 )
 #   bad adsl monitoring output ( <> 18 lines )
 #   livebox stress
# Get host,user,pass ( root / 1234 default )
 if ($ARGV[0] ne "") { $host = $ARGV[0]; } else { exit(); }
 if ($ARGV[1] ne "") { $user = $ARGV[1]; } else { $user = 'root' }
 if ($ARGV[2] ne "") { $pass = $ARGV[2]; } else { $pass = '1234' }
# Get Telnet env
 use Net::Telnet;
 $telnet = new Net::Telnet ( Timeout=>20 );
 $telnet->errmode(sub {die @_ unless $_[0] =~ /eof/});
# Telnet Login
 $telnet->open($host);
 $telnet->login($user,$pass);
#Go to adsl env and get monitoring
 $telnet->cmd("adsl");
 @tableau = $telnet->cmd("mon");
#End Telnet session in good condition
 $telnet->cmd("exit");
 $telnet->cmd("exit");
 $telnet->close;
if (@tableau == 18) #good data
 {
# FORME DU TABLEAU
 #=====================================================
 #...
 #5   Upstream = 944 Kb ( Intlv[LP0] )
 #6   Downstream = 8524 Kb ( Intlv[LP0] )
 #...
 #10  Attenuation ( dB )   :       29.2        12.3 (FE)
 #11  SNR margin  ( dB )   :        12         13 (FE)
 #12  HEC counter          :      956
 #13  CRC counter          :      131
 #...
 #=====================================================
#Prepare data
 @tableau[5] =~ s/^.* = ([0-9]*) Kb.*$/Up:\1 /;
 @tableau[6] =~ s/^.* = ([0-9]*) Kb.*$/Down:\1 /;
 @tableau[10] =~  s/^.*:[^0-9]*([0-9.]*)[^0-9]*([0-9.]*).*$/LocalAtt:\1 TermAtt:\2 /;
 @tableau[11] =~  s/^.*:[^0-9]*([0-9.]*)[^0-9]*([0-9.]*).*$/LocalSNR:\1 TermSNR:\2 /;
 @tableau[12] =~ s/^.*:[^0-9]*([0-9.]*).*$/HEC:\1 /;
 @tableau[13] =~ s/^.*:[^0-9]*([0-9.]*).*$/CRC:\1 /;
# cut \n
 chop(@tableau);
#print data
 print @tableau[5];
 print @tableau[6];
 print @tableau[10];
 print @tableau[11];
 print @tableau[12];
 print @tableau[13];
}
exit();

Avec ça on trouve une sortie compatible avec cacti :

./adsl_livebox.pl 192.168.1.1
Up:944 Down:8524 LocalAtt:29.2 TermAtt:12.3 LocalSNR:10 TermSNR:13 HEC:960 CRC:135

Chouette je n’ai plus qu’à faire de beaux graphiques :)

Voici une note un peu brève, mais synthétique sur cacti (http://www.cacti.net/).

Installation

Un yum install cacti ne va pas suffire pour utiliser cacti. Je conseil alors :

yum install cacti mysql-server rrdtool net-snmp-utils httpd

Ensuite une petite préparation de base MySQL s’impose :

service mysqld start
mysql -u root
CREATE DATABASE cacti;
grant all on cacti.* to root@localhost;
grant all on cacti.* to cactiuser@localhost;
set password for cactiuser@localhost=password(’cactiuser’);
use cacti;
source /usr/share/doc/cacti-0.8.7a/cacti.sql;
exit
service mysqld restart
service httpd start

De même il faut penser à decommenter l’unique ligne du fichier /var/crond.d/cacti (puis faire service crond restart).
Enfin dans un navigateur faites http://localhost/cacti :D

Utilisation

En ce qui concerne l’usage même de cacti je trouve qu’il n’est pas particulièrement bien guidé, voici comment s’y prendre :

Etape 1. Comment récupérer une information
Collection Methods -> Data Input Methods ou Data Queries

Etape 2. Le type et la forme de l’information
Templates -> Data Templates
Dans cette catégorie on devra entre autre remplir un champ Data Input Methods (voir Etape 1)

Etape 3. La représentation visuelle des informations
Templates-> Graph Templates
C’est là qu’une certaine confusion peut naître dans la section Graph Template Items.
Le champ Data Source de cette section correspond en fait à une entrée de la catégorie Data Templates (voir Etape 2).

Etape 4. Définition d’un type d’hôte (serveur, routeur, switch etc …)
Templates-> Host Templates
On va alors définir un type d’hôte auquel va correspondre des Data Queries(Etape 1) possible et des Graph Template(Etape 3) possibles.

Etape 5.Création d’hôte.
Management-> Devices
Il est désormais possible d’ajouter les éléments du réseau surveillé pour peut qu’on dispose des Host Templates (Etape 4) correspondants.

Etape 6. Définir les sources d’information.
Management -> Data sources
A partir de ces Devices (Etape 5) et d’un type de Data Template (Etape 2), on engage alors la premier phase du monitoring, la collecte d’information.

Etape 7. Création d’un Graphique
Management -> Graph management
Deuxieme phase du monitoring, la représentation de ces informations maintenant possible avec un membre des Devices(Etape 5) et un Graph template (Etape 3) accompagné d’une série de Data sources(Etape 6). Il est aussi possible de définir un graph sans Device, il pourra alors récupérer ses informations sur toutes les sources de données.

Etape 8. Pour finir, ce graph va être basculé dans l’arborescence
Management ->Graph management ->Choose an action: -> Place on a tree

Après tout je ne suis pas le seul dans cette situation, on commence beaucoup de chose, mais on ne finit rien …
Je pense que désormais avant de les commencer j’en toucherai un mot par là histoire de ne pas les oublier trop vite :)

Je me lance donc, voici War3Listen :)

Je suis joueur de Warcraft 3 et un petit problème me titille depuis quelques temps, les utilisateurs des logiciels tels que W3banlist.
Pour les néophytes il s’agit d’une application qui permet, d’une part d’identifier l’adresse IP et le pays des joueurs, d’autre part de « bannir » ceux d’on le comportement n’est pas jugé fair-play (je ne polémiquerais pas sur les abus possibles avec ces options).

Au stade de mon travail, je ne sais pas si je respecte la lois. Mais n’ayant fait aucune modification dans le comportement du jeu lui même (pas de triche) je ne pense pas.

Planning du projet

1 : identifier une méthode pour récupérer les adresses IP utilisateurs
2 : Trouver la méthode la plus rapide pour obtenir à partir d’une IP la nationalité et le drapeau du joueur.
3 : communiquer en plein jeu l’information (nationalité et temps de réponse).

Avancement

A ce stade, j’ai déjà trouvé et traduit les paquets qui détenaient l’information utile. En ce qui concerne la récupération en temps réel, je pense faire une note sur la méthode utilisée, c’est assez intéressant.

J’ai aussi trouvé de quoi communiquer avec le joueur, XOSD marche à la perfection.

Ce qu’il reste à faire

Et bien il reste le plus rébarbatif, tout assembler. De même je n’ai pas encore cherché comment passer d’une adresse IP à un pays.

Titre : Google Hacking : Mettez vos données sensibles à l’abri des moteurs de recherche.

Auteur : Johnny Long

Site web de l’auteur : http://johnny.ihackstuff.com/

Mon avis :

Alors là … chapeau. Bon c’est vrai, la plupart d’entre nous savaient qu’il y avait des choses très intéressantes avec ce moteur de recherche et des options plus qu’intrigantes. Mais de là à faire un livre sur le sujet …Bravo.

Et en plus après lecture on comprend bien qu’il n’est pas forcement complet. En tout cas ce livre répond à pas mal d’interrogations sur le sujet, et même au delà.

Parlons alors du contenu :

  • Utilisation simple et avancée de Google, j’en reparlerais plus tard sur cette note.
  • Plusieurs chapitres sur la place de Google dans des étapes de social engineering.
  • Un grand nombre d’exemples de récupérations directes de données sensibles.
  • Des méthodes pour se “protéger” de Google, ou plutôt des “vilains garçons” qui semblent en faire “mauvais usage”.

Quelques informations utiles extraites du livre :

Ce serait pêcher de réécrire le livre, mais voici un très cours mémo-google sous forme d’exemples qui me semble désormais indispensable :)

Options disponibles dans la recherche

  • filetype:pdf
  • intitle:”contenu du titre de la page”
  • allintitle:”tout le contenu de la page”
  • inurl:”contenu de l’url”

Deux options utiles qui s’ajoute à l’url de la recherche

  • as_qdr=m3 : pages référencées ces 3 derniers mois, donc des pages considéré par Google comme soit nouvelles, soit très populaire.
  • hl=fr : pour passer d’une langue à une autre.

Un cas concret d’usage malveillant

Parmi toutes les informations transmises par ce livre, une m’a le plus marqué, les fichiers BAK . A partir de ce qui a été dit dans le livre voici une requête des plus inquiétantes (je ne sais plus si une telle requête y était donnée, mais qu’importe) :

filetype:bak inurl:php.bak mysql_connect

On obtient alors une liste de pages susceptibles de contenir, soit directement les identifiants mysql, soit l’emplacement d’un fichier qui dispose lui même de ces identifiants (sous réserve que son homologue en .bak existe). De même il faut savoir que la lecture de ces fichiers distants peut alors se faire en total anonymat à l’aide du cache google et de son outil de traduction.

Exemple d’un fichier php.bak …

...
include("config/config.inc.php");
$db = new mysql($cfgServer['host'], $cfgServer['username'], $cfgServer['password'], $cfgServer['dbname']);
 ...

Qui permet de tester l’existance d’un fichier config.inc.php.bak

...
$cfgServer['host'] = ********* ;
$cfgServer['username'] = ********* ;
$cfgServer['password'] = *********** ;
 ...

Mais à quoi cela sert-il d’obtenir un mot de passe généralement inutilisable à distance (les serveurs SQL sont généralement locaux) ?

Tout simplement à l’utiliser sur un des autres services du serveur tels que ssh ou ftp. En effet certains administrateurs pour des raisons qui leurs sont propres utilisent un seul et même mot de passe pour l’ensemble des services réseaux.

conclusion :

Pour finir, et avant que des apprentis hacker ne voient dans cet ouvrage qu’un moyen simple d’obtenir des informations confidentielles, sachez que certains administrateurs l’auront lus aussi, et qu’il s’agira maintenant pour eux de vous identifier à l’aide de fausse informations, un pot de miel (HoneyPot) comme on les aime :)

Voici une page bien intrigante que je viens d’obtenir avec google .. :

Google
Erreur

Désolés…

… nous ne pouvons pas traiter votre requête pour le moment. Un virus informatique ou un spyware (logiciel espion) nous envoie des requêtes automatiques, et il semble que votre ordinateur ou votre réseau soit infecté.
L’accès sera rétabli dès que possible ; essayez de nouveau ultérieurement. En attendant, nous vous conseillons d’utiliser un antivirus ou un anti-spyware afin de vous assurer que votre ordinateur n’est pas infecté par un virus ou un logiciel espion.

Nous vous prions de nous excuser pour ce désagrément et espérons vous revoir bientôt sur Google.

Et là un cryptogramme visuel m’est demandé pour surfer de nouveau chez eux … :)

l’origine de cette page ? quelques tentatives d’utilisations du paramètre numrange…. Allez savoir :)

Je viens juste de tomber sur un article assez intéressant, l’installation d’une antenne satellite en émission réception astra (pour un accès internet) : http://www.clubic.com/article-89628-7-internet-satellite-astra-astra2connect.html

Pour les personnes en formation télécom et les curieux du milieu, cette vidéo résume bien le travail d’un technicien télécom.

Edit : je viens de corriger la plus grosse faute technico-orthographique de ma vie …