.titleBar { margin-bottom: 5px!important; }

Modifikation der FBF über die Sicherungsdatei ...

Dieses Thema im Forum "FRITZ!Box Fon: Modifikationen" wurde erstellt von RudatNet, 20 Juni 2005.

  1. RudatNet

    RudatNet IPPF-Urgestein

    Registriert seit:
    25 Jan. 2005
    Beiträge:
    15,064
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Beruf:
    DSL- und Internet-Service
    Ort:
    Duisburg
    ... geht nicht so einfach,
    da die Checksumme beim Zurückspielen geprüft wird!

    Ist hier schon öfter drüber gesprochen worden!
    Aber leider immer wieder in verschiedenen Beiträgen!


    Edit:
    Titel geändert, da es nun doch eine Lösung gibt! :)
     
  2. DM41

    DM41 Moderator
    Forum-Mitarbeiter

    Registriert seit:
    26 Apr. 2005
    Beiträge:
    7,124
    Zustimmungen:
    20
    Punkte für Erfolge:
    38
    Ort:
    Niederrhein
    Beitrag editiert.

    (Was interessiert mich mein Geschwätz von gestern... :p )
     
  3. buehmann

    buehmann Aktives Mitglied

    Registriert seit:
    11 Juni 2005
    Beiträge:
    1,810
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Modifikation der FBF über die Sicherungsdatei geht doch!

    Hallo, ich habe gerade rausgefunden, wie man diese Überprüfung verhindern kann: Einfach in den ersten Block der Sicherungsdatei eine Zeile "NoChecks=yes" einfügen, z.B. so:
    Code:
    **** FRITZ!Box CONFIGURATION EXPORT
    Password=$$$$MBJNDHVVEYCNUZ1VEXGQSJITJD2PTVW1KTN6SX43YB1CG2GPTR6F1214YJ4R43A2FWD
    NQUBGCCHV3UCBKH2MPIBY1JQXJ23L4KO4KZQA
    FirmwareVersion=14.03.66
    CONFIG_INSTALL_TYPE=ar7_ubik2_4MB_2eth_3ab_isdn_nt_te_pots_wlan_50494
    OEM=avm
    Country=049
    NoChecks=yes
    **** CFGFILE:ar7.cfg
    ...
    Auf diesem Weg habe ich gerade erfolgreich eine Änderung in meiner ar7.cfg durchgeführt. Ob noch mehr "Checks" abgeschaltet werden, kann ich nicht sagen. Die Prüfung des Kennworts, falls eines gesetzt ist, bleibt jedenfalls aktiv. ;-)

    Zusätzlich habe ich eben probiert, einen neuen "**** CFGFILE"-Block einzutragen, um z.B. die debug.cfg zu ändern. Dieser Block wurde offenbar ignoriert: Das Einspielen der Datei war erfolgreich, aber debug.cfg hat sich nicht geändert.

    Es scheint noch einen ähnlichen Schalter "NoDelete=yes" zu geben (beide Strings tauchen in cgi-bin/firmwarecfg auf); den habe ich noch nicht ausprobiert.

    Benutzung auf eigene Gefahr!
     
  4. DM41

    DM41 Moderator
    Forum-Mitarbeiter

    Registriert seit:
    26 Apr. 2005
    Beiträge:
    7,124
    Zustimmungen:
    20
    Punkte für Erfolge:
    38
    Ort:
    Niederrhein
    Wow!

    Für mich die Entdeckung des Monats! Habe es gerade ausprobiert und es funktioniert tadellos. Habe mir die Dateien nach dem Zurücksichern angeschaut und es wurden alle Änderungen übernommen.

    Aber ich prophezeie mal, dass mit dieser simplen Möglichkeit, Änderungen vorzunehmen, die Zahl der Briefbeschwerer, die Aussehen wie eine FritzBox, drastisch zunehmen wird. :)

    @Thomas: Vielleicht solltest Du den Titel dieses Threads um ein Wort kürzen und Deinen Beitrag auch editieren? ;-)
     
  5. RudatNet

    RudatNet IPPF-Urgestein

    Registriert seit:
    25 Jan. 2005
    Beiträge:
    15,064
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Beruf:
    DSL- und Internet-Service
    Ort:
    Duisburg
    Ok, wenn du das sagst! ;)

    Danke für den Super-Tipp buehmann! :)
     
  6. enrik

    enrik Neuer User

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    127
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
  7. buehmann

    buehmann Aktives Mitglied

    Registriert seit:
    11 Juni 2005
    Beiträge:
    1,810
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Wow; gut geraten! (Oder wie hast du es geschafft?) Auf das Weglassen der Gleichheitszeichen bei den Key-Value-Paaren und das Anhängen von Nullbytes an diverse Strings (hoch lebe C!) wäre ich nicht gekommen. (Ich hatte auch mit diversen Varianten herumgespielt.)

    Danke und viele Grüße
     
  8. DM41

    DM41 Moderator
    Forum-Mitarbeiter

    Registriert seit:
    26 Apr. 2005
    Beiträge:
    7,124
    Zustimmungen:
    20
    Punkte für Erfolge:
    38
    Ort:
    Niederrhein
    Bin der Perl-Sprache nicht mächtig, habe keinen Interpreter zur Verfügung und keine Löcher in den Händen.
    Kannst Du mal übersetzen? Meine begrenzten Kenntnisse lassen mich vermuten, dass Du einen Weg gefunden hast, die Checksumme zu finden?!
     
  9. buehmann

    buehmann Aktives Mitglied

    Registriert seit:
    11 Juni 2005
    Beiträge:
    1,810
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ich springe mal ein (ich hoffe, das ist okay, Enrik; bitte verbesser mich, falls ich Fehler mache).

    Wie schon in einigen Postings vermutet, wird die Prüfsumme mit dem Standard-Algorithmus CRC32 berechnet; die Frage war nur, über welche Daten genau. Die Frage hat Enrik jetzt beantwortet. Es sind
    • die Variablen und ihre Werte aus dem Konfigurationsblock ganz oben
    • die Dateinamen
    • die Dateiinhalte
    in der Reihenfolge ihres Auftretens in der Export-Datei. Die "**** "-Zeilen begrenzen nur die verschiedenen Blöcke und gehen nicht in die Berechnung mit ein (bis auf die Dateinamen).

    Dabei ist zu beachten:
    • Die Dateinamen müssen mit einem Nullbyte (0x00) abgeschlossen werden, ebenso die Werte (aber nicht die Variablen).
    • Im Konfigurationsblock zählen die Gleichheitszeichen und Zeilenenden nicht mit.
    • Die Dateien müssen vorher dekodiert werden:[list:d8c60125b2]
    • Binärdateien (BINFILE) sind in Hex-Notation dargestellt.
    • Bei Textdateien (CFGFILE) muss nur das letzte Zeilenende entfernt werden (beim Export eingefügt, damit das folgende "**** END OF FILE" garantiert in einer neuen Zeile beginnt).
    [*] In der Exportdatei sind sowohl Windows- als Unix-Zeilenenden erlaubt; beim Import und vor der Prüfsummenberechnung konvertiert die Box alles zur Unix-Konvention ('\012').[/list:u:d8c60125b2] Ich hoffe, das war ausreichend vollständig und verständlich.

    @Enrik: Dein Script berücksichtigt die letzten beiden Punkte noch nicht: Du verwirfst die ganze letzte Zeile statt nur ihr Ende, und die Zeilenenden in der Exportdatei müssen zur Plattform passen, auf der perl läuft.
     
  10. enrik

    enrik Neuer User

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    127
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Soweit alles richtig.

    Den fehlenden Cross-Platform-Support kannst du ja gerne noch einbauen :) IIRC werden bei der Ausgabe auch noch einige Zeichen escaped, die aber in der Praxis wohl nicht vorkommen.

    Gruß,
    Enrik
     
  11. buehmann

    buehmann Aktives Mitglied

    Registriert seit:
    11 Juni 2005
    Beiträge:
    1,810
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Erst, wenn die ersten Windows-User schreien. ;-) Ich wollte es nur der Vollständigkeit halber erwähnen.

    Ah, ich hatte nur mal "**** END OF FILE" in einer Config-Datei ausprobiert; das wurde nicht escaped. Aber für die Zwecke, für die der Im-/Export-Mechanismus eigentlich vorgesehen ist, hat AVM ja die Kontrolle über die Dateiinhalte.

    Viele Grüße
     
  12. DM41

    DM41 Moderator
    Forum-Mitarbeiter

    Registriert seit:
    26 Apr. 2005
    Beiträge:
    7,124
    Zustimmungen:
    20
    Punkte für Erfolge:
    38
    Ort:
    Niederrhein
    Vielen Dank an Euch beiden für die ausführlichen Erklärungen und für die Arbeit!
     
  13. enrik

    enrik Neuer User

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    127
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Die aktuelle Version funktioniert unter UN*X und Windows (Active State Perl) mit beiden Varianten von Zeilenenden.

    Hat mal jemand mit reinrassigen MAC-Zeilenenden getestet? Werden die vom Importer auch akzeptiert?

    Gruß,
    Enrik
     
  14. enrik

    enrik Neuer User

    Registriert seit:
    26 Okt. 2004
    Beiträge:
    127
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Natürlich nicht nur geraten. Debugger und Disassembler sind wichtige Werkzeuge. Selbstverständlich benutze ich so etwas nur aus rein wissenschaftlichem Interesse.

    Gruß,
    Enrik
     
  15. leo22

    leo22 Aktives Mitglied

    Registriert seit:
    13 Apr. 2005
    Beiträge:
    901
    Zustimmungen:
    0
    Punkte für Erfolge:
    16
    Wer es ganz einfach haben will:
    Also mal ganz schnell hier nachschauen: http://www.ip-phone-forum.de/forum/viewtopic.php?t=21648
     
  16. martian

    martian Mitglied

    Registriert seit:
    26 Mai 2005
    Beiträge:
    273
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Hmm, ich habe erst jetzt von diesem Thread erfahren und wollte dazu mal eine Frage stellen...
    Also, ich habe vor, 2 verschiedene (Tag/Nacht)-Konfigurationen auf dem Fritzbox-Klon der Telekom (Eumex 300IP) zu realisieren. Dies wollte ich einfach so machen, das sich 2 verschiedene Konfigurationsdateien erstelle.
    Kennt ihr einen Weg, wie ich die Dateien dann per Telnet einspielen kann?
    Oder noch besser: Wie ich die Dateien per Telefon-Tastenkommando (z.B. #99*1* für die eine Datei, und #99*2* für die andere) in die Box einspiele?

    Bin für jeden Tipp dankbar!
    Vlg martian
     
  17. freiwi

    freiwi Neuer User

    Registriert seit:
    10 Nov. 2006
    Beiträge:
    22
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #17 freiwi, 23 Nov. 2006
    Zuletzt bearbeitet: 23 Nov. 2006
    Hallo.

    "NoChecks=yes" einfügen.. Ok
    Was für einen Editor sollte ich dafür verwenden (mein BS Windows XP Pro).
    Habe die Datei mal mit dem Windows-Editor geöffnet,
    damit kommt die Formatierung der Datei durcheinander.
    Oder ist ein Hex-Editor dafür besser geeignet??

    LG
    Kevin

    PS:
    Kann man die Box so beschädigen das auch ein Recover nicht mehr möglich ist?
     
  18. v1nc3nt

    v1nc3nt Neuer User

    Registriert seit:
    5 Juni 2009
    Beiträge:
    1
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    #18 v1nc3nt, 5 Juni 2009
    Zuletzt bearbeitet: 5 Juni 2009
    Hallo zusammen.

    sry, dass ich so jahrtausende alte threads ausbuddle, aber wollte jetzt deswegen nichts neues eröffnen. Würde gerne meine Fritzbox 7050 via remote erreichen können. DynDNS is angemeldet und via VI habe ich unter "/var/flash/ar7.cfg

    "tcp 0.0.0.0:12345 192.168.178.2:80 0 # FritzBox"

    (IP meiner fritzbox ist auf 192.168.178.2 geändert)

    Jetzt habe ich beim import auch das Problem mit der Checksumme. "NoCheck = yes" klappt leider net. Mit dem perl-script komme ich nicht klar. hab nen perlinterpreter (und windows) aber wie ich die checksumme jetzt hinkrieg...ka. Bitte helft mir, hab da leide rnicht allzuviel ahnung.

    Danke schonmal!


    Edit: entschuldigung, habe das "s" bei "NoChecks = yes" vergessen. Allerdings gehts immer noch nicht :( Ich komm net auf die box mit meiner dyndns-adresse...

    edit2: hätte ich port 443 freigeben müssen oder so?
     
  19. Lemur

    Lemur Mitglied

    Registriert seit:
    17 Mai 2007
    Beiträge:
    281
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Beruf:
    Jurist & Systemadministrator
    Ort:
    OWL / NRW / Germany
    Aua!, das würde ja bedeuten, dass jeder zumindest bis zur Weboberfläche kommt, ist das wirklich so gewollt?

    Sicherer wäre hier z.B. SSH (via dropbear) geht auch ohne Freetz, und dann eine sichere Verbindung via SSH zur Box herstellen. Darüber kannst Du dann auch beliebig "tunneln" und dein WebIF administrieren, hast gleichzeitig noch Konsolenzugriff und es ist bedeutend sicherer gegen unbefugtem Zugriff.

    Zu deinem eigendlichen Problem, dass kommt auf die Firmware an.

    Versuchs doch mal Testweise mit
    Code:
     "tcp 0.0.0.0:12345 0.0.0.0:80," 
    Gruß Lemur
     
  20. mrak888

    mrak888 Neuer User

    Registriert seit:
    6 Jan. 2008
    Beiträge:
    30
    Zustimmungen:
    0
    Punkte für Erfolge:
    0
    Ausprobiert mit dem Original-Export und das Programm behauptet, dass die Checksumme falsch wäre. AVM muss was zuletzt geändert haben.

    **** FRITZ!Box Fon WLAN 7270 CONFIGURATION EXPORT
    **** CFGFILE:ar7.cfg
    **** CFGFILE:wlan.cfg
    **** CFGFILE:voip.cfg
    **** CFGFILE:usb.cfg
    **** CFGFILE:tr069.cfg
    **** BINFILE:fx_cg
    **** BINFILE:fx_conf
    **** BINFILE:fx_def
    **** BINFILE:fx_lcr
    **** BINFILE:telefon_misc
    **** BINFILE:phonebook
    **** BINFILE:calllog
    **** BINFILE:dect_misc
    **** BINFILE:fonctrl
    **** BINFILE:dect_eeprom
    **** BINFILE:dmgr_handset_user
    **** BINFILE:config
    **** CFGFILE:vpn.cfg
    **** CFGFILE:user.cfg
    **** BINFILE:umts.cfg
    **** BINFILE:configd
    WRONG CHECKSUM d116b1fc vs. 61e8a20a

    Hal jemand ein neueres Proggi?