Hack the Planet

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Den Film aus dem der Slogan stammt kennen hier wahrscheinlich doch einige. Wer nicht kann hier mal nachlesen :)

Es geht hier aber nicht um Computerkriminalität, ich fand den Spruch nur passend :)

Ich war beim Lesen über etwas gestolpert was mich irgendwie echt begeistert.
Es gibt ja diese SD Karten mit integriertem WiFi. So für Kameras mit gleich hoch laden, auf den PC übertragen und so.
Sind zwar wesentlich teurer als vergleichbare Modelle ohne WiFi, aber ok, kann ja auch mehr.
Bei Reichelt liegt diese bestimmte Karte (siehe Unten) mit 16GB grad bei rund 40€ (Link zum Artikel).

Es gibt Apps dafür und ein Webserver ist auch drauf, also muss da auch Logik hinter sitzen. Tuts auch. Ein ARM926EJ-S rev 5 (v5l). Als Betriebssystem dient ein abgespecktes busybox. Und viele ausnutzbare Sicherheitslücken in den Perl Scripts (zumindest sofern man Benutzername und Passwort kennt).

Zumindest so wie es der Autor auf dieser Seite (englisch) beschreibt.

Ausprobiert habe ich es noch nicht, ich habe den Artikel grade erst gefunden, aber die Karte liegt bereits im Korb :D

Mir schweben schon diverse Möglichkeiten vor dafür.
Man könnte ja noch nen ATmega dran hängen (klar muss der denn das SD Protokoll und FAT32 können, noch nicht nachgeschaut ob es da schon was für gibt), als Download Sklave mit ner kleinen Batterie wenn man nicht den ganzen Tag im Internet Cafe verweilen will... Lässt sich ja gut verstecken und später wieder abholen das Ding :D
Vielleicht kann man sogar die Pins ansteuern. Aber außer dass er Telnet Server (mit root) geschafft hat hat er noch nichts geschrieben.

Also mir brennt es in den Fingern ^^
 

Hemi

Aktives Mitglied
Premium Benutzer
30 Nov 2008
1.033
13
38
Korntal-Münchingen, Germany
Sprachen
ANSI C, C++, PHP, Java
Naja, über SPI eine SD-Karte anzusprechen ist relativ einfach. Als Filesystem kannste FatFS oder PetitFS verwenden, musst halt einpaar (sind drei oder vier) Funktionen implementieren und erledigt. Kann Dir hier helfen, habe ja schon viel damit gemacht, ist aber wirklich sehr einfach.

WiFi wäre interessant. :)
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Puuh, ich hab mir jetzt mal den Quelltext angeschaut.
Das Problem: C ist für mich wie Holländisch. Ich kanns erraten (teilweise), schreiben aber nicht.

Und zum übersetzen ist mir das viel zu viel und vor allem viel zu heikel.
Aber man könnte die Karte ja auch neu partitionieren dass die nur noch 15,9GB groß ist, den Rest RAW lassen und direkt darauf schreiben. Für meine Zwecke würde das schon reichen weil 100MB sollten (aus der Sicht eines µC) locker genug sein. Aber erst mal schaun was damit überhaupt so möglich ist.

Erstmal haben und Zeit finden :)
Aber danke schon einmal für das Angebot :)


:offtopic:
zum Film mal eine Scene (weil ich, wenn auch über ICQ) gefragt worden bin:
[video=youtube;yhs10co8IVM]http://www.youtube.com/watch?v=yhs10co8IVM&feature=youtu.be[/video]
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Sie ist da *freu*

Kam im Bundle mit einem schicken USB2 Card Reader daher (nett, hab ich in der Beschreibung garnichts von gelesen).
IMAG0398.jpg IMAG0399.jpg

Die Inbetriebnahme war easy. Karte einfach rein (worein auch immer, Card reader, Laptop, Kamera, ...) und schon erstellt sie nach kurzer Zeit ein WLAN (dient also als AccessPoint) mit DHCP und allem drum und dran, man muss also nichts einrichten, nur verbinden.

Die häufig gesuchten Standardwerte:
- Passwort für das WLAN (SSID: WIFISD): 12345678
- Webinterface: http://192.168.11.254/ (zur Not mit dem IE aufrufen. Opera macht Probleme, andere Browser hab ich noch nicht getestet)
- Login für das Webinterface: Benutzer admin, Passwort admin

Alles kann man über das Webinterface aber ändern.

Lustig finde ich die Idee dass wenn sich das System mal wirklich zerschossen haben sollte (oder man es selber gemacht hat :rolleyes:) durch das löschen eines Bildes wieder zurück setzen kann (nach Neustart).

Leider ist ausgerechnet jetzt die Webseite mit den Hacks down. Hmpf. Gehts also erst später weiter :)
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Auf Grund der großartigen Vorarbeit kann man es schon kaum mehr hacken nennen :)

