Lernen Embedded Firmware Hacking [geschlossen]

8

Ich habe einen Samsung Fernseher mit angeschlossenem optischen Ausgang an mein DTS Sound System. TV hat ARM CPU und ein Embedded Linux Betriebssystem. Es kommt mit einem eingebetteten Mediaplayer. Aber der interne Mediaplayer gibt kein DTS-Audio an mein Soundsystem weiter. Es passiert nur - obwohl AC3 und andere Formate. Ich möchte die TV-Firmware hacken, um DTS-Audio an mein Soundsystem weiterzugeben.

Was sind die Bücher, Lernressourcen usw., um ein solches Hobby-Projekt zu starten? Ich habe nie auf Embedded-Plattform programmiert. Was sollte ich vor dem Start wissen? Zum Beispiel sollte ich Audio-Programmierung, Elektronik, Linux-Kernel, C-Programmierung wissen? Jede Empfehlung wäre hilfreich.

Tatsächlich gibt es ein ganzes dediziertes Sourceforge-Projekt, das sich mit Firmware-Hacking auf Samsung-Fernsehern namens SamyGO befasst. Aber als ich einen der Haupt-Firmware-Hacker auf dieser Seite fragte, bekam ich keine Antwort von ihm. Also kann mir jemand hier auf meine Frage antworten. Danke ..

UPDATE:

Wie viel Elektronikwissen sollte ich für diese Art von Job haben? (Ich habe einen C.S-Abschluss und Grundkenntnisse über Elektronik, Logikdesign usw.). Soll ich ein Linux-Kernel oder C-Experte sein?

Eigentlich habe ich mich immer gefragt, wie Embedded-Gerät-Hacker wie George Hotz diese Art von Wissen gewinnen. Weil es ein geschlossenes ist System, sie haben keine Dokumentation, wie können sie das tun? Lernen sie es von der Schule? (Ich glaube nicht). Wenn sie das tun, was studieren sie? Welche Bücher benutzen sie? Wenn sie nicht, wie?

    
mcaaltuntas 30.06.2011, 06:26
quelle

4 Antworten

4

Ich bin auf diesen exzellenten Blogbeitrag über die Reverse Engineering Firmware für den Linksys Router gestoßen,

Ссылка

Es erklärt im Detail, wie man die Firmware zurückentwickelt, um das Dateisystem in klaren Schritten zu erreichen. Wenn Sie die Schritte befolgen können, erhalten Sie einen wirklich guten Einblick in das, was es braucht, um eine Firmware zu hacken.

Ich glaube nicht, dass Sie viel elektronisches Wissen benötigen, um eine Firmware zu hacken, grundlegende Kenntnisse auf Stufe 101 würden ausreichen. Wenn Sie grundlegende Betriebssysteme und Systeme im Allgemeinen verstehen, sollten Sie in der Lage sein, sich durchzuarbeiten.

    
Chintan Parikh 30.06.2011 23:33
quelle
2

Ein undokumentiertes System zu hacken ist keine triviale Aufgabe. Sie sollten definitiv C lernen und Embedded-Programmierung üben und ein gutes Wissen über Elektronik wird Ihnen sehr helfen (Sie müssen sich die Schaltung ansehen und raten, wie es funktioniert, wenn Sie keine Dokumente bei Google finden können). Mein Rat ist: Holen Sie sich ein (dokumentiertes) ARM-Board, um mit dem Hacken zu beginnen (Beagleboard / Pandaboard kommt mir in den Sinn). Sie werden viel über Linux, C, Kernel-Entwicklung und sogar Elektronik lernen, wenn Sie wollen. Der Versuch, direkt auf ein TV-System zu tauchen, wird dich wahrscheinlich sehr frustrieren.

UPDATE: Auf der Elektronikseite müssen Sie kein Elektroniker sein. Studieren Sie viel digitale Elektronik und verstehen Sie, wie CPUs, Busse und öffentliche Peripheriegeräte funktionieren. Die meiste Zeit können Sie einen beliebigen Chip-Code ansehen und nach dem Datenblatt suchen, aber manchmal sind sie speziell für ein Gerät entwickelt oder haben überhaupt keine Identifikation. In diesem Fall benötigen Sie einen Logikanalysator, um das Reverse Engineering durchzuführen und zu verstehen, wie Sie mit ihm "sprechen" können. Sie können CS und Elektronik aus Büchern lernen, aber echtes Reverse Engineering kann nur durch Erfahrung gelernt werden (natürlich hilft das Lernen, wie andere Dinge tun, viel). Gehen Sie weiter und öffnen Sie Geräte, die Sie interessant finden, versuchen Sie zu verstehen, wie sie funktionieren und ändern Sie die Dinge darauf. Sie werden sicherlich einige von ihnen verbrennen (beginnen Sie mit den billigeren), aber es ist der beste Weg zu lernen, wie man Geräte hackt.

Achten Sie darauf, nicht zu sterben, während Sie mit Hochspannungsgeräten herumhantieren (und LCD-Fernseher haben einige HV-Teile)

    
Vitor 30.06.2011 12:31
quelle
0

Geeignete Entwicklungsboards zu berücksichtigen, mit sehr aktiven Gemeinschaften, d. h. leicht zu Hilfe zu kommen, wenn Sie feststecken: -)

Beginnen Sie mit ihnen, um etwas über eingebettete Systeme zu erfahren, bevor Sie sich den schwierigeren Aufgaben zuwenden.

    
Fredrik Pihl 30.06.2011 12:36
quelle
-2

Ja, C-Sprachkenntnisse sind wichtig.

Probiere und lerne zuerst Raspberry Pi und springe dann zu Adruino .

Sie können so viele Communities für diese in Facebook und Google Plus finden und mitmachen und sich einbringen.

Dann kannst du so viele Hacks lernen

    
Durai Amuthan.H 15.10.2013 07:28
quelle

Tags und Links