Auteur Sujet: ONU Externe 2.5Gbe  (Lu 35537 fois)

0 Membres et 1 Invité sur ce sujet

Fluor

  • Abonné Bbox fibre
  • *
  • Messages: 328
  • FTTH 2G/600 Saint-Orens
ONU Externe 2.5Gbe
« Réponse #120 le: 29 août 2022 à 17:54:24 »
il y a 2 paramettres qui m'interpellent :
<V N="HW_TELNET_LOGIN_CLI_TYPE" V="0x0"/>
<V N="HW_TELNET_LOGIN_CLI_DIAG" V="diagshell"/>

pour un accès full root, remplacer le type par une autre valeur 0x1? et le diagshell par sh ?

Je viens de tester j'ai un "shell" vide rien pas de commande.

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 1 725
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
ONU Externe 2.5Gbe
« Réponse #121 le: 29 août 2022 à 18:43:27 »
faudrait savoir le type de shell sur le LEOX, ca doit etre le même.
si c'est du openwrt, peut etre : ash

Mackila

  • Abonné Bbox fibre
  • *
  • Messages: 354
  • 33
ONU Externe 2.5Gbe
« Réponse #122 le: 29 août 2022 à 20:53:12 »
Le shell via Telnet est ultra limité je vois pas trop comment faire.
Je peux editer le fichier de configuration via l'interface web par contre voir ce que ça donne.

Edit : j'avais pas bien compris je vais essayer après
Via le fichier de config impossible il en veut pas...

Comment ça "via le fichier de config" ?
J'aurais mis ça dans un fichier sur le PC, et envoyé le tout avec un teraterm par exemple...

rooot

  • Abonné RED by SFR fibre FttH
  • *
  • Messages: 1 725
  • 🔵🔵🔵🔵⚪⚪⚪⚪🔴🔴🔴🔴
ONU Externe 2.5Gbe
« Réponse #123 le: 29 août 2022 à 21:41:57 »
Comment ça "via le fichier de config" ?
J'aurais mis ça dans un fichier sur le PC, et envoyé le tout avec un teraterm par exemple...
on est dans un shell minimaliste avec très peux de commandes. on a rien pour manipuler des fichiers, visualiser ou editer. Pas d'accès au systeme de fichier. on ne peut pas faire un cd ni meme un ls.
D'ou l'idée de changer le profil telnet pour rentrer dans un vrai shell, et pas dans ce "diagshell".

Fluor

  • Abonné Bbox fibre
  • *
  • Messages: 328
  • FTTH 2G/600 Saint-Orens
ONU Externe 2.5Gbe
« Réponse #124 le: 29 août 2022 à 23:03:35 »
Normalement avec mon montage je pourrais dump la mémoire et monter les partitions voir ce que ça contient non ?
La liaison UART fonctionne bien j'ai accès au shell.