Um vernünftig in das Linux zu kommen bedarf es nur einer simplen Datei auf der SD Karte (die ist quasi wie die autoexec.bat unter MS-DOS).

Also direkt auf der Karte (Hauptverzeichnis) eine Datei erstellen mit dem Namen "autorun.sh" und diesen Inhalt einfügen:
Code:
tcpsvd -vE 0.0.0.0 21 ftpd -w /mnt/sd/ &
telnetd -l /bin/sh &
Die erste Zeile aktiviert den FTP Server, die Zweite aktiviert den Telnet Server.

Generell noch mal zu der Karte:
Sicherheit wird nicht wirklich groß geschrieben. Das Webinterface fragt zwar nach Benutzername und Passwort, aber nur auf der Frameset Seite. Die einzelnen Frame Seiten haben keine Login Überprüfung. Auch FTP und Telnet laufen komplett ohne Login als Root. Noch schlimmer: Es gibt eine (wennauch ungenutzte aber trotzdem existierende) Webseite zum Login wo allenernstes das Login in Javascript überprüft wird. Sprich das Passwort wird in Klartext an den Browser gesendet *facepalm*

Auf dieser Seite sieht man das gute Stück sogar mal nackich ^^
Zusammen mit vielen weiteren Informationen, unter Anderem dass das Ding auch eine serielle Konsole hat (über die Test Pins auf der Rückseite. Klar, auf der Oberseite ist ja auch so garkein Platz mehr).
Auch sind dort die Firmwares verlinkt. Meine hatte 1.6 drauf, hab jetzt die 1.8 drauf, das autorun Script läuft immernoch :)

Von den 30MB RAM sind bei mir, trotz Telnet und FTP, noch 16MB frei. Da geht noch was :D

Das Webinterface:
wifi1.jpg wifi2.png

Ich habe es noch nicht probiert aber scheinbar muss die Karte initialisiert werden damit sie voll durch bootet :/
Also einfach ne CR2032 dran ist wohl nicht. Wär wohl vom Strombedarf eh etwas zu wenig, da:
Code:
- während des Bootens                                      ca. 90mA
- mit WLAN an                                              ca. 170mA
- mit WLAN an, Datei schreiben auf SD über USB             ca. 260mA
- mit WLAN an, Datei von SD lesen und über WLAN senden     ca. 410mA
Naja könnte man ja mit nem AVR lösen. Glaube nicht dass da viel nötig ist um der Karte vorzugaukeln dass die im PC sitzt. Aber erstmal herausfinden
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Es wird immer interessanter wo ich mal einen Blick auf die Platine (nicht meine, die Bilder im Netz) und in /dev geschaut habe:
Code:
# ls /dev
console    mmc        mtd1       pty        sda        spidev1    ttyS1
fb0        mmc1       mtdblock0  ram        sda1       tty        urandom
gpio_i2c   mmc2       mtdblock1  ram0       sdb        tty0       zero
ka-main    mmcblk0    null       ram1       spi0       tty1
ka-pwm     mmcblk0p1  nvram      ramdisk    spi0.0     tty2
ka-pwm1    mmcblk0p2  ptmx       random     spidev0    ttyS
loop       mtd0       pts        root       spidev0.0  ttyS0
GPIO? I2C? SPI & SPIDEV?
Kommt mir vom Raspberry noch sehr bekannt vor :rolleyes:
Zumindest ne serielle Schnittstelle hat die Karte unter ihrem Kleid versteckt, die anderen Pins sind noch unbekannt.
Vielleicht mach ich meine mal nackich und mess mal nach, dünnen Kupferlackdraht hab ich noch da und in ne Digitalkamera kommt die Karte eh nie rein. Hab nämlich keine ^^
Im PC und CardReader stören die ja nicht.

Hmmm...
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Hab mal die Karte auf den Scanner gelegt :)
Hab mir extra einen ausgeliehen.



Ja, die Bilder sind wieder extern gespeichert, auch wenn Dino mich schlagen wird. Aber ich habe es 5x versucht die hier zu uppen, ohne Erfolg. Die Scans sind in 2400dpi. Wer die in unkomprimierter Form haben möchte (.png) einfach melden (pro Bild ~9MB)
 

dino03

Aktives Mitglied
27 Okt 2008
6.722
16
38
Sprachen
BascomAVR, Assembler
Hi Tommy,

ich habs mal etwas zurechtgestutzt ...

EyeFI_img001b.jpg . EyeFI_img002b.jpg

immer noch gut zu erkennen. JPG mit 1280 x 900irgendwas und mit 65% Komprimierung. ;)

Unten scheint auf der Platine eine Streifenleiter-Antenne fürs WLAN zu sein.

