[Frage] 7490: Werte dauerhaft (recover-fest) verändern

fishermans

Neuer User
Mitglied seit
10 Jun 2005
Beiträge
4
Punkte für Reaktionen
0
Punkte
0
7490, derzeit 6.23, telnet an


Hallo liebes Forum,

ich bräuchte mal einen Schubs in die richtige Richtung:

Ich möchte einige Werte (WLAN-key etc.) in einer 7490 dauerhaft so verändern, das sie (die Werte) auch ein Recover überstehen. Ich habe mittels rukerneltool mal an diversen x.cfg rumgefummelt, erstaunlicherweise nimmt die Box für vieles auch Plain Text :eek:

Ein Update übersteht der so gesetzte Key, ein Laden der Werkseinstellungen bzw. ein Recover natürlich nicht. IIRC konnte man all das mit dem rkt bei allen Boxen kleiner 7490 "recoverfest" flashen. Bevor ich nun den Lötkolben anwerfe:

- Ich vermute als Speicherort für diese Daten das Eprom mittig Platinenunterseite. Richtig?
- Wie kann ich das ohne Lötkolben-Einsatz beschreiben?

Ein paar konkrete Stichworte reichen mir, ich lese mich dann ein. 7490, Flash, (E)EPROM sind auch in Kombination undankbare Suchbegriffe.

Danke schonmal und munter bleiben :D
 
erstaunlicherweise nimmt die Box für vieles auch Plain Text
Was ist daran erstaunlich? Die Box "nimmt" bei allen verschlüsselten Werten auch Klartext bei einem Import entgegen ... allerdings speichert sie das sofort (auch intern) wieder in verschlüsselter Form (die sich dank "salt" auch ständig ändert und zwar für jeden Wert und jedes neue Speichern).

Den WLAN-Key kann man tatsächlich in weiten Teilen "recovery-fest" (aber nicht ruKernelTool-fest, weil das einfach MTD3/MTD4 löscht und dann kommt wieder der Wert aus der Finalisierung beim Hersteller zum Tragen) direkt über den Bootloader in einer FTP-Session ändern (und der heißt dort auch glatt noch "wlan_key") ... bei anderen Werten (es gibt halt so viele) hängt das von ihrem Speicherort ab.

Ein Lötkolben ist aber definitiv das falsche Werkzeug ... außer man möchte den WLAN-Key auch noch ins Gehäuse "gravieren" - das müßte aber parallel zur internen Änderung erfolgen (solange man nicht im Rahmen von "pimp my FRITZ!Box" schon entsprechende Vorarbeiten geleistet und das Gerät mit OCR und passendem Sensor ausgerüstet hat).

Vielleicht erläuterst Du auch
fishermans schrieb:
Ich habe mittels rukerneltool mal an diversen x.cfg rumgefummelt [...]
mal etwas genauer ... wie hast Du denn welches "x" mit dem ruKernelTool editiert (ich interpretiere das "Rumgefummel" mal in diesem Sinne und nicht als "Begrabschen" der FRITZ!Box oder des verwendeten Client-PCs) und dann wieder in die Box geschafft? Mit welcher Version des ruKernelTools hast Du das gemacht? Warum hast Du das mit dem ruKernelTool gemacht, wenn Du doch (#1, Zeile 1) einen Telnet-Zugang zur Box hast und das auch dort einfach direkt hättest editieren können? Es bleiben halt noch so einige Fragezeichen stehen ... :-(
 
Hallo,

erstmal vielen Dank für die rasche Antort.

Was ist daran erstaunlich? Die Box "nimmt" bei allen verschlüsselten Werten auch Klartext bei einem Import entgegen ... allerdings speichert sie das sofort (auch intern) wieder in verschlüsselter Form (die sich dank "salt" auch ständig ändert und zwar für jeden Wert und jedes neue Speichern).

Mein RKT war "uralt". Version also die, die gestern zum Update angeboten wurde. Sorry, habe den Laptop nicht hier um die genaue Version nachzusehen. Ich mach' im Job so viel auf Konsolen rum, da bin ich froh, mal ein wenig Maus zu schubsen, deswegen RKT. Dort unter Tools cfg-Datei modifizieren, wlan.cfg ausgewählt. Hoppla, PSK ist verschlüsselt gespeichert. :rolleyes: Mit 12345678 überschrieben, mit RKT zurück auf die Box. Ich hatte mit Nebenwirkungen nach dem Reboot gerechnet, aber nein, es bleibt so gespeichert. Auf demselben Weg lassen sich diverse andere Konfigurationsdateien verändern.

Damit sollte dann auch Dein letzter Absatz beantwortet sein ;)


