Particiones del GPS YFGPS

dilluns, 26 d’octubre del 2009

\ResidentFlash -> para guardar nuestros archivos, de normal vacia
\ResidentFlash2 -> Donde esta el menu (oculta)
\Binfs -> donde esta el windows (oculta)
\regfat -> Donde esta el registro (oculta)

YFGPS 4,8 Internals

diumenge, 18 d’octubre del 2009

Finally, I opened my GPS.

It's a YFGPS, with 4,8" screen and bluetooth handsfree bought at dealextreme.
http://www.dealextreme.com/details.dx/sku.26916

I'll describe the steps for acces to it's internals. It's easy to open, and don't have any special issue.
First all, you should remove 4 little screws:

Next step should be remove the upper frame. It's a pressure system and it could be removed using only our fingernail, be careful with microphone and his cable.
When the frame are removed, you can see the touch screen.
You should pull carefully the touchscreen

and have acces to PCB.
Now, to access at rear PCB side, you sould remove 5 screws:and GPS are disassembled. In the next image, you can see a couple of pins, it's possible that these pins are a serial or JTAG. Next time i'll test this.
The battery dimensions are 5mm of depth and over 50mmx30mm. I forgot to get a better measure, sorry.
Edit: Battery dimensions are 34x45x5mm (34x52x5mm with protector), and the battery hollow are 36.5x47.5x8mm

Funda per al GPS

Doncs recentment, em vaig comprar un GPS de la marca Yuan Feng en Dealextreme.



Al canvi va eixir per 68€ amb targeta SD de 2G, adaptador per al conector de la mistera del cotxe i la xarxa elèctrica, i un adaptador
Amés ve amb una ventosa molt útil.
Però clar, jo l'empre principalment de reproductor MP3 i mans lliures, i no m'agrada deixar la ventosa posada, així que he pensat una forma de camuflar-lo i al mateix temps tenir una funda.

Per a això sols ha calgut un arxivador de CD's, dels que en caben 25, i un poc de velcro autoadesiu (amb mig metre està bé)
En primer lloc buidem del arxivador el manoll de fundes per a CD, i posteriorment amb el velcro auto-adesiu el que fem es crear-li un parell de tirants, tal i com es mostra en la imatge:


Ara sols en quedarà posar-li un poc de velcro a la part inferior i a la part trasera del GPS per a que enganxe:


Amb tot açò ja tindrem una funda de camuflatge per al nostre GPS:


Amés, també ens pot servir de susbtitut de la cridanera ventosa, simplement afegint-li un poc de velcro a la part inferior de la funda, i en el cotxe.
Aquesta vegada l'adesiu del velcro no és suficientment fort, ja que la funda es de tela, i ens caldrà una mica de cianocrilat (superglú) per a enganxar-lo a la funda. A la part del cotxe no ens caldrà.


M'haguera agradat emprar un arxivador rígid, i no aquest, ja que el rígida protegiria més els impactes (aquest ja m'ha caigut un parell de vegades, la darrera vegada obert).
La propera versió ho serà amb arxivador rígid.

NAS sold

dimarts, 10 de març del 2009

Last week I sold my NAS to my friend Julio.
I need a NAS that work fine under debian, and I've network stability issues when I use Yohannes kernel 2.6 port.
At last, I bought a Linksys NSLU2 at ebay, and now I'm waiting for it.

Hacking the NAS. Group Created

dilluns, 3 de novembre del 2008

I created a discussion group at yahoo.com
Group name (and link) are:

http://tech.groups.yahoo.com/group/FT3563-BT/

It's a discussion group about how to hack these cheap (and bad) NAS family.
Also, some files may be found at:
http://www.uv.es/cuan/arxius/FT3563-BT/
Root execution privileges are described at firs post of group, and at my blog (www.lliures.org).
Now, I'm waiting for a max3232 cable to test some pins and try to find a serial interface.

Hacking the NAS, part III

I will explain how to I have execution as root at FT3563-BT NAS. This also
work s on NS-348S NAS, and will work on the other NAS family.

Devices what seems identical or similars:

  • Coolmax CN-570 http://www.smallnetbuilder.com/content/view/29899/75/1/3/
  • NS-348S http://www.multicase.de/en/products/76/ns348s.html http://www.enclosureservice.com/
  • Emprex NSD-100 http://www.emprex.com/02_products_02.php?id=205
  • Agestar NCB3AHT http://www.agestar.com/english/products/ncb3aht.asp
  • http://shenztech.com/code/ui/product/product.aspx?prdid=NAS2&subcatid=9
  • revoltec rs049

This family of NAS, will create three partitions:

/dev/sda1 are swap
/dev/sda2 mount at /conf and are some conf files
/dev/sda3 mount at /mnt/data are data.

To have root execution we will:

1.- Put Hard disk and format (from web interface) as XFS (fat not tested, will work also)

2.- Create a user (and share) from web interface

3.- Turn-off NAS, and connect to PC with a USB cable. You may use
Linux to have acces at conf partition.

