View Single Post
Old 12-09-2010, 19:20   #1925
wag320hack
Junior Member
 
Iscritto dal: Sep 2010
Messaggi: 8
TELNET (e altro) ABILITATO!

Prima di ogni altra cosa:
  1. Le azioni indicate qui sotto sono riportate a solo scopo educativo e di conoscenza personale
  2. Non deve essere intrapresa alcuna azione che comporti violazioni di proprietà intellettuale e/o copyright di proprietà della Linksys, Cisco o di chiunque altro
  3. Ogni e qualunque azione farete è integralmente a vostro rischio e pericolo
  4. L'autore non si prende alcuna responsabilità, esplicita o implicita, di tutto ciò
Insomma ..... nessuno venga a cercarmi se "scoppiano" problemi... !!

Fatte quindi le solite e dovute premesse, veniamo al sodo. Innanzitutto un consiglio: fatevi mandare dalla Linksys i sorgenti del firmware che, come al solito, sono un misto di parte GPL e parte proprietaria (solo binari). Lo potete avere facendo la richiesta alla pagina:
http://linksys.custhelp.com/cgi-bin/...er/gpl_ask.php

Secondo aspetto: ho realizzato il tutto sotto Linux (come sempre ), quindi, fatta salva la normale disponibilità ad aiutare tutti, compresi gli sfortunati utenti di Winzozz , non mi chiedete di convertire strumenti/scripts ecc. da Linux a Windows (anche se in realtà dovrebbe essere abbastanza semplice). Se non siete in grado di affrontare la cosa, allora vuol dire che non avete il quantitativo minimo di esperienza sufficiente per garantirvi di non combinare guai, quindi ... lasciate stare e magari prima o poi qualcuno vi fornirà firmware modificati che vi risolvono tutti i problemi senza rischi. Non c'è niente di male a riconoscere i propri limiti (io ad esempio ne ho molti) evitando così di danneggiare se stessi ed importunare gli altri.

Lo script sotto shell Linux (bash) che dà la possibilità di eseguire comandi sul router e vederne l'output (anche senza telnet) è il seguente (gli ho dato il nome wag320n-hack.sh):
Codice:
#/bin/sh
#
# WAG320N-HACK
# Ver. 1.0
# 12/09/2010
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.

# Set username and password in the form of "username:password"
# example: "admin:admin"
my_access="admin:admin"

# Parameters test
if [ -z "$1" ]
then
  echo "wag320n-hack.sh: missing remote command"
  echo "usage: wag320n-hack.sh <remote command>"
  echo "example: wag320n-hack.sh /bin/ls -la /usr/sbin"
  echo "Note: always use full path"
  echo ""
  echo "wag320n-hack.sh - Ver. 1.0 - 12/09/2010"
  echo "Licensed under GPL V. 3"
  echo ""
  exit 0
fi

# Get the command
my_command="ping_size="'$('"$@"' 1>&2)'

curl -s -G -u "$my_access" --data-urlencode 'todo=ping_test' --data-urlencode 'this_file=Diagnostics.htm' --data-urlencode 'next_file=Ping.htm' --data-urlencode 'c4_ping_ipaddr=192.168.1.1' --data-urlencode 'ping_timeout=5000' --data-urlencode 'ping_interval=1000' --data-urlencode 'ping_number=1' --data-urlencode "$my_command" http://192.168.1.1/setup.cgi | sed -e '/HTTP\/1.0 200 OK/q'
Cambiategli la riga my_access="admin:admin" impostando la vostra username e password con cui accedete alle impostazioni web del router. Non è un gran bel programma, ma ... funziona.

Analizzando i sorgenti della Linksys, potete vedere che hanno fatto di tutto per limitare l'accesso al router per cui, anche se nei sorgenti c'è il telnet ed altri strumenti, in realtà nel firmware non sono proprio compilati. Quindi nel router non ci sono e non c'è niente da abilitare con qualche URL "strano"
L'effetto quindi è che quando usate questo script per lanciare comandi, ricordatevi che nel router non è settata neanche la PATH, quindi (per vedere il contenuto di una directory) non potete lanciare "ls", ma dovete dargli "/bin/ls".
Quindi, se per esempio volete avere le informazioni del processore montato nel router, dovete lanciare lo script in questo modo:
wag320n-hack.sh /bin/cat /proc/cpuinfo
L'output sarà:
Codice:
system type             : 96358GWVG
processor               : 0
cpu model               : BCM6358 V1.0
BogoMIPS                : 299.00
wait instruction        : no
microsecond timers      : yes
tlb_entries             : 32
extra interrupt vector  : no
hardware watchpoint     : no
ASEs implemented        :
VCED exceptions         : not available
VCEI exceptions         : not available

unaligned exceptions            : 26253488
Altro esempio: per vedere la versione del kernel lanciare
wag320n-hack.sh /bin/uname -a
L'output sarà:
Codice:
Linux MRX 2.6.21.5 #1 Fri Mar 19 13:21:09 CST 2010 mips unknown
Infine se volete avere il telnet, dovete fare così:
  1. Vi procurate la toolchain uClibc di cross-compilazione per processore mips "big endian"
  2. Compilate in modo "statico" il sorgente dell'utelnetd che è presente nei sorgenti del firmware
  3. Passate il programma compilato in una penna USB formattata vfat che collegate alla porta USB del router
  4. Con il mio script (ricordatevi di usare sempre le PATH complete) copiate il programma dalla pennina (è sotto la directory "/harddisk"... ecc..) in "/tmp" (questo perché non è possibile avviare programmi dalla porta USB)
  5. Con il comando "chmod" rendete eseguibile il programma del telnet
  6. Infine lanciate il daemone telnet con il solito comando "/tmp/utelnetd -l /bin/sh -d"
Fatto questo vi potete collegare in telnet e non vi viene chiesta neanche la password.

A titolo di esempio, solo con questi passi e utilizzando i noti comandi per settare i parametri ADSL dei chipset Broadcom, ho guadagnato 4Mbits di banda, passando da ~ 12Mb a oltre 16Mb abbassando il SNR da 12dB a ~7dB, e la connessione è rimasta solidissima!

Termino invitando chi è più "smanettone" di me a farsi sotto ora con i firmware alternativi. Il nostro WAG320N è letteralmente "una bomba", ma ha bisogno di sprigionare tutte le sua potenzialità liberandosi dai limiti imposti dalla Linksys, quindi... forza ragazzi.
Ciao a tutti.

NOTA: non posso rispondere a PM, quindi ... non mi assaltate
__________________
( hacked) Linksys WAG320N-EU firmware 1.00.12
wag320hack è offline   Rispondi citando il messaggio o parte di esso