Verschlüsselung knacken von TV Aufnahmen(Panasonic GW20/V20)

Ich denke, dass auf den neuen LCD-TV von Panasonic ein FreeBSD läuft.
Die HDD sind mit UFS2 formatiert. Auf FreeBSD wird in der Lizenz hingewiesen.
Irgendwas unixartiges muss das OS schon sein. Leider hat das TV keinen einzigen Port auf. Würd echt gerne ssh darein machen ^^

Zu dem Update: ich hab mir das Image geladen, entweder isses verschlüssel oder merkwürdig komprimiert. Keine Ahnung was drin ist....
 
Ideensammler Unterstützung

Hallo zusammen,

ich hoffe das Thema ist bei euch noch aktuell?

Mein Input

Prinzipiell sehe ich zwei Punkte zum weiteren Vorgehen.

Die Firmwaredatei SDDL.SEC prüfen und schauen was rauszubekommen ist.
- ich habe aktuell nur die 2.505 Version runtergeladen und vorliegen.
- per HEX Editor lässt sich nicht viel rausfinden (scheint nicht mit zlib gepackt zu sein - bin mir aber nicht sicher)
- per file und string Kommando scheint auch nix rausgekommen zu sein (Beitrag aus englischem Forum - konnte ich selber noch nicht prüfen - privat Linux pc noch kaputt :-(( )
- sollte jemand noch eine andere Versionsnummer der SDDL.SEC haben, könnte man vergleiche anstellen (könnte meinetwegen auch eine Datei für ein anderes Panasonic Modell sein wenn entsprechend ähnlich aufgebaut ist)
- generell sehe ich aber hier nur geringe Chancen, der Aufwand ist einfach zu groß bei den (aktuell noch) vielen unbekannten zur Struktur

Aufnahmen prüfen
- mich würde z.B. interessieren ob beim registrieren einer HD spezielle Daten auf die HD geschrieben werden (ich dachte das neben der resume Datei noch andere Dateien [neben den Aufnahmen] auf der Festplatte waren und wenn ja ob diese auswirkungen haben.
- dies ist z.B. zu testen in dem zwei Festplatten registriert werden und auf eine dieser eine kurze aufnahme durchgeführt wird. Mit einem BSD System (Linux kann anscheinend nicht ohne weiteres die UFS2 wieder beschreiben) die Aufnahme auf die andere Festplatte spielen und schauen ob die Aufnahme abspielbar ist.
- des weiteren könnten die aufgenommen Dateien tiefer analysiert werden . z.B. ein paar Einträge ändern (in den nicht tts ) Dateien.
- bei den tts Dateien hoffe ich das zumindest eine Headerstruktur irgendwo ersichtlich ist (hat da noch jemand genauere Spezifikation ? finde nur text to speech infos für den Dateityp)

so ich versuche jetzt erstmal eine Betriebssystemumgebung mit einem BSD System aufzusetzen inder man ordentlich testen sowie Daten auf den HDs schreiben kann ;-)

PS: zum Einstieg bietet sich als BSD Umgebung vielleicht FREESBIE in einer VM oder als LiveCD an
PS1: ich kann mir nicht so richtig vorstellen das es wirklich ein "AM-Linux" ist, ich tendiere wirklich zu BSD - aber das ist nur eine Vermutung - ich glaube zu wissen das es für dieses Umfeld einige angepasste BSD artige OS gibt
PS2: die Aussage zu openSSL wollte ich eigentlich gleich verwerfen bin jetzt aber doch wieder bei dem Schluß das die von Interesse sein könnte


Eine ganz andere Frage noch zusätzlich:
was stellen die Informationen dar die ich im Untermenü Systeminformationen finde:

Softwareversion 2505-10300 ok soweit die Programmversion plus ??? 10300 ???
Status1 0071-0003 1000-0000
Status2 0038-120-010200
Status3 0000-1001 0000-0000
HDAVI Control 5

sind das vielleicht die Treiberversionen für die Tuner ? und die Viera Link Schnittstelle ???? wie sind eure Werte

Gute Nacht
tryhackpan
 
Hallo!

Wir sind auch stolzer Besitzer des GW20. Leider haben wir auch so ein ähnliches Problem:
Nachdem wir unsere gerade gekauft Festplatte auf unseren TV registriert haben, kann ich weder über einen anderen Receiver oder PC auf sie zugreifen. Habe leider beim registrieren gedacht, durch ein neu formatieren durch unseren Receiver, wäre die registrierung wieder gelöscht. Sch..., es funktioniert, aber nicht!!!! Hatte sie nur zum ausprobieren an unseren Plasma angeschlossen, somit habe ich viel Geld für eine neue und große Plattte ausgegeben und das für umsonst...

Habe die älteren Beiträge gelesen, aber nicht viel verstanden. Ich bin kein Hacker, nur auf der Suche nach Hilfe.

Kann mir jemand helfen????

Viele Grüße
 
sofern es sich bei der platte um eine normale festplatte handelt (im gegensatz zu festplatten mit spezieller firmware, die sowieso nur in dafür zertifizierten geräten laufen), dürfte sich das problem recht schnell lösen lassen

du brauchst:

-einen pc mit anschlussmöglickeit für besagte platte

-ein mehr oder weniger aktuelles betriebssystem deiner wahl

platte anschließen, rechner starten

windows basierte systeme:

rechtsklick auf arbeitsplatz -> verwalten -> datenträgerverwaltung

in der liste im unteren teil des fensters die platte suchen (sollte die platte sein, der KEINE logischen laufwerke zugeordnet sind, hat vermutlich die markierung "nicht initialisiert")

rechtsklick auf besagten datenträger, initialisieren lassen (MBR schreiben), partitionen nach gutdünken anlegen (im zweifel eine partition die den gesammten datenträger ausfüllt), und neu erstellte partitionen formatieren ...


linux/unix basierte systeme

man nehme den partitionsmanager seines vertrauens (z.B. parted oder gparted), lasse auf das entsprechende laufwerk eine partitionstabelle schreiben, und lege wie gewohnt partitionen an ... diese danach formatieren, mounten und glücklich sein ...
 
Zuletzt bearbeitet:
A brief summary:

Most probably the file encoding components of TTS:
- Name / file number (four bytes), if change name/numer the file not played on TV,
- KEY generated by the TV (do not know what length), KEY is in EEPROM.

Are not valid in the encoding:
- Files AID, VID, DAT, and others.

You can copy files DATA, AID, VID, TTS on your computer and then you can format the HDD again several times and record them on the HDD TV and watch them.

Full summary in Polish here: Panasonic Viera i zdekodowanie/odszyfrowanie nagra
 
Zuletzt bearbeitet:
Hello jaco777

thanks for your information, i translated the information from you forum by google and find something interesting.
You said that you find a possibilty to copy the files back to the harddrive by using Knoppix ... Could you give us some more information - Knoppix Version and maybe also the shell command for mounting the disk in write modus.

i did a lot of tests using different BSD OS to do that - but i failed and stoped so far - but now ... i am back :p

...there are many requests for a possibility to change the filenames so that it suits the programm that is recorded - i often put some minutes to the start and endtime and the tv just uses the name frome the previous programm ... so at least (if possible) we can fix that :D

Thanks so far
 
Hello jaco777
thanks for your information, i translated the information from you forum by google and find something interesting.
You said that you find a possibilty to copy the files back to the harddrive by using Knoppix ... Could you give us some more information - Knoppix Version and maybe also the shell command for mounting the disk in write modus.

i did a lot of tests using different BSD OS to do that - but i failed and stoped so far - but now ... i am back :p
I'm using the latest Knoppix. I installed the USB stick - works better.
A typical command to mount in the root user:
Code:
mount -w -t ufs -o ufstype=ufs2 /dev/sdb1 /example/path_on_pen
mount -t ufs -o remount,rw /dev/sdb1 /example/path_on_pen
Important are the two commands. Mounted HDD must be viewed as ROOT, not plain USER - so we can delete, save, change. Before disconnecting necessarily unmount HDD (right mouse button is enough).




...there are many requests for a possibility to change the filenames so that it suits the programm that is recorded - i often put some minutes to the start and endtime and the tv just uses the name frome the previous programm ... so at least (if possible) we can fix that :D

Thanks so far
Of course this is possible. DAT file to be edited using HEX editor.
Look at these pictures:
Anhang anzeigen 3622
Anhang anzeigen 3623
 
Zuletzt bearbeitet:
Hier noch ein Hinweis:

Die UFS2-Partition ist big endian, also vermutlich PPC oder MIPS.
Mit einem FreeBSD auf meinem x64 (little endian) konnte ich die Platte nicht mounten.
Möglicherweise wirken sich die vertauschen Bits auch wo anderes aus.
 
Ich hab noch was vergessen. Der Schlüssel scheint statisch zu sein.
Nach einer Neuregistierung der HDD, konnte ich die alte Filme zurück kopieren und auch abspielen.
 
Über DCTP-IP

Intel and DTCP


Wenn ich diese PDF (DCTP SDK) über die Implementierung überfliege, erscheint es mir so, als wenn ein Schlüsselaustausch nötig waere.
Funktioniert das abspielen der Filme denn auch wenn das Geraet nicht am Netz angeschlossen ist? Wenn ja, ist es moeglich dass Schlüssel lokal gespeichert werden?


Über ITU: Encryption data recording device - JP 2006-178535 A - IP.com

http://www.intel.com/content/www/us/en/search.html?keyword=dctp&lstLanguages=en_US

Ich denke, asymetische Verschlüsselung ist optional. Sonst bräuchte ja jeder Kunde Intnernet zum Aufnehmen und Abspielen.
 
tool für umbenennen

Hallo - ich habe mal die Informationen von jaco777 genutzt um mir ein kleines python script zum Umbenennen der Aufzeichnungen zu basteln. (manipuliert lediglich die infos aus der *.dat Datei und geht etwas einfacher als mit HEX Editor). Sieht dann aber halt schöner in der Anzeige aus (habe immer das Problem das ich 5 min Puffer vor den Start der Aufzeichnung setze und damit immer eine falsche Bezeichnung der Aufnahme habe)

Umgesetzt habe ich das mit Knoppix Live CD und installiertem wxpython packet (die Knoppix Live DVD hat wxPython schon mit dabei)

zum mounten der Festplatte siehe Hinweis von jaco777 in einer früheren Meldung und dann einfach python und programmname

das ganze ist noch recht stümperhaft (keine Prüfungen und kein Abfangen von Fehlern) Der Code ist sicherlich auch noch verbesserungswürdig, fang aber gerade erst mit Python an. :D Nutzung daher auf eigene Gefahr.

Wenn jemand noch eine Aussage über die restlichen noch nicht entschlüsselten Felder der Datei *.dat hat, bitte mal Bescheid geben.
Gibt sicherlich auch noch weitere Ecken zum verbessern. ;)

Aktualisierung: nun etwas aufgehübschter - das mit dem mounten ist noch ein todo :D
 
Zuletzt bearbeitet:
Danke für das Tool

Vielen Dank tryhackpan für das Tool :)
Habe Ubuntu 12.04 als OS und habe das Tool direkt mal ausprobiert.
Einfach die Zip Datei entpackt, und über die Konsole in dem Ordner die Datei ausgeführt:
Code:
python PanRec0.06.py
Nachdem ich als erstes den Fehler
Code:
Traceback (most recent call last):
  File "PanRec0.06.py", line 15, in <module>
    import wx