Den WLAN-Key kann man tatsächlich in weiten Teilen "recovery-fest" (aber nicht ruKernelTool-fest, weil das einfach MTD3/MTD4 löscht und dann kommt wieder der Wert aus der Finalisierung beim Hersteller zum Tragen)

Eben diesen "Schlüssel ab Werk" (und ein paar andere Dinge) möchte ich dauerhaft ändern. Ich bin zwar in Sachen Hardware, Linux, Flashdateisystemen etc. soweit fit, nur eben nicht gerade mit den Fritten verheiratet ;) Deswegen die Frage nach dem Schubs in die richtige Richtung. Wald, Bäume.
 
Zuletzt bearbeitet:
Ok, ich kenne die aktuelle Version des ruKernelTools nicht ... ein Problem bei den geschilderten Änderungen kann irgendwann dann entstehen, wenn man diese Aktionen (bei laufender Box und damit laufendem ctlmgr - das ist die zentrale Komponente zur Verwaltung dieser Einstellungen) vornimmt und einige Randbedingungen nicht beachtet. Ich habe keine Ahnung, welche Vorkehrungen ein aktuelles ruKernelTool da treffen mag.

1. Deine Feststellung "aber nein, es bleibt so gespeichert" sollte maximal bis zur nächsten "regulären" Schreiboperation für die betreffende Konfigurationsdatei gelten, denn beim (eigenen) Schreiben verschlüsselt die Firmware derartige Einträge automatisch.

2. Es gibt eine Art "Cache" im "ctlmgr", in dem der (aus Sicht dieses Daemons) aktuelle Stand enthalten ist. Ändert man jetzt die betreffende Datei im Filesystem und setzt hinterher manuell (ctlmgr_ctl, set.lua) oder über das GUI einen Wert neu (es gibt auch ein paar Stellen, wo regelmäßig automatisch neu geschrieben wird), dann wird nicht nur der vorher geänderte Wert wieder verschlüsselt zu sehen sein ... es wird in aller Regel auch der Wert sein, der intern vom "ctlmgr" als gültig angesehen wird und das ist nicht der neue Wert in der Datei im Filesystem. Also muß man bei solchen Änderungen weitere Maßnahmen treffen ... z.B. den ctlmgr (ohne weitere Schreiboperationen, die eine Änderung ja sofort wieder rückgängig machen würden) beenden und neu starten, weil er dann tatsächlich den Inhalt der Datei neu einliest. Die Verwendung eines eher ältlichen Mechanismus (den Aufruf von speziellen Skripten, die auf "...cfgchanged" enden) ist nicht mehr zu empfehlen ... AVM paßt die schon sehr lange nicht mehr an Änderungen an und es kann gutgehen, muß es aber nicht. Einige machen auch umgehend einen Neustart nach solchen Änderungen, wobei der "ctlmgr" ja auch neu gestartet wird. Das ist aber eher die Holzhammer-Methode und bleibt mit einer kleinen Unsicherheit behaftet, weil der ctlmgr vor seiner Beendigung ja noch Schreiboperationen ausführen könnte. Der verwendet wohl auch eine Art "lazy write", damit mehrere aufeinanderfolgende Konfigurationsänderungen nicht jedesmal eine Schreiboperation für den Flash-Speicher auslösen - daher ist nicht einmal ein definierter Abstand zur letzten Änderung zu beziffern. Am besten ist es bei diesen Aktionen tatsächlich, den "ctlmgr" zu beenden, die Änderung vorzunehmen oder zu speichern (z.B. durch das Kopieren des vorbereiteten neuen Standes) und dann den "ctlmgr" wieder zu starten.

