dimanche 24 février 2013

mercredi 23 janvier 2013

Have fun avec la Bbox Sensation

Pour ceux qui sont chez Bouygues pour leur accés internet,vous n'avez pas du louper le lancement de l'application Bbox Tab pour les tablettes Android (PC INpact)

Je me suis demandé de suite comment les ingénieurs de chez Bouygues ont implémenter le fait de pouvoir commander le décodeur télé à partir de la tablette.

J'aurai pu m'attaquer directement à l'apk de l'application installée sur ma tablette, mais au lieu de ça, j'ai utilisé l'un de mes outils préféré Wireshark !

La mise en place en tant que telle n'est pas difficile

Tablette ---- Switch Wifi ---- PC ---- Bbox

Une fois tout ça mis en place, y'a plus qu'à regarder ce qu'il se passe.

Et au milieu de tout les paquets reçu.


Des trames SNMP qui partent de ma tablette vers une adresse IP étonnant non ?

denia@machine ~ $ snmpwalk -c public -v 1 192.168.1.248
iso.3.6.1.2.1.1.1.0 = STRING: "Linux snmp 2.6.39.4 #1 SMP PREEMPT Wed Nov 21 05:27:54 CET 2012 i686"
iso.3.6.1.2.1.1.2.0 = OID: iso.3.6.1.4.1.8072.3.2.10
iso.3.6.1.2.1.1.3.0 = Timeticks: (2566308285) 297 days, 0:38:02.85
iso.3.6.1.2.1.1.4.0 = STRING: "root@localhost"
iso.3.6.1.2.1.1.5.0 = STRING: "snmp"
iso.3.6.1.2.1.1.6.0 = STRING: "local"
[...]


iso.3.6.1.2.1.7.5.1.1.0.0.0.0.42162 = IpAddress: 0.0.0.0
iso.3.6.1.2.1.7.5.1.1.127.0.0.1.1030 = IpAddress: 127.0.0.1
iso.3.6.1.2.1.7.5.1.1.127.0.0.1.1900 = IpAddress: 127.0.0.1
iso.3.6.1.2.1.7.5.1.1.192.168.1.248.1030 = IpAddress: 192.168.1.248
iso.3.6.1.2.1.7.5.1.1.192.168.1.248.1900 = IpAddress: 192.168.1.248
iso.3.6.1.2.1.7.5.1.1.239.255.255.250.1900 = IpAddress: 239.255.255.250

[...]
iso.3.6.1.2.1.25.3.2.1.3.768 = STRING: "GenuineIntel: Intel(R) Atom(TM) CPU CE4235   @ 1.20GHz"



C'est bien la Bbox, sur une seconde adresse IP, car le routeur de la Bbox est 192.168.1.1 chez moi.
L'adresse 192.168.1.248 correspond à la partie décodeur télévision.

Bref, en regardant de plus les informations du paquets snmp envoyé par la tablette. On remarque que la communauté par défaut est public, que le protocole SNMP utilisé est la version 1 et l'oid et la valeur sont

1.3.6.1.4.1.8711.101.13.1.3.28.0 : 3537(Hex) soit 57(ASCII)

Ce qui correspond à la touche 8. Je tente de l'envoyer de ma machine.

denia@machine ~ $ snmpset -v1 -c public 192.168.1.248 1.3.6.1.4.1.8711.101.13.1.3.28.0 s 57 iso.3.6.1.4.1.8711.101.13.1.3.28.0 = STRING: "57"

Et ça zappe !

Voici les codes pour toutes les touches de la télécommande :

FonctionValeur (String)
Arrêt30
150
251
352
453
554
655
756
857
958
059
Chaine +25
Chaine +26
Volume Up27
Volume Up28
Ok7
Fléche Haut5
Fléche Gauche6
Fléche Bas9
Fléche Droite8
Mute32
Retour13
Quitter16
VOD30
M@TV46
Infos15
Maison12
Liste45
Guide31
Rewind18
Play/Pause23
Stop20
Rec24
Avance rapide19


mardi 22 janvier 2013

Mais p'tin pourquoi ça marche pas ! Le broadcast SSDP à travers un bridge sur Linux Mint 14


Mais p'tin pourquoi ça marche pas, voilà ce que je me suis dis ce matin en ne voyant pas mes broadcasts SSDP passer de l'autre coté de mon bridge.

Aprés avoir cherché durant plusieurs heures, ce que j'ai pu faire de travers. (Surtout que je l'avais fait y'a moins d'une semaine sans probléme) J'ai commencer à accuser tout et n'importe quoi. Mon routeur qui n'est utilisé qu'en switch pour passer les paquets de ma tablette à travers mon bridge. Mon pc, mes compétences, mon chat entrain de manger ses croquettes, enfin tout.

J'ai même activé le routage, désactivé tout un tas de truc. Mais rien n'y faisais, pourtant je voyais bien les broadcasts de mon DHCP et le reste du traffic. Excepté ce qui m'intérressais ! Le traffic SSDP

Aprés recherche sur le net. Y'a pas 36 solutions pour monter un bridge entre deux interfaces.

ifconfig eth0 0.0.0.0
ifconfig eth1 0.0.0.0
brctl addbr br0
brctl addif eth0
brctl addif eth1

Si on veut du spanning tree :
brctl spn on

ifconfig br0 up

Et si on veut pouvoir surfer de la machine, on lui colle une addresse ip et une route par défaut.

C'est pourtant pas compliqué ?! Bah faut croire que si !

Et là, je tombe sur une discussion du forum Gentoo de quelqu'un qui expliquais que depuis qu'il était passé à la série 3.5 du kernel il avait ce probléme.

Là, je me rappelle que la semaine derniére, j'avais mis à jour Linux Mint, passant ainsi de la version 12 à la 14.
Un "uname -a" et un downgrade vers la série 3.4 plus tard. Probléme résolu.
Et voilà 2 heures de perdues, la prochaine fois j'accuserai aussi mon kernel...