ImportError: No module named wx
bekam, musste ich das wxphyton Modul mit folgendem Befehl nachinstallieren
Code:
sudo aptitude install python-wxgtk2.8
Die Oberfläche sieht doch schon ganz Nett aus :)
Bekomme heute Nachmittag meinen neuen Panasonnic TX-L32ETW5, dann werde ich das Tool sofort ausprobieren und Rückmeldung geben.
Hoffe es findet demnächst auch jemand eine Lösung für die Verschlüsselung :)
 
Hello. Next summary for file TTS.
Full summary hier Panasonic Viera i zdekodowanie/odszyfrowanie nagra

Hello jaco777

first ... thanks for you effort and input
i tried to translate your post at elektroda.pl - elektronika, schematy, forum, naprawa, usterki, porady, diy with google translate ... but i couldn't get the correct meaning/understanding of some points. Maybe you can give us a quick answer - or of course anybode else

1. if i would copy my record files from harddisk A to another harddisk B that is also registered at my TV - does the movie should play or not? (assumed i don't mix something with the position filename and so on) what about the "bind" file?

2. to *.dat File (less important) - how did you find out the lenght of programmname like you show at the picture. i changed the data but i couldn't see the full new name - the info button cut of the name - for example "News Today blabla..."

3. to '.dat File - there are some more bytes with changing datas - any ideas? Resolution, frequenz or other stuff? (i recorded same programm via DVB-T (2x) and DVB-C (2x) - but i could get any great differences/similarities - any ideas

4. AID and VID files - also the files only necessary for preview/scrolling and not for decoding -i would like to understand how it works (didn't understand the explanation at your forum :confused:)

5. to *.tts file - have you done an analyse about the byte allocation in the 16 byte blocks - for example - does the first (and so on) byte can have all possible values or is it restricted to specific value .. maybe there will be also a kind of counter? (also TVs have different keys - comparing same programm same time same DVB-x - maybe there are similarities? Shouldn't there be a kind of counter in the tts file?

6. Is it possible to record radio channels (DVB-T DVB-C DVB-S? for DVB-T the Menu and the message on TVs says yes - but after recording there was no file - only the "counter" grew up

7. You wrote that you could "kind of" transfer the picture out of the TV via an analog link ??? is it an hardware hack or how did it work.

thanks in advance

TryHackPan
 
weitere Analyse

Hallo zusammen,
um vielleicht wieder ein paar Interessierte hier anzulocken...
Im Anhang habe ich mir nochmal die restlichen Parameter der DAT Files angeschaut. Ist jetzt nicht weiter verwertbar aber ...ich habs mal als Fleißarbeit vervollständigt.

Modell GW20

1. Channel Number - ist bei mir immer mit dem Programmplatz des Senders zum Aufnahmezeitpunkt belegt (DVB-T) (vermutlich kommen noch die zwei davorliegenden Bytes mit dazu. (bei Kabelaufnahmen scheint es wieder anders zu sein

2. DVB Channel - bei DVB-T für alle Sender im gleichen "Bouquet"??? identisch (glaub ich)

3. ID für Übertragungsweg? - ist für alle DVB-T Sender bzw. analog Kabel identisch (für Kabel HD Sender wieder eigene Kennung)

4. Date and Time - hat jaco777 ja schon rausgefunden - ich kämpfe noch ein wenig mit der Umrechnung Normalzeit +/- GMT - beim Standardsetup wird ja das Land abgefragt - scheint dann halt schon die Anpassung an die Zeitzone zu erfolgen bzw. wird dann in der Anzeige umgerechnet

5. TV Shows - siehe oben von jaco entnommen - habe hier in meinem Script noch Probleme mit Umlauten - Hilfe gerne willkommen

6. TV - Channel (Name) - von jaco777 entnommen - die Länge (40 Bytes) habe ich aber noch nicht geprüft.

7. Status Viewed/not viewed - von jaco777 entnommen

8. Country Language - von jaco777 entnommen (wird nach meinen Test aber sehr selten verwendet (Arte und ZDF)

9. Duration - Länge der Aufnahme - die Länge von 4 Bytes habe ich noch nicht geprüft

10. Checksum - Vermutung - Dezimalwert hat immer exakt der Länge des Aufnahmenamens entsprochen (somit könnte ja theoretisch anstelle der markierten 108 Bytes der Text der "TV - Show" noch länger sein - Fernseher zeigt aber über den Info Button nur 41 Stellen des Namens an

11. Language ID = war immer nur gesetzt wenn eine Sprachkennung vorhanden war - und dann auch immer für die Sprache die gleiche Kennung 03 = ger (deutsch) 09 = pol (polnisch) - Vermutung

Da eigentlich nur der TV Name interessant ist, wundert mich ein wenig wozu die anderen Infos notwendig sind. Übrigens ist es mir noch nicht gelungen außer dem Namen der Sendung Daten aus der Infoanzeige zu ändern (edit - die Aufnahmelänge lässt sich auch in der Infoanzeige durch das anpassen der *.dat Datei ändern) - kann durchaus sein das diese Informationen aus der *tts Datei gewonnen werden.

So nach dem vielen quatsch jetzt mal zu ein paar interessanteren Überlegungen.

In den aid und vid Dateien sind soweit analysiert ja die Sprungmarken für das Spulen hinterlegt (und m.M. keine Verschlüsselungsinfos wie von jaco777 angenommen) Fehlt die aid kann gespult werden aber die Anzeige in der Info Anzeige dreht vollkommen durch. (umgekehrt muss ich/ihr :) noch getestet werden - edit -> fehlt die vid Datei kann nicht gespult werden - da vermutlich nur die aid Sprungmarken verwendet werden und damit die Videoeinspungspunkte fehlen). Für mich heißt das, dass es sich um ein Programm Stream bei der tts Datei handeln muß. Selbst wenn das decodieren scheitert, würde mich interesieren wie weit man mit diesem Sprungmarken kommt um die tts soweit manipulieren zu können.

zur Info auch nochmal ein Screenshoot vom Script (download sie weiter oben) zum Anpassen der dat - Daten - Anmerkungen erwünscht :D
 
Zuletzt bearbeitet:
Zurück
Oben