Gruß
Dino
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Die Bilder waren eigentlich nicht zu groß (Dateigröße). War unter 1MB was ich versucht habe. Das 2. Bild hat er (vermutlich aus Versehen) auch 1x genommen. Habs denn aber wieder gelöscht, die gibts nur im Doppelpack :)

Ich habs schon 50% verkleinert gehabt und bewusst nicht die .bmp (~90MB) hochgeladen :)

Nachher erstmal die Testpunkte auf ne Buchsenleiste (1,27rm) löten und denn schaun was da so geht :)
RS232 liegt da schon mal drauf (3,3V TTL Pegel). Das mit GPIO, I2C und SPI hat mich auch hellhörig gemacht. Schade dass ich meine Erfahrungen vom Raspberry Pi da nicht nutzen kann, Python hab ich darauf leider noch nicht bekommen :/
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Es geht weiter ^^

Jaja ich weiß, das Kabel ist schwul und ich war etwas zu übereifrig beim schrumpfen, aber egal :)
Morgen kommt mein RS232 Ding da dran und denn mal schaun was darauf so abgeht und was der Bootloader selbst so kann.

v8RVBqx0DL0DORVd-IMAG040.jpg
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Also alle Testpins anzulöten war scheinbar keine so gute Idee. Das WiFi der Karte funktioniert noch, genau so wie das Webinterface, Telnet und so, aber als SD Karte selbst wird sie nicht mehr erkannt (Clock Signal mit dabei was nun durch die Leitungslänge verstümmelt wird?) Die Karte selbst kennt ihren Speicher noch. Wird die Tage gecheckt :)

p.s.: Interessiert sich hier überhaupt jemand dafür? Oder schreib ich in /dev/null?
 

Dirk

Administrator
Teammitglied
28 Jan 2007
4.292
141
63
Mittelhessen, Giessen
Sprachen
ANSI C, C++, C#, Java, Kotlin, Pascal, Assembler, PHP
Also alle Testpins anzulöten war scheinbar keine so gute Idee. Das WiFi der Karte funktioniert noch, genau so wie das Webinterface, Telnet und so, aber als SD Karte selbst wird sie nicht mehr erkannt (Clock Signal mit dabei was nun durch die Leitungslänge verstümmelt wird?) Die Karte selbst kennt ihren Speicher noch. Wird die Tage gecheckt :)

p.s.: Interessiert sich hier überhaupt jemand dafür? Oder schreib ich in /dev/null?
Hallo Tommy,

interessant ist das schon, ich lese immer mal mit, kann aber im Moment noch nicht sooo viel damit anfangen :)

Es könnte schon sein, dass durch die Leitungen Signale für die SD-Karte "verstümmelt" werden (vielleicht SCK noch einmal ablöten, falls möglich). ... Aber deine Löterei ist schon ein Kunststück geworden ;) du kommst fast an Dino ran :cool:;)
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
(vielleicht SCK noch einmal ablöten, falls möglich)
Ja wenn ich wüsste welcher Pin das ist... :D
Von den 15 Pins sind ja bisher nur 4 bekannt. VCC, GND, RxD, TxD. Die anderen 11 sind noch unbekannt.

Was man damit so feines machen kann weiß ich auch noch nicht. Aber es ist Linux drauf, sie hat RS232 (3.3V Pegel), vielleicht auch noch SPI und I²C und GPIO... (der Chip hats, aber ob das auch an den Testpins anliegt muss getestet werden)... Da kann man sich schon einiges denken, zumindest wenn man noch nen ATmega "dran tackert" :)
Ich schätze mal dass die Pins für ISP offen sind, das wäre ja eigentlich SPI. ... Aber das muss sich zeigen, ich will auch nicht zu viel versprechen.

Datenlogger für Wetterstationen oder klimatisierte Räume (16GB sollten wohl definitiv ausreichen ^^) ohne Kabel anzuklemmen (da WLAN), ... Oder einfach der Hauptgrund: Man macht es eben weil es möglich ist ;)

Aber deine Löterei ist schon ein Kunststück geworden ;) du kommst fast an Dino ran :cool:;)
Ich ... fass das jetzt mal als Kompliment auf. Danke ^^
 

Dirk

Administrator
Teammitglied
28 Jan 2007
4.292
141
63
Mittelhessen, Giessen
Sprachen
ANSI C, C++, C#, Java, Kotlin, Pascal, Assembler, PHP

dino03

Aktives Mitglied
27 Okt 2008
6.722
16
38
Sprachen
BascomAVR, Assembler
Hi Tommy,

p.s.: Interessiert sich hier überhaupt jemand dafür? Oder schreib ich in /dev/null?
ich lese auch mit.

Das ist schon recht interessant. In den Warenkorb hab ich so ein Ding schon gelegt :rolleyes:
Ob ichs wirklich bestelle weiß ich noch nicht. Ne wirkliche Anwendung hab ich für mich noch nicht gefunden.

