Article View: de.comp.security
Article #196Bug in Firmware von Brick-XL
From: Niklas Schiffler
Date: Wed, 13 May 1998 00:00
Date: Wed, 13 May 1998 00:00
218 lines
6920 bytes
6920 bytes
Subject:
Bug in Firmware von Brick-XL..?
Date:
Sat, 09 May 1998 23:28:06 +0200
From:
Niklas Schiffler <nschiffler@gmx.net>
To:
info@bintec.de
Hallo...
ich schreibe, nachdem ich unsere Bianca/Brick-XL nun bereits zum zweiten
mal unfreiwillig rebootet habe. Passiert ist das ganze beim benutzen
eines Portscanners, dessen Linux-Sourcecode ich weiter hinten an diese
Mail angehaengt habe.
Wir benutzen eine Bianca/Brick-XL mit der Firmware Version V.4.8 Rev.2
vom 98/03/23. Die Brick fungierte in diesem Fall als Router zu T-Online,
welches ueber ein EBRI-Modul angewaehlt wird.
Der Sourcecode des Portscanners wurde auf einen Pentium 133 mit 32 MB
Ram unter Linux 2.0.30 compiliert. Die Linux Distribution war S.u.S.E.
Linux aktuell vom Juli 1997.
Der Portscanner verursachte im normalen Betrieb mit dem Aufruf
nick@miramax: /tmp/compile/ > ./pscan www.bintec.de
keine Probleme.
Falls der Scanner jedoch mit
nick@miramax: /tmp/compile/ > ./pscan www.bintec.de >> bintec.txt
gestartet wird und ein ping auf einem 2. tty :
nick@miramax: /tmp/compile/ > ping www.bintec.de
schmiert der Router ab, spaetestens, wenn die programme beendet werden.
Niklas Schiffler
der source des scanner, gefunden auf rootshell.com:
---------------------------------cut----------------------------------------
/*
* internet port scanner
*
* This program will scan a hosts TCP ports printing all ports that
accept
* connections, and if known, the service name.
* This program can be trivially altered to do UDP ports also.
*
* Kopywrong (K) Aug. 25, '94 pluvius@io.org
*
* To run it do this:
* $ cc -o pscan pscan.c
* $ pscan <host> [max port]
*
*
* Changes:
* Changed fprintf to printf in line 34 to work with my Linux 1.1.18 box
* Netrunner 1/18/95 11:30pm
*
* Changes:
* converts port# to network byte order.
* Therapy 10/29/96 9:00pm
*
*/
static char sccsid[] = "@(#)pscan.c 1.0 (KRAD) 08/25/94";
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#define MAX_PORT 1024 /* scan up to this port */
int s;
struct sockaddr_in addr;
char rmt_host[100];
int skan(port)
int port;
{
int r;
s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
if (s < 0) {
/* fprintf("ERROR: socket() failed\n"); */
/* Changed to printf for my Linux 1.1.18 box */
printf("ERROR: socket() failed\n");
exit(0);
}
addr.sin_family = PF_INET;
addr.sin_port = htons(port);
addr.sin_addr.s_addr = inet_addr(rmt_host);
r = connect(s,(struct sockaddr *) &addr, sizeof(addr));
close(s);
if (r==-1) {
return (1 == 0);
}
return (1 == 1);
}
main(argc,argv)
int argc;
char *argv[];
{
int a,b,c,d,e,f;
struct hostent *foo;
struct servent *bar;
if (argc < 2) {
fprintf(stderr,"usage: %s <host> [highest port]\n",argv[0]);
exit(0);
}
if (sscanf(argv[1],"%d.%d.%d.%d",&a,&b,&c,&d) != 4) {
foo = gethostbyname(argv[1]);
if (foo == NULL) {
fprintf(stderr,"error: cannot resolve host %s\n",argv[1]);
exit(0);
}
sprintf(rmt_host,"%d.%d.%d.%d",(unsigned char
)foo->h_addr_list[0][0],
(unsigned char ) foo->h_addr_list[0][1],
(unsigned char ) foo->h_addr_list[0][2],
(unsigned char ) foo->h_addr_list[0][3]);
} else {
strncpy(rmt_host,argv[1],99);
}
if (argc > 2) {
f = atoi(argv[2]);
} else
f = MAX_PORT;
fprintf(stdout,"Scanning host %s - TCP ports 1 through
%d\n",rmt_host,f);
for (e =1;e<=f;e++) {
char serv[100];
if (skan(e)) {
bar = getservbyport(htons(e),"tcp");
printf("%d (%s) is running.\n",e,(bar == NULL) ? "UNKNOWN" :
bar->s_name);
}
}
}
-------------------------------------cut-----------------------------------
Der Stack dump beim crash:
-------------------------------------cut-----------------------------------
Login:
Login:
Login:
Login:
Login:
Login:
PANIC: MIB release
Stack Trace:
5000089c 00000000 00000006 50261448 50361568 5035f958 90000000 00000002
50000ea4 00000003 50000e90 5001362e 502685a8 50013660 5001362e 00000006
50013660 5001362e 00000006 503646a0 502685bc 5001eb04 50261458 00000000
5001eb04 50261458 00000000 503646a0 502685dc 5001ed14 503646a0 0000002a
5001ed14 503646a0 0000002a 0000011c 5023e0f8 50357e10 00000003 502685f0
5001b43a 5023e0f8 50357e10 00000003 50268600 5000d572 00000000 50357e16
5000d572 00000000 50357e16 5026860c 50001888 002d2500 50268614 50001918
50001888 002d2500 50268614 50001918 5026861c 5000196e 50268630 50001a2e
50001918 5026861c 5000196e 50268630 50001a2e 00000003 00000002 502214f0
5000196e 50268630 50001a2e 00000003 00000002 502214f0 5026867c 500086f8
50001a2e 00000003 00000002 502214f0 5026867c 500086f8 00000000 0000011c
500086f8 00000000 0000011c 00000010 00000002 000003e8 00000001 00000000
50003df0 502214f0 00000002 50357e00 000003e8 5026a614 0000003e 000000c8
500046e6 5026a724 00000002 000003e8 5026873c 50005332 50268748 50268758
50005332 50268748 50268758 ffffffff 501f87c8 00000000 5025689c b0002500
500001c8 5026a614 00000020 5026a724 00000002 000003e8 0000501a 91460080
500eed98 5026a724 00000002 000003e8 5026a780 00000000 00000000 00000000
500eb8ae 00000001 5026a778 5026a780 00000000 00000000 500000d4 00000001
500000d4 00000001 5026a778 5026a780 36eb696e 69740042 4f415244 54595045
system halted
### BIANCA/BRICK-XL - Start-up ###
Starting Display Test : ..... OK
Starting CPU-DRAM Test : [16 MB] ............. OK
Starting DMA-DRAM Test : [16 MB] ............. OK
Starting RTC Test : . OK
Starting Flash Test : .. [639f:6560] OK
Starting MTS Test : ... OK
Starting SCSI Test : . OK
### BIANCA/BRICK-XL (Hardware-Rev. 1.3, Firmware-Rev. 2.1) ###
Press <sp> for boot monitor or any other key to boot system
Booting Image from Flash ROM
Checking image ... OK
Writing image to RAM (Release 4.8.2) .....................
Technical Details
Message-ID:
<6jc3n6$8ed$1@news01.btx.dtag.de>Path:
arc1-ca.pugleaf.net!unknown!not-for-mailShow Full Headers
Complete Article Headers
X-Google-Language: GERMAN,ASCII-7-bit X-Google-Thread: 103e79,efde47b93f6c6d40,start X-Google-Attributes: gid103e79,public X-Google-Thread: fd655,efde47b93f6c6d40,start X-Google-Attributes: gidfd655,public X-Google-Thread: 112b94,efde47b93f6c6d40,start X-Google-Attributes: gid112b94,public From: KULTUS@t-online.de (Niklas Schiffler) Subject: Bug in Firmware von Brick-XL Date: 1998/05/13 Message-ID: <6jc3n6$8ed$1@news01.btx.dtag.de> X-Deja-AN: 353475185 Content-Transfer-Encoding: 7bit X-Sender: 076122799-0001@t-online.de X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 Newsgroups: de.comp.security,de.org.ccc,fido.ger.ccc