Frage an Besitzer einer 6490 mit 141.06.31 und "kdg"-Branding:
Was macht so eine Box eigentlich, wenn man ihr ein modifiziertes Firmware-Image vorsetzt?
Das meint jetzt kein "Pseudo-Update" (auch wenn die Frage wäre, welches Problem da auftritt bzw. was den Ausschlag für die Ablehnung gibt), sondern ein modifiziertes Firmware-Image der 06.61 oder 06.62.
Wie verhält sich die 06.31, wenn man ihr ein unsigniertes oder auch ein falsch signiertes Image vorsetzt, das aber vom Aufbau her korrekt ist?
Bei den DSL-Modellen hat das generelle Verwerfen unsignierter Firmware erst mit der 06.5x Einzug gehalten (bei der 7490 ja sogar erst mit der 06.51, die 06.50 aus dem Dez. 2015 akzeptierte noch unsignierte Images) - was macht die 06.31 bei der 6490 eigentlich an dieser Stelle?
-Ach so ... angesichts der ganzen Beschreibungen, wie man mit den "developer tools" eines Browsers das Upload-Formular bei "Wiederherstellen" passend zurechtbiegen kann, ist es vielleicht untergegangen - aber wenn man direkt eine der Seiten
aufruft, erhält man eine Maske, in der bereits die richtigen Felder für die Auswahl der Datei und auch ein Button mit dem richtigen "Text" enthalten sind.
Allerdings fehlt dieser Seite jetzt der Eintrag einer korrekten Session-ID (SID) im betreffenden HTML-Element. Das ist auch erst einmal vom Typ "hidden" und wenn man (hier ebenfalls mit den Developer-Tools, außer man hat z.B. GreaseMonkey, dann kann man das auch noch automatisieren) den Typ auf "text" ändert, sieht die Seite in etwa so aus:
Hier kann man dann in aller Ruhe die Image-Datei auswählen und muß dann nur noch das Texteingabefeld oben (wo "<? SID ?>" steht) mit einer gültigen SID befüllen, die kriegt man praktisch aus jedem GUI-Link in einer aktiven Sitzung zur FRITZ!Box.
Das ist für einige vielleicht einfacher als das Ändern von "value"-Eigenschaften eines Buttons oder des Namens eines Dateiauswahl-Elements - vor allem braucht es nur eine einzelne Änderung mit den Developer-Tools (von "hidden" auf "text") und der Rest funktioniert wieder "normal".
Natürlich könnte man sich an dieser Stelle auch gleich eine passende HTML-Datei erstellen, die man dann einfach lokal öffnet und die per "base"-Tag im "head"-Element auf die FRITZ!Box (entweder mit der IP-Adresse oder dem Namen "fritz.box") verweist. Entscheidend ist es nur, daß man (a) eine gültige SID in den Request einbaut und (b) von derselben IP-Adresse aus arbeitet, für die die verwendete SID erzeugt wurde.
HTML:
<html>
<head>
<base href="http://fritz.box" />
<title>FRITZ!OS upload image file</title>
</head>
<body>
<form method="POST" action="/cgi-bin/firmwarecfg" enctype="multipart/form-data">
<input name="sid" value="hier SID eintragen" type="text" />
<br />
<input name="UploadFile" type="file" />
<br />
<input name="upgrade" type="submit" value="Upload starten" />
<br />
</form>
</body>
</html>
Diese paar Zeilen lokal abgespeichert (mit Erweiterung "html") und den Browser dafür mit Doppelklick gestartet und man kann eine SID eintragen, eine Datei auswählen und den Upload der Datei starten.
Sollte hier aus irgendeinem Grund eine der anderen Seiten im Nachgang angezeigt werden (von "wrong signature" bis "update error"), hat die in aller Regel bereits die richtige SID aus dem ersten Aufruf im "hidden"-Element und man kann einfach mit dem dann angezeigten Formular weitermachen.
Vielleicht gehören damit ja die Kopfstände mit den Developer-Tools der Vergangenheit an, die Idee mit dem Shell-Skript konnte außer @noob_noob ja niemanden so richtig überzeugen.