Schreib ruhig weiter. Mich interessiert es auf jeden Fall. Die Infos hab ich auf jeden Fall schonmal lokal gesichert :cool:

Gruß
Dino
 

LotadaC

Sehr aktives Mitglied
22 Jan 2009
3.376
61
48
Marwitz
Sprachen
BascomAVR, Assembler
Ich lese mit, hätte aber keinen konkreten Einsatz. Also mach ruhig weiter.
Achso, ich sehe 2 Gnd-Punkte (und den Vcc, klar) den Rest kann man durch scharfes hinsehen nicht wirklich ergründen - und den Speicher-Chip willst Du sicher nicht runterlöten, oder?!?
Irgendwo war doch das Bild mit den Bezeichnungen (zumindest mit einigen)... wo?
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
und den Speicher-Chip willst Du sicher nicht runterlöten, oder?!?
Irgendwo war doch das Bild mit den Bezeichnungen (zumindest mit einigen)... wo?
Ich könnte den garnicht (ohne ihn oder das drum herum zu zerstören) ablöten.

Das Bild mit den Bezeichnungen war hier. Auch wenn die Zählweise etwas komisch ist (die 13 hat er vergessen) :rolleyes:

Die PQI Air Card soll hardwaretechnisch identisch sein (außer dass die keinen internen Flash hat sondern MicroSD Karten nutzt). Netterweise haben die Designer da gleich die Testpunkte nummeriert und sogar TxD, RxD, VCC und GND benannt :)
 

LotadaC

Sehr aktives Mitglied
22 Jan 2009
3.376
61
48
Marwitz
Sprachen
BascomAVR, Assembler
Kannst'n ja auch mit'nem Cutter rausschneiden :p

Jedenfalls scheint #1 auch Gnd zu sein, oder?
Bei #10,#11 und #12 ist's ziemlich eng...
 

Hemi

Aktives Mitglied
Premium Benutzer
30 Nov 2008
1.033
13
38
Korntal-Münchingen, Germany
Sprachen
ANSI C, C++, PHP, Java
Hallo Tommy,

ich lese ebenfalls neugierig mit. Reverse engineering ist einfach geil, ich stecke gerade in meiner CAN-MOST-Geschichte drin und ein paar privaten Problemen, auf die ich sehr gut verzichten könnte. Aber das kann man sich nicht aussuchen.
 

TommyB

Team Bitschubse
Premium Benutzer
17 Mai 2010
2.151
80
48
36
127.0.0.1 ;)
Sprachen
C#, VB.Net, LunaAVR, Assembler, Python
Cuttermesser... Naja wenn man bedenkt wie hauch dünn die Platine ist, da biste denn sehr schnell nicht nur durch das Bein durch sondern vermutlich gleich im Finger :)
Aber warum überhaupt den Flash entfernen? Zumal ohne den erkennt der Bootloader die Karte (natürlich) nicht mehr und fährt nicht mehr hoch, sprich es würde sich garnichts mehr regen. Und um wirklich zu sehen was wo hin geht müsste man eh alle ICs ablöten, denn wär die Karte aber (natürlich) unbrauchbar und das will ich vermeiden ;)

Pin 1 scheint auch GND zu sein, zumindest laut meinem Auge und dem Scan in Originalgröße (4800dpi) in der Vergrößerung. Somit wäre immerhin schon 1/3 der Pins bekannt :rolleyes:
Einzige Problem für mich wird sein ohne Python zurecht zu kommen. Bleiben nur noch Perl und C (und vielleicht ASM, aber damit hab ich unter ARM 0 Erfahrung)
 

Über uns

  • Makerconnect ist ein Forum, welches wir ausschließlich für einen Gedankenaustausch und als Diskussionsplattform für Interessierte bereitstellen, welche sich privat, durch das Studium oder beruflich mit Mikrocontroller- und Kleinstrechnersystemen beschäftigen wollen oder müssen ;-)
  • Dirk
  • Du bist noch kein Mitglied in unserer freundlichen Community? Werde Teil von uns und registriere dich in unserem Forum.
  •  Registriere dich

User Menu

 Kaffeezeit

  • Wir arbeiten hart daran sicherzustellen, dass unser Forum permanent online und schnell erreichbar ist, unsere Forensoftware auf dem aktuellsten Stand ist und der Server regelmäßig gewartet wird. Auch die Themen Datensicherheit und Datenschutz sind uns wichtig und hier sind wir auch ständig aktiv. Alles in allem, sorgen wir uns darum, dass alles Drumherum stimmt :-)

    Dir gefällt das Forum und unsere Arbeit und du möchtest uns unterstützen? Unterstütze uns durch deine Premium-Mitgliedschaft!
    Wir freuen uns auch über eine Spende für unsere Kaffeekasse :-)
    Vielen Dank! :ciao:


     Spende uns! (Paypal)