4.- Copy netcat for arm, to this partition. You can get it at my web:
http://www.uv.es/cuan/arxius/FT3563-BT/
and mark it as executable (chmod +x netcat)

5.- Edit smb.conf, and add this line to share what you created:

root preexec = /conf/netcat -e /bin/ash -l -p 10001 2>> /mnt/data/public/err.log

6.- Connect to this share, ie (my share are sh_toni, and my user are toni):

smbclient //NAS_IP/sh_toni -U toni

When you connect, netcat at NAS wil lbe executed

7.- Connect to NAS using netcat (we use 1001 port):

nc IP_NAS 10001

Now, we are capable to execute programs, like ls, dmesg, ....
If we want access using telnet, we will add "pts/0" to
/etc/securetty, ie, form netcat:

echo "pts/0" >> /etc/securetty
/usr/sbin/telnetd

Now, we can login to nas using telnet, user root without password.

NOTE: As you can see if execute mount, root filesystem are in
/dev/ram0 , and any modification (execept modifications to /conf) will
be lost.

Hacking the NAS. Part II

En aquesta segona entrega, mostraré com accedir com a usuari root al NAS econòmic FT3563-BT amb suport de Bittorrent.
Una vegada obert, podem veure les característiques tècniques que son:

  • Processador Str9104 basat amb un arm922
  • Targeta de Xarxa IP101A
  • Pont USB-IDE/SATA JM20337
  • 32MB de RAM (256Mb) i 8MB Flash (64Mb).

