|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Nov 2003
Città: Milano
Messaggi: 31347
|
[Thread ufficiale] Zyxel VMG8828-B50B - Modding
- Scopo di questo thread
Scopo di questo thread è di discutere espressamente ed esclusivamente del prodotto oggetto del thread: Zyxel VMG8828-B50B esclusivamente in rerlazione al modding. - Thread uffciiale Per discussioni in merito ai firmware stock fare riferimento al thread ufficiale Zyxel VMG8828-B50B - Thread uffciiale - Licenza Creative Commons Il contenuto di questo post è rilasciato con licenza Creative Commons Attribution-Noncommercial-Share Alike 2.5 ..
__________________
Dlink DSL-3xxT - Dlink DSL-5xxT/G6xxT - Digicom Office Wave 54 Linksys ADSL2MUE - Linksys WAG54GS - Linksys WAG200G - Come usare 2 router in cascata Console seriale - JTAG - 4geek Playo - WD TV Live |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Nov 2003
Città: Milano
Messaggi: 31347
|
- Licenza Creative Commons
Il contenuto di questo post è rilasciato con licenza Creative Commons Attribution-Noncommercial-Share Alike 2.5 ..
__________________
Dlink DSL-3xxT - Dlink DSL-5xxT/G6xxT - Digicom Office Wave 54 Linksys ADSL2MUE - Linksys WAG54GS - Linksys WAG200G - Come usare 2 router in cascata Console seriale - JTAG - 4geek Playo - WD TV Live |
![]() |
![]() |
![]() |
#3 |
Junior Member
Iscritto dal: Oct 2024
Messaggi: 16
|
Caricare firmware con UART (risoluzione router)
Salve a tutti, ho brickato il router e se dovesse servire a qualcuno sono riuscito a recuperarlo tramite seriare con un adattatore uart usb-ttl.
Ecco come ho fatto dopo aver aperto il router individuato i pin per il seriale e collegato i cavi. nella foto di seguito vedete come ho collegato i cavi,
![]()
![]()
qualora qualcuno dovesse avere il firmware di andreock versione 5.17 se me lo mandasse sarei molto grato 🙂 |
![]() |
![]() |
![]() |
#4 |
Junior Member
Iscritto dal: Oct 2024
Messaggi: 16
|
compilare firmware vmg8828
Dopo tanta agonia sto iniziando a vedere qualche risultato, sono riuscito a compilare il firmware e di conseguenza ad avere l'SDK e la toolchain per compilare programmi per il VMG8828b50b. Ho letto tanto e fatto tanti esperimenti e alla fine sono riuscito ad avere la versione di dropbear 2024.86 (l'ultima) funzionante sul router. Sono appena riuscito quindi non ho ancora giocato con le configurazioni e non ho ancora creato il pacchetto ipk ma ho eseguito il programma sul router e finalmente posso usare le nuove chiavi ed25519.
Scrivo questo post con quello che ho fatto fino ad ora sperando possa tornare utile a qualcun altro o a me stesso in futuro come pro memoria. La guida non è esaustiva, riporto le mie note quindi potrebbe capitare di dover fare qualche altro passo come ad esempio installare git per il quale non ho dato indicazioni. Prima cosa preparare l'ambiente! ho usato da mac UTM ma le macchine virtuali dovrebbero funzionare più o meno allo stesso modo su ogni piattaforma.
adesso il sistema è pronto ![]() ![]() ![]() ![]() POSSIAMO INIZIARE con git potete scaricare nella home nella directory vmg8828 il codice https://gitlab.com/Andrea055/vmg8828 e installare il software necessario: Codice:
sudo apt-get install -y g++ flex bison gawk make autoconf zlib1g-dev libncurses-dev git subversion gettext Codice:
src-git packages https://git.openwrt.org/feed/packages.git src-git xwrt https://github.com/stgerrard008/OpenWRT-missing-file src-git bmx6 https://github.com/stgerrard008/OpenWRT-missing-file lascio un buon link su come funziona il menuconfig https://oldwiki.archive.openwrt.org/doc/howto/build nel prossimo post condivido qualche nota su come ho compilato dropbear Ultima modifica di vitpar : 20-12-2024 alle 17:02. Motivo: apt-get upgrade openssl |
![]() |
![]() |
![]() |
#5 |
Junior Member
Iscritto dal: Oct 2024
Messaggi: 16
|
Comandy busybox cambiare passwords
è molto insicuro lasciare le password originali condivido come ho fatto a cambiarle:
Ultima modifica di vitpar : 11-02-2025 alle 18:28. Motivo: added code to permanently set more informative shell |
![]() |
![]() |
![]() |
#6 |
Junior Member
Iscritto dal: Oct 2024
Messaggi: 16
|
Come compilare dropbear 2024.86
LINK IMPORTANTE! SPIEGA BENISIMO COME FUNZIONA BUILDROOT: https://buildroot.org/downloads/manu...#rootfs-custom
Dropbear non è aggiornato e la versione 2019 ha molte, molte, molte vulnerabilità per cui ho ritenuto importante spenderci molto tempo per cercare di aggiornarlo all'ultima versione. partendo dal presupposto che l'ambiente sia pronto e l'SDK compilato come ho indicato nei post precedenti bisogna scaricare i sorgenti del programma
adesso proverò a compilare impostando delle opzioni riguardo le possibili chiavi e poi troverò un modo per sostituire dropbear del firmware o sovrascrivendo o impacchettando con ipk. vi tengo aggiornati cito questo sito che mi è stato molto utile https://dvblog.soabit.com/building-c...omplete-guide/ e anche quest altro https://www.gargoyle-router.com/old-openwrt-coding.html Ultima modifica di vitpar : 28-04-2025 alle 17:05. |
![]() |
![]() |
![]() |
#7 |
Junior Member
Iscritto dal: Oct 2024
Messaggi: 16
|
problemi SSL per scaricare
Con la versione 14.04 di ubuntu può risultare problematico scaricare pacchetti a causa della mancanza di chiavi crittografiche. Perciò per scaricare ad esempio dropbear dal repository originale ( https://matt.ucc.asn.au/dropbear/rel...020.79.tar.bz2) è necessario aggiornare wget:
Codice:
sudo apt-get install wget Codice:
$ wget https://launchpad.net/ubuntu/+archive/primary/+sourcefiles/openssl/3.0.13-0ubuntu3/openssl_3.0.13.orig.tar.gz $ tar -xvzf openssl_3.0.13.orig.tar.gz $ cd openssl-3.0.13/ $ sudo ./config $ sudo make ]# then Create symbolic link from ‘which openssl’ and restart the shell |
![]() |
![]() |
![]() |
#8 |
Junior Member
Iscritto dal: Oct 2024
Messaggi: 16
|
Come avviare un programma all'avvio del router
Siccome non sono riuscito a compilare il firmware con dropbear aggiornato ho studiato come avviare un qualunque script all'avvio del router e riporto qualche nota:
la sequenza di avvio chiama in ordine:
Quindi se si vuole avviare un programma all'avvio del router si può inserire lo script in Rc3.d (notare che tutti gli script già presenti sono link simbolici agli script in init.d). All avvio verranno chiamati tutti gli script in ordine alfabetico dandogli il paramentro start. Quindi gli script che andiamo ad aggiungere conviene prefissarli con S99 in modo che vengano eseguiti per ultimi. Questo codice può fungere da template per tutti i servizi che vogliamo avviare, è un semplice helloworld arricchito con la possibilità di gestire i parametri start, stop, fare logrotate e avere processi singleton (come nel mio caso con dropbear): Codice:
root@VMG8828-B50B /etc/rc3.d $ pwd /etc/rc3.d root@VMG8828-B50B /etc/rc3.d $ ls -l S99helloworldv2.sh -rwxr-xr-x 1 root 0 2109 Feb 18 14:46 S99helloworldv2.sh root@VMG8828-B50B /etc/rc3.d $ cat S99helloworldv2.sh #!/bin/sh export PATH=/home/bin:/home/scripts:/opt/bin:/bin:/sbin:/usr/bin:/usr/sbin export LD_LIBRARY_PATH=/lib/public:/lib/private:/usr/lib:/lib:/usr/lib/ebtables:/usr/lib/iptables EXEC_NAME=helloworldv2 EXEC_PATH=/usr/sbin LOGROTATE_CONF=/var/log/${EXEC_NAME}.conf LOGROTATE_FILE=/var/log/${EXEC_NAME}.log if [ ! -f "$LOGROTATE_FILE" ]; then touch "$LOGROTATE_FILE" fi if [ ! -f $LOGROTATE_CONF ]; then echo "${LOGROTATE_FILE} { size 50k rotate 3 compress missingok notifempty copytruncate }" > $LOGROTATE_CONF fi run_logrotate() { logrotate $LOGROTATE_CONF } start() { while true; do run_logrotate echo "$(date '+%d-%m-%y %H:%M:%S') helloworldv2" > /dev/pts/0 echo "$(date '+%d-%m-%y %H:%M:%S') helloworldv2" >> $LOGROTATE_FILE sleep 120 # Pausa di 2 minuti done & } stop() { PID=$(pgrep -f "$EXEC_NAME") for pid in $PID; do if [ "$pid" != "$$" ]; then echo "$(date '+%d-%m-%y %H:%M:%S') killing $EXEC_NAME with PID $pid !!!" echo "$(date '+%d-%m-%y %H:%M:%S') killing $EXEC_NAME with PID $pid !!!" >> $LOGROTATE_FILE kill -9 "$pid" exit 0 fi done } case "$1" in start) PID=$(pgrep -f "$EXEC_NAME") if [ -z "$PID" ] || [ "$PID" = "$$" ] ; then echo "$(date '+%d-%m-%y %H:%M:%S') Avvio di $EXEC_NAME..." >> $LOGROTATE_FILE start else echo "$(date '+%d-%m-%y %H:%M:%S') $EXEC_NAME is already running wiyh PID $PID !!!" echo "$(date '+%d-%m-%y %H:%M:%S') $EXEC_NAME IS ALREADY running with PID $PID" >> $LOGROTATE_FILE fi exit 0 ;; stop) echo "$(date '+%d-%m-%y %H:%M:%S') Arresto di $EXEC_NAME..." >> $LOGROTATE_FILE stop exit 0 ;; restart) stop start exit 0 ;; *) echo "$0: unrecognized option $1" exit 1 ;; esac root@VMG8828-B50B /etc/rc3.d $
questo permette quando viene lanciato con start di verificare se il processo non è già in esecuzione. inonltre all'inizio crea i file conf e log per logrotate se non ci sono. Questo script può fungere da template per qualunque script semplicemente sostituendo Codice:
EXEC_NAME=helloworldv2 Infine non bisogna dimenticare di rendere lo script eseguibile: Codice:
chmod +x /etc/Rc3.d/helloworldv2.sh Codice:
LOGROTATE_CONF= /mnt/usb1_sda1log/${EXEC_NAME}.conf LOGROTATE_FILE= /mnt/usb1_sda1/log/${EXEC_NAME}.log |
![]() |
![]() |
![]() |
#9 |
Junior Member
Iscritto dal: Oct 2024
Messaggi: 16
|
Come compilare dropbear 2025.87
I passaggi sono gli stessi del 2024.86 ma non funzionerà perchè lo sviluppatore ha inserito in nel file mlkem768.c degli static assert che non sono supportati da uclib così vecchio. Però lo sviluppatore ha già risolto il rpoblema nel master su github quindi la prossima release dovrebbe funzionare, intanto se si vuole compilare quindi bisogna scaricare il master ad oggi 27/04/25 corrisponde alla v2025.87 con la patch necessaria per la compilazione su uclib.
La versione già compilata per armv7 è qui https://github.com/VittorioParagallo...opbear/2025.87 Ultima modifica di vitpar : 27-04-2025 alle 14:56. |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Dec 2003
Messaggi: 4488
|
Ciao a tutti! Un amico ha questo router brandizzato 3 (firmware 5.13 (abrf.0)b5 , che da un po’ di tempo a questa parte spesso dà problemi: lo usa e in Wi-Fi e i video molte volte si bloccano e deve aspettare o refreshare più volte le
Pagine per farli ripartire. Non riesce spesso a scaricare le mail ecc … Mi garantisce che lo fa con qualsiasi dispositivo, che sia telefono tablet o pc. Alla Wind gli garantiscono sia tutto ok. Volendo fare una cosa carina, ho trovato un firmware 5.17 debrandizzato. non su questo forum ma sul forum di fibraclick. non essendoci istruzioni DETTAGLIATE come poi trovare (troppo tardi) in questa spendida pagina, ho semplicemente disabilitato il controllo firmware tramite ssh , fatto backup dalla pagina del sito e flashato il firmware. il router non si collega piu ad internet, inoltre seppur risultando un nuovo firmware. non pare minimamente debrandizzato. anche caricando il backup, continua a non andare. SICURAMENTE PERCHE' HA PERSO PARAMETRI VITALI CONFIGURAZIONE. cosa posso fare? riflashare un firmware stock? un firmware diverso? o cosa? Grazie |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 01:51.