Wobei Punkt 2 auch nur einen alten Stand wiedergeben könnte ... das testet man kaum bei jeder Version aufs Neue - das kannst Du aber anhand des geschilderten Ablaufs und unter Verwendung des Programms "ctlmgr_ctl" in einer Telnet-Session (oder über das GUI) jederzeit selbst probieren. Sollte sich dort in letzter Zeit etwas getan haben (wobei ich nicht glaube, daß AVM vom "lazy write" abgehen würde, denn das hat ja auch den Zweck, die Schreiboperationen in den Flash signifikant zu verringern ... da dieses TFFS "transaktionssicher" ist, wird da auch keine Schreiboperation vom Dateisystemtreiber abgefedert), kannst Du uns ja dann die neuen Erkenntnisse zukommen lassen. Bei 06.23 sollte auch "decode_passwords" noch funktionieren, damit man beim Testen sehen kann, was da eigentlich in dem verschlüsselten Eintrag steht.

Zum vordefinierten WLAN-Schlüssel dachte ich bereits alles Notwendige geschrieben zu haben ... Du wolltest ja nur Stichworte und damit sollte man etwas finden. Abgesehen davon kann ich einfach nicht glauben, daß das ruKernelTool (wenn man froh ist, "mal ein wenig Maus zu schubsen") es verlernt haben soll, Environment-Variablen im Bootloader zu verändern.

Den Key aus der Finalisierung kriegt man nun mal nur mit einem Bootloader-Image und einem Hex-Editor geändert ... das hat aber mit "recovery-fest" nichts zu tun, dafür reicht bereits die Änderung im Environment über die passenden Kommandos (oder über die traktierte Maus, die sich sicherlich auch etwas Schöneres vorstellen könnte, als permanent durch die Gegend geschubst zu werden - und so ein Tierchen fällt deutlich unter das Tierschutzgesetz).

Wenn Du etwas weitersuchst, wirst Du auch feststellen, daß nach so einer Änderung des "wlan_key"-Wertes (wie auch bei "maca") zwingend ein Zurücksetzen auf die Werkseinstellungen erfolgen muß (das ist gar nicht so einfach über das GUI, weil man sich nämlich nicht mehr anmelden kann nach so einer Änderung im Bootloader) ... der Wert von "maca" und "wlan_key" wird für die erwähnte Verschlüsselung der - im FRITZ!OS immer mit reversibler Verschlüsselung gespeicherten - Credentials herangezogen und zu diesen Werten gehören auch die Namen und Kennwörter aller FRITZ!Box-Benutzer.