Aquest NAS, funciona amb linux, i i et permet formatar el disc amb XFS.
Per defecte, et fa una partició de Swap i una partició on desa alguns arxius de configuració, com per exemple, els arxius de configuració de Bittorrent, el passwd!!! i el smb.conf.
Aquestes particions no estan disponibles si et conectes per xarxa, però en canvi, si fas ús de la connexió USB si que ho estan. Així doncs sols ens cal un PC amb Linux i suport de XFS per a modificar les configuracions.
El que ens interessa, el smb.conf.
Mirant les opcions de configuració del samba 3.0.8, podem veure que hi han opcions que et permeten executar programes prèviament (o a posteriori) d'una connexió. Son:

  • prexec = nomexecutable ... (postexec = ...) <-Executa una ordre quan algú es conecta al recurs (l'executa com al mateix usuari)
  • root preexec = ... <- En aquest cas executa l'ordre com a usuari root

Voila!!!! Doncs, sols tenim que conectar per USB el disc al PC, i editar el smb.conf per a que al connectar-nos a un recurs execute un programa com a usuari root.


En el meu cas, el programa escollit és el netcat, que el podeu baixar compilat per a arm de la pagina de emdebian o des d'aquesta web
Així doncs, copiem el netcat a la partició XFS i el marquem com a executable (chmod +x netcat).
Editem l'arxiu smb.conf i en un recurs compartit li afegim la següent línia:
root preexec = /conf/netcat -e /bin/ash -l -p 10000
on estem diguent-li que execute el netcat amb els paràmetres d'escoltar (-l), que faça d'interfície amb el shell (-e /bin/ash) i que ens coenctem a ell pel port 10000 (-p 10000).
Així doncs, simplement ens em de connectar a aquest recurs (en el meu cas sh_toni) per a que inicie el netcat com a root.
Des del PC, emprarem també el netcat per a conectar-nos al NAS:
netcat 192.168.16.1 10000 (en cas de que el NAS tinga la IP 192.168.16.1)
i ja podrem executar programes, com per exemple:
ls fa un llistat de l'arrel
dd if=/dev/mtd0 of=/mnt/data/public/mtd0.bin <= copia la primera part de la flash al disc dur (recurs Public). Hem de tenir en compte que la flash està partida amb 3 parts (/dev/mtd[0-2] i que si les juntem obtindrem el firmware. Açò ho podrem veure fent un: dmesg

L'eixida del dmesg es (junt amb free, mount i df):

Linux version 2.4.27-star (root@localhost.localdomain) (gcc version 3.3.6) #1308 Thu Mar 15 15:55:00 CST 2007
CPU: FA526id(wb) revision 1
ICache:16KB enabled, DCache:16KB enabled, BTB support
Machine: STAR_STR9100
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
Kernel command line: console=ttyS0,38400 root=/dev/ram0 initrd=0x00900000,10M mem=32M@0x00000000
Relocating machine vectors to 0xffff0000
IRQ Timer1 at interrupt number 0x0 and clock 100000000(Hz)
Calibrating delay loop... 153.60 BogoMIPS
Memory: 32MB = 32MB total
Memory: 19328KB available (1952K code, 575K data, 220K init)
max_threads is :512 @@@@@@@@@@@@@@@@@
Dentry cache hash table entries: 4096 (order: 3, 32768 bytes)
Inode cache hash table entries: 2048 (order: 2, 16384 bytes)
Mount cache hash table entries: 512 (order: 0, 4096 bytes)
Buffer cache hash table entries: 1024 (order: 0, 4096 bytes)
Page-cache hash table entries: 8192 (order: 3, 32768 bytes)
POSIX conformance testing by UNIFIX
CPU clock is 200 !!!!!!!!
PCI: bus0: Fast back to back transfers disabled
pci bridge found
Linux NET4.0 for Linux 2.4
Based upon Swansea University Computer Society NET3.039
Initializing RT netlink socket
do initcalls start
Starting kswapd
NTFS driver v1.1.22 [Flags: R/W]
SGI XFS with no debug enabled
i2c-core.o: i2c core module version 2.6.1 (20010830)
i2c-algo-bit.o: i2c bit algorithm module
pty: 256 Unix98 ptys configured
Str9100 Serial Driver version 5.05c (2001-07-08) with no serial options enabled
ttyS00 at 0xf7800000 (irq = 10) is a Star_UART
!!!!!!!!!!!!!mac is: 0:b:2b:c0:64:83
RAMDISK driver initialized: 16 RAM disks of 16384K size 1024 blocksize
loop: loaded (max 8 devices)
PPP generic driver version 2.4.2
PPP Deflate Compression module registered
PPP BSD Compression module registered
SCSI subsystem driver Revision: 1.00
kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2
Amd/Fujitsu Extended Query Table v1.3 at 0x0040
number of CFI chips: 1
cfi_cmdset_0002: Disabling fast programming due to code brokenness.
Creating 3 MTD partitions on "str9100_flash":
0x00000000-0x00020000 : "Armboot"
0x00020000-0x007e0000 : "Kernel & Ramdisk"
0x007e0000-0x00800000 : "configure"
ftl_cs: FTL header not found.
ftl_cs: FTL header not found.
ftl_cs: FTL header not found.
i2c-core.o: adapter STR9100 I2C Adapter registered as adapter 0.
usb.c: registered new driver hub
hcd.c: ehci_hcd @ EHCI, EHCI_HCdriver
hcd.c: irq 24, pci mem fcc00000
usb.c: new USB bus registered, assigned bus number 1
hub.c: USB hub found
hub.c: 2 ports detected
host/usb-ohci.c: USB OHCI at membase 0xc3819000, IRQ 23
host/usb-ohci.c: usb-OHCI, OHCI_HCdriver
usb.c: new USB bus registered, assigned bus number 2
hub.c: USB hub found
hub.c: 2 ports detected
usb.c: registered new driver usblp
printer.c: v0.13: USB Printer Device Class driver
Initializing USB Mass Storage driver...
usb.c: registered new driver usb-storage
USB Mass Storage support registered.
NET4: Linux TCP/IP 1.0 for NET4.0
IP Protocols: ICMP, UDP, TCP, IGMP
IP: routing cache hash table of 512 buckets, 4Kbytes
TCP: Hash tables configured (established 2048 bind 4096)
NET4: Unix domain sockets 1.0/SMP for Linux NET4.0.
NET4: AppleTalk 0.18a for Linux NET4.0
NetWinder Floating Point Emulator V0.97 (double precision)
do initcalls end
RAMDISK: Compressed image found at block 0
Freeing initrd memory: 10240K
VFS: Mounted root (ext2 filesystem) readonly.
Freeing init memory: 220K
UART IRQ_ports = c02a6018
UART IRQ at interrupt number 0xa
hub.c: new USB device EHCI-2, assigned address 2
scsi0 : SCSI emulation for USB Mass Storage devices
Vendor: MAXTOR S Model: TM3500320AS Rev:
Type: Direct-Access ANSI SCSI revision: 02
port:50
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
X1205: I2C based RTC driver.
i2c-core.o: driver X1205 registered.
X1205: found X1205 on STR9100 I2C Adapter
ccr_write_enable: verify SR failed
i2c-core.o: client [X1205] registered to adapter [STR9100 I2C Adapter](pos. 0).
X1205: i2c_add_driver RTC driver.
X1205: misc_register RTC driver.
atr is 0
Partition check:
sda: sda1 sda2 sda3
WARNING: USB Mass Storage data integrity not assured
USB Mass Storage device found at 2
ccr_write_enable: verify SR failed
Adding Swap: 473908k swap-space (priority -1)
XFS mounting filesystem sd(8,2)
Ending clean XFS mount for filesystem: sd(8,2)
XFS mounting filesystem sd(8,3)
ccr_write_enable: verify SR failed
Ending clean XFS mount for filesystem: sd(8,3)
....................free.................
total used free shared buffers
Mem: 29788 28648 1140 0 308
Swap: 473908 2080 471828
Total: 503696 30728 472968
....................mount.................
/dev/ram0 on / type ext2 (rw)
none on /proc type proc (rw)
/dev/sda2 on /conf type xfs (rw)
/dev/sda3 on /mnt/data type xfs (rw)
....................df.................
Filesystem 1k-blocks Used Available Use% Mounted on
/dev/ram0 15863 14413 631 96% /
/dev/sda2 109888 264 109624 0% /conf
/dev/sda3 487650496 63216104 424434392 13% /mnt/data