(Bon j'avoue ne pas avoir les compétences pour je pense)

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 237
  • Chambly (60)
ONU Externe 2.5Gbe
« Réponse #125 le: 30 août 2022 à 00:57:03 »
https://lafibre.info/remplacer-sfr/remplacer-ont-sfr/msg968284/#msg968284
Là je vois copy et tftp, donc peut-être qu'on peut lire /proc/mtd, les /dev/mtd*, etc, ...

Certes avec un vrai shell c'est plus simple.
Pour voir ce qu'il y a dans les partitions, parfois le plus simple c'est de regarder directement là où elles sont montées.
Sinon avec un dump sur PC, et binwalk.

Fluor

  • Abonné Bbox fibre
  • *
  • Messages: 328
  • FTTH 2G/600 Saint-Orens
ONU Externe 2.5Gbe
« Réponse #126 le: 30 août 2022 à 09:18:36 »
https://lafibre.info/remplacer-sfr/remplacer-ont-sfr/msg968284/#msg968284
Là je vois copy et tftp, donc peut-être qu'on peut lire /proc/mtd, les /dev/mtd*, etc, ...

Certes avec un vrai shell c'est plus simple.
Pour voir ce qu'il y a dans les partitions, parfois le plus simple c'est de regarder directement là où elles sont montées.
Sinon avec un dump sur PC, et binwalk.

Pour le TFTP : on peut transférer uniquement le fichie config.img peut importe les argument passé à la commande...

En fichiers joint les logs de lancement du VSOL, si jamais quelqu'un reconnait quelques chose qui pourrait nous aider.

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 237
  • Chambly (60)
ONU Externe 2.5Gbe
« Réponse #127 le: 30 août 2022 à 13:01:54 »
On ne voit pas les traces du kernel, il faudrait lancer "dmesg".

La NOR SPI ferait uniquement 4Mo, c'est peu (et moins que les SFP comme le DFP-34X-2C2, même si leurs firmwares semblent petits).

Il faut un dump déjà pour avoir un backup, et ensuite pour analyser :
 - cat /proc/mtd
 - copier les /dev/mtdX vers le PC, par exemple en tftp
Il faudra peut-être "mount" pour comprendre ce qui est modifiable sans reflasher.

Peut-être que quelque chose comme https://github.com/zry98/SFP-GPON-ONU#modules-using-rtl8672--rtl9601c-chipset est possible.

Fluor

  • Abonné Bbox fibre
  • *
  • Messages: 328
  • FTTH 2G/600 Saint-Orens
ONU Externe 2.5Gbe
« Réponse #128 le: 30 août 2022 à 13:39:21 »
On ne voit pas les traces du kernel, il faudrait lancer "dmesg".

La NOR SPI ferait uniquement 4Mo, c'est peu (et moins que les SFP comme le DFP-34X-2C2, même si leurs firmwares semblent petits).

Il faut un dump déjà pour avoir un backup, et ensuite pour analyser :
 - cat /proc/mtd
 - copier les /dev/mtdX vers le PC, par exemple en tftp
Il faudra peut-être "mount" pour comprendre ce qui est modifiable sans reflasher.

Peut-être que quelque chose comme https://github.com/zry98/SFP-GPON-ONU#modules-using-rtl8672--rtl9601c-chipset est possible.

Je ne sais pas trop comment procéder.

Le bootloader me proposer ces commandes uniquement :


U-Boot 2011.12.NA (May 24 2021 - 17:41:40)

Board: RTL9601D, CPU:300MHz, LX:200MHx, MEM:325MHz, Type:DDR2
DRAM: 32 MB
SPI-F: 5E4016/MMIO16-1/ModeC 1x4 MB (plr_flash_info @ 80dac8d8)
Loading 8192B env. variables from offset 0x21000
Loading 8192B env. variables from offset 0x23000
Loaded 8192B env. variables from offset 0x21000
Error: Cannot find rootfs partition
Net:   LUNA GMAC
Warning: eth device name has a space!

Hit any key to stop autoboot:  0
9601D# dmesg
Unknown command 'dmesg' - try 'help'
9601D# help
?               - alias for 'help'
base            - print or set address offset
bdinfo          - print Board Info structure
boot            - boot default, i.e., run 'bootcmd'
bootd           - boot default, i.e., run 'bootcmd'
bootm           - boot application image from memory
bootp           - boot image via network using BOOTP/TFTP protocol
btg             - bus traffic generator sub-system
cmp             - memory compare
coninfo         - print console devices and information
cp              - memory copy
crc32           - checksum calculation
echo            - echo args to console
editenv         - edit environment variable
env             - environment handling commands
exit            - exit script
false           - do nothing, unsuccessfully
go              - start application at address 'addr'
help            - print command description/usage
iminfo          - print header information for application image
imxtract        - extract a part of a multi-image
itest           - return true/false on integer compare
loadb           - load binary file over serial line (kermit mode)
loads           - load S-Record file over serial line
loady           - load binary file over serial line (ymodem mode)
loop            - infinite loop on address range
md              - memory display
mdram_test      - mdram_test   - do DRAM test.
mflash_test     - mflash_test   - do flash test.
mm              - memory modify (auto-incrementing address)
mtest           - simple RAM read/write test
mw              - memory write (fill)
nm              - memory modify (constant address)
printenv        - print environment variables
reset           - Perform RESET of the CPU
reset_all       - Perform whole chip RESET of the CPU
reset_sw        - Perform software RESET
run             - run commands in an environment variable
saveenv         - save environment variables to persistent storage
setenv          - set environment variables
sf              - SPI flash sub-system
showvar         - print local hushshell variables
sleep           - delay execution for some time
source          - run script from memory
test            - minimal test like /bin/sh
tftp            - boot image via network using TFTP protocol
tftpboot        - boot image via network using TFTP protocol
true            - do nothing, successfully
upimgtar        - update kernel and rootfs by tar format on luna platform
uposkimg        - update kernel by osk router img format on luna platform
upvmimg         - update kernel and rootfs by vmimg format on luna platform
version         - print monitor, compiler and linker version
xf              - xmodem to flash

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 237
  • Chambly (60)
ONU Externe 2.5Gbe
« Réponse #129 le: 30 août 2022 à 14:23:28 »
Tu disais avoir accès au shell, ce n'est pas le cas ?
Je vois un "Username:" dans le startuplog.txt, mais aussi "RTK.0>" donc c'est peut-être similaire au telnet.

Côté uboot, "printenv" peut être utile, mais je ne vois pas de commande qui permette de transférer du contenu vers le PC (à part manuellement avec "sf read ..." + "md ...").
Avec tftp/tftpboot/bootp (si le réseau fonctionne, peut-être uniquement le port 1Gbps) ou loady sur l'UART, il est normalement possible de booter ce qu'on veut, donc en théorie on pourrait booter un kernel d'un autre RTL9601x avec un rootfs minimal.

Fluor

  • Abonné Bbox fibre
  • *
  • Messages: 328
  • FTTH 2G/600 Saint-Orens
ONU Externe 2.5Gbe
« Réponse #130 le: 30 août 2022 à 16:22:31 »
Tu disais avoir accès au shell, ce n'est pas le cas ?
Je vois un "Username:" dans le startuplog.txt, mais aussi "RTK.0>" donc c'est peut-être similaire au telnet.

Côté uboot, "printenv" peut être utile, mais je ne vois pas de commande qui permette de transférer du contenu vers le PC (à part manuellement avec "sf read ..." + "md ...").
Avec tftp/tftpboot/bootp (si le réseau fonctionne, peut-être uniquement le port 1Gbps) ou loady sur l'UART, il est normalement possible de booter ce qu'on veut, donc en théorie on pourrait booter un kernel d'un autre RTL9601x avec un rootfs minimal.

Je me suis mal expliquer c'est le "diagshell" avec juste les commandes proposés. RTK.0 permet juste de configurer la chip apparement.

Le reseau fonctionne, avec TFTP j'ai pu récuperer avec un seveur sur le PC le fichier de config. Mais on est bloqué on peut récupérer que ce fichier...

J'ai demande au support VSOL si on peut accéder à un shell plus élevé mais bon ils font semblant de pas comprendre...

hwti

  • Abonné Orange Fibre
  • *
  • Messages: 2 237
  • Chambly (60)
ONU Externe 2.5Gbe
« Réponse #131 le: 30 août 2022 à 17:10:02 »
OK, donc la console série est configurée avec le même shell limité que le telnet.

Pour le tftp, je parlais dans uboot.
On peut normalement recupérer ce qu'on veut, mais pas envoyer vers le PC (ce serait "tftput" qui n'est pas dans la liste).

Dans uboot, on peut voir quelles sont les commandes de boot (entre autres) avec "printenv".
Il y a plusieurs solutions envisageables :
 - Rajouter init=/bin/sh (et éventuellement un argument console, enlever tout éventuel "quiet", ...) sur la ligne de commande kernel, pour avoir un shell.
 - Si le réseau fonctionne dans uboot, booter le kernel intégré avec un rootfs qu'on chargerait via tftp.

Dans le premier cas on a le rootfs normal, donc la première chose à faire est "cat /etc/passwd" (et "cat /etc/shadow" s'il existe) : si ça se trouve le mot de passe de root est trivial.

Si les interfaces réseau ne nécessitent pas de firmware et/ou paramétrage spécifique (particulièrement le port 1Gbps), on pourrait configurer le réseau manuellement avec ifconfig / ip;
Dans le cas du boot avec "init=/bin/sh", on peut éventuellement lancer tout ou partie des scripts de démarrage manuellement.

Et ensuite les /dev/mtdX pourraient être transférés via tftp, ftp, curl, nc ou autre selon les commandes disponibles.
On peut aussi lancer un telnet pour donner un accès root sans login, "telnetd -l /bin/sh", qui permettrait de transférer des fichiers de manière détournée en hexa ou base64.