Eine Alternative ist nach so einer Änderung die Verwendung des AVM-Recovery-Programms (und nicht des ruKernelTools), weil das eben (siehe #2) anders als das ruKernelTool das TFFS-Image "richtig" schreibt und nicht einfach nur den Flash an dieser Stelle löscht (worauf dann wieder der Wert aus der Finalisierung geladen wird). Damit wird dann auch der geänderte "wlan_key" in dieses TFFS-Image vom Recovery-Programm eingebaut und die Box startet mit dem neuen "wlan_key" und der eingetragenen "maca"-Adresse ... nun kann sie selbst leere Werte (so sehen die Standardeinstellungen in der Regel aus) unter Zuhilfenahme der neuen Angaben im Environment ver- und später wieder entschlüsseln.

Solange Du ansonsten nicht endlich konkreter wirst, was Du eigentlich vorhast und was "noch ein paar andere Dinge" sein mögen, wirst Du kaum sinnvolle Antworten erhalten können und jedes "Schubsen" kann - egal in welche Richtung - nur als Rempelei enden.

Es gibt eine Möglichkeit, einige Werte "reset-fest" zu setzen ... das klappt aber auch nur dauerhaft, wenn man genau auf "recovery-fest" gar keinen Wert legt, weil bei Recovery eben diese Einstellungen wieder dahin wären ... u.a. deshalb gibt es bei derartig konfigurierten Boxen keine Möglichkeit, das AVM-Recovery-Programm zu verwenden, wenn ein entsprechender "Schutzschalter" (die Variable "provider" im Environment ist dafür zuständig) gesetzt wurde.
 
Solange Du ansonsten nicht endlich konkreter wirst, was Du eigentlich vorhast und was "noch ein paar andere Dinge" sein mögen[...]

Sorry, wenn das nicht klar rüber kam: Ich will eine 7490 "Deppenfest" machen, d.h. ich überschreibe die gewünschten Einstellungen (hier z.B. den wlan-key) mit meinen Vorgaben dergestalt, das sie wie "ab Werk" und damit "Recovery-fest" wirken. Bei anderen Boxen funktioniert das ja mit dem RKT. Da das RKT die 7490 noch nicht komplett flashen kann, hilft das erstmal wenig.

Soweit erstmal vielen Dank, ich denke, damit werde ich mich weiter einlesen können.
 
Nochmal ... auch wenn Du immer wieder den "wlan_key" als Beispiel anführst und der Rest immer als "ein paar andere Dinge" firmiert, wirst Du damit nicht wirklich weiterkommen.

Es gibt nun mal einen Unterschied bei einer FRITZ!Box zwischen "FactoryReset" und "Recovery" (Stichwort hier wären die TFFS-Nodes mit Minor-IDs kleiner 100) ... das ist also nicht unbedingt "zu vermengen" und hinter der Formulierung "[...] wie 'ab Werk' und damit 'Recovery-fest' wirken." (man darf bei "ab Werk" sicherlich einen Zusammenhang zu "FactoryReset" annehmen) stecken zwei ähnliche, aber durchaus unterschiedliche Vorgänge.

Für andere Einstellungen als man sie im Bootloader-Environment vornehmen kann, wirst Du auch kein "Recovery-fest" erreichen können ... das sind nämlich die einzigen Einstellungen, die eine Verwendung des Recovery-Programms "überleben" und eben weil das so ist, darf man bei Boxen mit einer "provider additive"-Konfiguration (die "FactoryReset" unbeschadet übersteht) eben keine Verwendung des Recovery-Programms zulassen, was AVM durch die Variable "provider" im Urlader-Environment blockiert.

Damit wirst Du "einige andere Dinge" (solange die nicht auch in den Bootloader-Variablen abzubilden sind) auch niemals "Recovery-fest" setzen können ... wenn man solche Einstellungen automatisch nach jedem Reset wieder vornehmen lassen will, muß man generell die Verwendung des Recovery-Programms verhindern ... was deutlich etwas anderes ist, als einzelne Einstellungen (hier kann ich jetzt mal schreiben: "z.B. den WLAN-Key") "Recovery-fest" in der Box zu hinterlegen.

War das jetzt deutlich/ausführlich genug? Ob das Setzen eigener Werte über eine solche eigene "provider additive"-Konfiguration überhaupt möglich ist, hängt auch davon ab, was man nun eigentlich vorgeben will ... wenn ich immer wieder an dieser Stelle insistiere und nachhake, was Du nun eigentlich genau vorgeben willst, ist das nicht nur pure Neugierde meinerseits - bei einigen Sachen (u.a. Benutzerkonten) klappt das nach meinen Tests eben genau nicht, egal wie man es auch versucht. Da gibt es bei AVM auch verschiedene Mechanismen ... das geht bei "diff"-Dateien los, die nur die gegenüber den Standardeinstellungen geänderten Daten umfassen.

Aber das nur nebenbei ... lies Dich wirklich erst einmal weiter ein, dann wird sicherlich auch klar, wo die FRITZ!Boxen da "etwas speziell" sind und wo Deinem Vorhaben da von der Firmware automatisch Grenzen gesetzt werden.
 
PeterPawn,

vielen Dank für Deine ausführlichen Erläuterungen. Das Urlader-Environment war der entscheidende Hinweis. Wie ich schon weiter oben schrieb, sind mir Fritzbox-spezifische Dinge mangels Beschäftigung damit nicht so geläufig. Ich habe viel zu kompliziert gedacht. Niemals hätte ich damit gerechnet, das ich in einem laufenden, fertig gebooteten System ohne weiteres Variablen des Bootloaders dauerhaft überschreiben kann. :eek:
Sind die völlig gaga, die Berliner? :silly:
 

Zurzeit aktive Besucher

Statistik des Forums

Themen
244,832
Beiträge
2,219,107
Mitglieder
371,534
Neuestes Mitglied
vignajeanniegolabek
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.