[prev in list] [next in list] [prev in thread] [next in thread] 

List:       ntop
Subject:    RE: [Ntop] Suspicious FTP message from ntop
From:       "patrick wong" <mauddib888 () hotmail ! com>
Date:       2002-05-31 14:09:51
Message-ID: LAW2-F89utJLtosJ3Ih00003eff () hotmail ! com
[Download RAW message or body]

<html><div style='background-color:'><DIV>
<P>Hello,</P>
<P class=MsoNormal style="MARGIN: 0in 0in 0pt">I am not to familiar with the gab \
procedure, so please bear with me. Attach is the continuation of the frame and list \
commands from gdb.</P> <P>Thanks, Patrick</P>
<P>[root@localhost root]# cd ~ntopusers<BR>bash: cd: ~ntopusers: No such file or \
directory<BR>[root@localhost root]# cd ~ntopuser<BR>[root@localhost ntopuser]# \
ls<BR>addressCache.db&nbsp; dnsCache.db&nbsp; hostsInfo.db&nbsp; LsWatch.db&nbsp; \
ntop_pw.db&nbsp; prefsCache.db&nbsp; startntop<BR>[root@localhost ntopuser]# gdb \
/usr/local/bin/ntop<BR>GNU gdb Red Hat Linux 7.x (5.0rh-15) (MI_OUT)<BR>Copyright \
2001 Free Software Foundation, Inc.<BR>GDB is free software, covered by the GNU \
General Public License, and you are<BR>welcome to change it and/or distribute copies \
of it under certain conditions.<BR>Type "show copying" to see the \
conditions.<BR>There is absolutely no warranty for GDB.&nbsp; Type "show warranty" \
for details.<BR>This GDB was configured as "i386-redhat-linux"...<BR>(gdb) set args \
-u root -P /home/ntopuser -i eth0 -K<BR>(gdb) run<BR>Starting program: \
/usr/local/bin/ntop -u root -P /home/ntopuser -i eth0 -K<BR>[New Thread 1024 (LWP \
13670)]<BR>Wait please: ntop is c! oming up...<BR>30/May/2002 11:08:45 Initializing \
IP services...<BR>SSL is present but https is disabled: use -W &lt;https port&gt; for \
enabling it<BR>30/May/2002 11:08:45 Initializing GDBM...<BR>30/May/2002 11:08:45 \
Initializing network devices...<BR>30/May/2002 11:08:45 ntop v.2.0.99 MT (SSL) \
[i686-pc-linux-gnu] (05/30/02 09:39:29 AM build)<BR>30/May/2002 11:08:45 Listening on \
[eth0]<BR>30/May/2002 11:08:45 Copyright 1998-2002 by Luca Deri &lt;<A \
href="mailto:deri@ntop.org">deri@ntop.org</A>&gt;<BR>30/May/2002 11:08:45 Get the \
freshest ntop from <A \
href="http://www.ntop.org/">http://www.ntop.org/</A><BR>30/May/2002 11:08:45 \
Initializing...<BR>30/May/2002 11:08:45 Truncated network size to 1024 hosts (real \
netmask 255.255.0.0)<BR>30/May/2002 11:08:45 Loading plugins (if \
any)...<BR>30/May/2002 11:08:45 Searching plugins in \
/usr/local/lib/ntop/plugins<BR>30/May/2002 11:08:47 Welcome to icmpWatchPlugin. (C) \
1999 by Luca Deri.<BR>30/May/2002 11:08:48 Welcome to LastSeenWatchPlug! in. (C) 1999 \
by Andrea Marangoni.<BR>30/May/2002 11:08:50 Welcome to NetFlow. (C) 2002 by Luca \
Deri.<BR>30/May/2002 11:08:53 Welcome to nfsWatchPlugin. (C) 1999 by Luca \
Deri.<BR>30/May/2002 11:08:55 Welcome to PDAPlugin. (C) 2001-2002 by L.Deri and \
W.Brock<BR>30/May/2002 11:08:57 Welcome to sFlowPlugin. (C) 2002 by Luca \
Deri.<BR>30/May/2002 11:08:57 Resetting traffic statistics...<BR>[New Thread 2049 \
(LWP 13678)]<BR>[New Thread 1026 (LWP 13679)]<BR>30/May/2002 11:08:58 Started thread \
(1026) for network packet analyser.<BR>[New Thread 2051 (LWP 13680)]<BR>30/May/2002 \
11:08:58 Started thread (2051) for idle hosts detection.<BR>[New Thread 3076 (LWP \
13681)]<BR>30/May/2002 11:08:59 Started thread (3076) for DNS address \
resolution.<BR>[New Thread 4101 (LWP 13682)]<BR>30/May/2002 11:08:59 Started thread \
(4101) for address purge.<BR>30/May/2002 11:08:59 Initializing plugins (if \
any)...<BR>30/May/2002 11:08:59 NetFlow export disabled<BR>30/May/2002 11:08:59 \
Waiting for HTTP connecti! ons on port 3000...<BR>[New Thread 5126 (LWP \
13683)]<BR>30/May/2002 11:08:59 Started thread (5126) for web server.<BR>30/May/2002 \
11:08:59 Sniffying...<BR>[New Thread 6151 (LWP 13684)]<BR>30/May/2002 11:08:59 \
Extending hash size [newSize=512][deviceId=0]<BR>30/May/2002 11:09:00 Started thread \
(6151) for network packet sniffing on eth0.<BR>30/May/2002 11:09:24 Extending hash \
size [newSize=1024][deviceId=0]<BR>30/May/2002 11:10:04 Extending hash size \
[newSize=2048][deviceId=0]<BR>30/May/2002 11:11:34 Extending hash size \
[newSize=4096][deviceId=0]<BR>30/May/2002 11:14:34 Extending hash size \
[newSize=8192][deviceId=0]</P> <P>Program received signal SIGSEGV, Segmentation \
fault.<BR>[Switching to Thread 2051 (LWP 13680)]<BR>0x4055ee9c in chunk_free \
(ar_ptr=0x40612620, p=0x8793968) at malloc.c:3228<BR>3228&nbsp;&nbsp;&nbsp; malloc.c: \
No such file or directory.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; in \
malloc.c<BR>(gdb)<BR>(gdb)<BR>(gdb) info stack<BR>#0&nbsp; 0x4055ee9c in chunk_free \
(ar_ptr=0x40612620, p=0x8793968) at malloc.c:3228<BR>#1&nbsp; 0x4055ebf4 in \
__libc_free (mem=0x8793970) at malloc.c:3154<BR>#2&nbsp; 0x40284c55 in ntop_safefree \
(ptr=0x41ad29dc, file=0x402a55b9 "sessions.c", line=246) at leaks.c:485<BR>#3&nbsp; \
0x402905cf in freeSession (sessionToPurge=0x8793970, actualDeviceId=0, \
allocateMemoryIfNeeded=1 '\001')<BR>&nbsp;&nbsp;&nbsp; at sessions.c:246<BR>#4&nbsp; \
0x40290784 in scanTimedoutTCPSessions (actualDeviceId=0) at \
sessions.c:310<BR>#5&nbsp; 0x4028107e in purgeIdleHosts (actDevice=0) at \
hash.c:471<BR>#6&nbsp; 0x40286909 in scanIdleLoop (notUsed=0x0) at ntop.c:619<BR>#7! \
&nbsp; 0x4022fb9c in pthread_start_thread (arg=0x41ad2be0) at \
manager.c:274<BR>#8&nbsp; 0x4022fc7f in pthread_start_thread_event (arg=0x41ad2be0) \
at manager.c:298<BR>(gdb) frame<BR>#0&nbsp; 0x4055ee9c in chunk_free \
(ar_ptr=0x40612620, p=0x8793968) at malloc.c:3228<BR>3228&nbsp;&nbsp;&nbsp; in \
malloc.c<BR>(gdb) list<BR>3223&nbsp;&nbsp;&nbsp; in malloc.c<BR>(gdb) print \
ar_ptr<BR>$1 = (arena *) 0x40612620<BR>(gdb) print p<BR>$2 = 0x8793968<BR>(gdb)<BR>$3 \
= 0x8793968<BR>(gdb)<BR>$4 = 0x8793968<BR>(gdb)<BR>$5 = 0x8793968<BR>(gdb)<BR>$6 = \
0x8793968<BR>(gdb)<BR>$7 = 0x8793968<BR>(gdb)<BR>$8 = 0x8793968<BR>(gdb)<BR>$9 = \
0x8793968<BR>(gdb) list<BR>3223&nbsp;&nbsp;&nbsp; in malloc.c<BR>(gdb) info \
stack<BR>#0&nbsp; 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at \
malloc.c:3228<BR>#1&nbsp; 0x4055ebf4 in __libc_free (mem=0x8793970) at \
malloc.c:3154<BR>#2&nbsp; 0x40284c55 in ntop_safefree (ptr=0x41ad29dc, \
file=0x402a55b9 "sessions.c", line=246) at leaks.c:485<BR>#3&nbsp; 0x402! 905cf in \
freeSession (sessionToPurge=0x8793970, actualDeviceId=0, allocateMemoryIfNeeded=1 \
'\001')<BR>&nbsp;&nbsp;&nbsp; at sessions.c:246<BR>#4&nbsp; 0x40290784 in \
scanTimedoutTCPSessions (actualDeviceId=0) at sessions.c:310<BR>#5&nbsp; 0x4028107e \
in purgeIdleHosts (actDevice=0) at hash.c:471<BR>#6&nbsp; 0x40286909 in scanIdleLoop \
(notUsed=0x0) at ntop.c:619<BR>#7&nbsp; 0x4022fb9c in pthread_start_thread \
(arg=0x41ad2be0) at manager.c:274<BR>#8&nbsp; 0x4022fc7f in \
pthread_start_thread_event (arg=0x41ad2be0) at manager.c:298<BR>(gdb) print \
ar_ptr<BR>$10 = (arena *) 0x40612620<BR>(gdb) print p<BR>$11 = 0x8793968<BR>(gdb) \
frame<BR>#0&nbsp; 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at \
malloc.c:3228<BR>3228&nbsp;&nbsp;&nbsp; in malloc.c<BR>(gdb) info stack<BR>#0&nbsp; \
0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at \
malloc.c:3228<BR>#1&nbsp; 0x4055ebf4 in __libc_free (mem=0x8793970) at \
malloc.c:3154<BR>#2&nbsp; 0x40284c55 in ntop_safefree (ptr=0x41ad29! dc, \
file=0x402a55b9 "sessions.c", line=246) at leaks.c:485<BR>#3&nbsp; 0x402905cf in \
freeSession (sessionToPurge=0x8793970, actualDeviceId=0, allocateMemoryIfNeeded=1 \
'\001')<BR>&nbsp;&nbsp;&nbsp; at sessions.c:246<BR>#4&nbsp; 0x40290784 in \
scanTimedoutTCPSessions (actualDeviceId=0) at sessions.c:310<BR>#5&nbsp; 0x4028107e \
in purgeIdleHosts (actDevice=0) at hash.c:471<BR>#6&nbsp; 0x40286909 in scanIdleLoop \
(notUsed=0x0) at ntop.c:619<BR>#7&nbsp; 0x4022fb9c in pthread_start_thread \
(arg=0x41ad2be0) at manager.c:274<BR>#8&nbsp; 0x4022fc7f in \
pthread_start_thread_event (arg=0x41ad2be0) at manager.c:298<BR>(gdb) frame \
3<BR>#3&nbsp; 0x402905cf in freeSession (sessionToPurge=0x8793970, actualDeviceId=0, \
allocateMemoryIfNeeded=1 '\001')<BR>&nbsp;&nbsp;&nbsp; at \
sessions.c:246<BR>246&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; free(sessionToPurge); /* No \
inner pointers to free */<BR>(gdb) \
list<BR>241&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nb!
 sp;&nbsp;&nbsp;&nbsp; _intoa(sessionToPurge-&gt;remotePeerRealIp, buf1, \
sizeof(buf1)), sessionToPurge-&gt;dport,<BR>242&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
sessionToPurge-&gt;lastSeen,&nbsp; \
myGlobals.device[actualDeviceId].numTcpSessions);<BR>243&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
}<BR>244&nbsp;&nbsp;&nbsp;&nbsp; \
#endif<BR>245<BR>246&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; free(sessionToPurge); /* No \
inner pointers to free */<BR>247&nbsp;&nbsp;&nbsp;&nbsp; \
}<BR>248<BR>249&nbsp;&nbsp;&nbsp;&nbsp; /* ************************************ \
*/<BR>250<BR>(gdb) print sessionToPurge<BR>$12 = (IPSession *) 0x8793970<BR>(gdb) \
print *sessionToPurge<BR>$13 = {magic = 0, initiatorIdx = 2, initiatorRealIp = \
{s_addr = 2887190290}, sport = 4260, remotePeerIdx = 43,<BR>&nbsp; remotePeerRealIp = \
{s_addr = 3507473923}, dport = 80, firstSeen = 1022771354, lastSeen = 1022771359, \
pktSent = 5,<BR>&nbsp; pktRcvd = 0, bytesSe! nt = 590, bytesRcvd = 0, bytesProtoSent \
= 382, bytesProtoRcvd = 0, bytesFragmentedSent = 0,<BR>&nbsp; bytesFragmentedRcvd = \
0, minWindow = 64, maxWindow = 55359, nwLatency = {tv_sec = 0, tv_usec = 0}, numFin = \
1,<BR>&nbsp; numFinAcked = 0, lastAckIdI2R = 1464555384, lastAckIdR2I = 0, \
numDuplicatedAckI2R = 0, numDuplicatedAckR2I = 0,<BR>&nbsp; bytesRetranI2R = 0, \
bytesRetranR2I = 0, finId = {3907093120, 0, 0, 0}, lastFlags = 17, lastCSAck = 0, \
lastSCAck = 0,<BR>&nbsp; lastCSFin = 3907093120, lastSCFin = 0, \
lastInitiator2RemFlags = "\000\000\000", lastRem2InitiatorFlags = \
"\000\000\000",<BR>&nbsp; sessionState = 3 '\003', passiveFtpSession = 0 '\000', next \
= 0x0}<BR>(gdb)<BR>$14 = {magic = 0, initiatorIdx = 2, initiatorRealIp = {s_addr = \
2887190290}, sport = 4260, remotePeerIdx = 43,<BR>&nbsp; remotePeerRealIp = {s_addr = \
3507473923}, dport = 80, firstSeen = 1022771354, lastSeen = 1022771359, pktSent = \
5,<BR>&nbsp; pktRcvd = 0, bytesSent = 590, bytesRcvd = 0, bytesProtoSent = ! 382, \
bytesProtoRcvd = 0, bytesFragmentedSent = 0,<BR>&nbsp; bytesFragmentedRcvd = 0, \
minWindow = 64, maxWindow = 55359, nwLatency = {tv_sec = 0, tv_usec = 0}, numFin = \
1,<BR>&nbsp; numFinAcked = 0, lastAckIdI2R = 1464555384, lastAckIdR2I = 0, \
numDuplicatedAckI2R = 0, numDuplicatedAckR2I = 0,<BR>&nbsp; bytesRetranI2R = 0, \
bytesRetranR2I = 0, finId = {3907093120, 0, 0, 0}, lastFlags = 17, lastCSAck = 0, \
lastSCAck = 0,<BR>&nbsp; lastCSFin = 3907093120, lastSCFin = 0, \
lastInitiator2RemFlags = "\000\000\000", lastRem2InitiatorFlags = \
"\000\000\000",<BR>&nbsp; sessionState = 3 '\003', passiveFtpSession = 0 '\000', next \
= 0x0}<BR>(gdb)<BR>$15 = {magic = 0, initiatorIdx = 2, initiatorRealIp = {s_addr = \
2887190290}, sport = 4260, remotePeerIdx = 43,<BR>&nbsp; remotePeerRealIp = {s_addr = \
3507473923}, dport = 80, firstSeen = 1022771354, lastSeen = 1022771359, pktSent = \
5,<BR>&nbsp; pktRcvd = 0, bytesSent = 590, bytesRcvd = 0, bytesProtoSent = 382, \
bytesProtoRcvd = 0, bytesFragmentedSe! nt = 0,<BR>&nbsp; bytesFragmentedRcvd = 0, \
minWindow = 64, maxWindow = 55359, nwLatency = {tv_sec = 0, tv_usec = 0}, numFin = \
1,<BR>&nbsp; numFinAcked = 0, lastAckIdI2R = 1464555384, lastAckIdR2I = 0, \
numDuplicatedAckI2R = 0, numDuplicatedAckR2I = 0,<BR>&nbsp; bytesRetranI2R = 0, \
bytesRetranR2I = 0, finId = {3907093120, 0, 0, 0}, lastFlags = 17, lastCSAck = 0, \
lastSCAck = 0,<BR>&nbsp; lastCSFin = 3907093120, lastSCFin = 0, \
lastInitiator2RemFlags = "\000\000\000", lastRem2InitiatorFlags = \
"\000\000\000",<BR>&nbsp; sessionState = 3 '\003', passiveFtpSession = 0 '\000', next \
= 0x0}<BR>(gdb)<BR>$16 = {magic = 0, initiatorIdx = 2, initiatorRealIp = {s_addr = \
2887190290}, sport = 4260, remotePeerIdx = 43,<BR>&nbsp; remotePeerRealIp = {s_addr = \
3507473923}, dport = 80, firstSeen = 1022771354, lastSeen = 1022771359, pktSent = \
5,<BR>&nbsp; pktRcvd = 0, bytesSent = 590, bytesRcvd = 0, bytesProtoSent = 382, \
bytesProtoRcvd = 0, bytesFragmentedSent = 0,<BR>&nbsp; bytesFragmentedRcvd = 0,!  \
minWindow = 64, maxWindow = 55359, nwLatency = {tv_sec = 0, tv_usec = 0}, numFin = \
1,<BR>&nbsp; numFinAcked = 0, lastAckIdI2R = 1464555384, lastAckIdR2I = 0, \
numDuplicatedAckI2R = 0, numDuplicatedAckR2I = 0,<BR>&nbsp; bytesRetranI2R = 0, \
bytesRetranR2I = 0, finId = {3907093120, 0, 0, 0}, lastFlags = 17, lastCSAck = 0, \
lastSCAck = 0,<BR>&nbsp; lastCSFin = 3907093120, lastSCFin = 0, \
lastInitiator2RemFlags = "\000\000\000", lastRem2InitiatorFlags = \
"\000\000\000",<BR>&nbsp; sessionState = 3 '\003', passiveFtpSession = 0 '\000', next \
= 0x0}<BR>(gdb)<BR>$17 = {magic = 0, initiatorIdx = 2, initiatorRealIp = {s_addr = \
2887190290}, sport = 4260, remotePeerIdx = 43,<BR>&nbsp; remotePeerRealIp = {s_addr = \
3507473923}, dport = 80, firstSeen = 1022771354, lastSeen = 1022771359, pktSent = \
5,<BR>&nbsp; pktRcvd = 0, bytesSent = 590, bytesRcvd = 0, bytesProtoSent = 382, \
bytesProtoRcvd = 0, bytesFragmentedSent = 0,<BR>&nbsp; bytesFragmentedRcvd = 0, \
minWindow = 64, maxWindow = 55359, nwLate! ncy = {tv_sec = 0, tv_usec = 0}, numFin = \
1,<BR>&nbsp; numFinAcked = 0, lastAckIdI2R = 1464555384, lastAckIdR2I = 0, \
numDuplicatedAckI2R = 0, numDuplicatedAckR2I = 0,<BR>&nbsp; bytesRetranI2R = 0, \
bytesRetranR2I = 0, finId = {3907093120, 0, 0, 0}, lastFlags = 17, lastCSAck = 0, \
lastSCAck = 0,<BR>&nbsp; lastCSFin = 3907093120, lastSCFin = 0, \
lastInitiator2RemFlags = "\000\000\000", lastRem2InitiatorFlags = \
"\000\000\000",<BR>&nbsp; sessionState = 3 '\003', passiveFtpSession = 0 '\000', next \
= 0x0}<BR>(gdb) frame 4<BR>#4&nbsp; 0x40290784 in scanTimedoutTCPSessions \
(actualDeviceId=0) at \
sessions.c:310<BR>310&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
freeSession(thisSession, actualDeviceId, 1);<BR>(gdb) print thisSession<BR>$18 = \
(IPSession *) 0x8793970<BR>(gdb) print *thisSession<BR>$19 = {magic = 0, initiatorIdx \
= 2, initiatorRealIp = {s_addr = 2887190290}, sport = 4260, remotePeerIdx = \
43,<BR>&nbsp; remotePeerRealIp = {s_addr = 3507473923}, dport!  = 80, firstSeen = \
1022771354, lastSeen = 1022771359, pktSent = 5,<BR>&nbsp; pktRcvd = 0, bytesSent = \
590, bytesRcvd = 0, bytesProtoSent = 382, bytesProtoRcvd = 0, bytesFragmentedSent = \
0,<BR>&nbsp; bytesFragmentedRcvd = 0, minWindow = 64, maxWindow = 55359, nwLatency = \
{tv_sec = 0, tv_usec = 0}, numFin = 1,<BR>&nbsp; numFinAcked = 0, lastAckIdI2R = \
1464555384, lastAckIdR2I = 0, numDuplicatedAckI2R = 0, numDuplicatedAckR2I = \
0,<BR>&nbsp; bytesRetranI2R = 0, bytesRetranR2I = 0, finId = {3907093120, 0, 0, 0}, \
lastFlags = 17, lastCSAck = 0, lastSCAck = 0,<BR>&nbsp; lastCSFin = 3907093120, \
lastSCFin = 0, lastInitiator2RemFlags = "\000\000\000", lastRem2InitiatorFlags = \
"\000\000\000",<BR>&nbsp; sessionState = 3 '\003', passiveFtpSession = 0 '\000', next \
= 0x0}<BR>(gdb) frame 5<BR>#5&nbsp; 0x4028107e in purgeIdleHosts (actDevice=0) at \
hash.c:471<BR>471&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
scanTimedoutTCPSessions(actDevice); /* let's check timedout sessions too */<BR>(gdb) \
print ac! tDevice<BR>$20 = 0<BR>(gdb) print *actDevice<BR>Cannot access memory at \
address 0x0<BR>(gdb) frame 6<BR>#6&nbsp; 0x40286909 in scanIdleLoop (notUsed=0x0) at \
ntop.c:619<BR>619&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
purgeIdleHosts(i);<BR>(gdb) print i<BR>$21 = 0<BR>(gdb) print *i<BR>Cannot access \
memory at address 0x0<BR>(gdb) frame 7<BR>#7&nbsp; 0x4022fb9c in pthread_start_thread \
(arg=0x41ad2be0) at manager.c:274<BR>274&nbsp;&nbsp;&nbsp;&nbsp; manager.c: No such \
file or directory.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; in \
manager.c<BR>(gdb) frame 8<BR>#8&nbsp; 0x4022fc7f in pthread_start_thread_event \
(arg=0x41ad2be0) at manager.c:298<BR>298&nbsp;&nbsp;&nbsp;&nbsp; in \
manager.c<BR>(gdb) list<BR>293&nbsp;&nbsp;&nbsp;&nbsp; in manager.c<BR>(gdb) info \
stack<BR>#0&nbsp; 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at \
malloc.c:3228<BR>#1&nbsp; 0x4055ebf4 in __libc_free (mem=0x8793970) at \
malloc.c:3154<BR>#2&nbsp; 0x40284c55 in nt! op_safefree (ptr=0x41ad29dc, \
file=0x402a55b9 "sessions.c", line=246) at leaks.c:485<BR>#3&nbsp; 0x402905cf in \
freeSession (sessionToPurge=0x8793970, actualDeviceId=0, allocateMemoryIfNeeded=1 \
'\001')<BR>&nbsp;&nbsp;&nbsp; at sessions.c:246<BR>#4&nbsp; 0x40290784 in \
<BR>(gdb) frame 1<BR>#1&nbsp; 0x4055ebf4 in __libc_free (mem=0x8793970) at \
malloc.c:3154<BR>3154&nbsp;&nbsp;&nbsp; malloc.c: No such file or \
directory.<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; in malloc.c<BR>(gdb) frame \
0<BR>#0&nbsp; 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at \
malloc.c:3228<BR>3228&nbsp;&nbsp;&nbsp; in malloc.c<BR>(gdb) print at_ptr<BR>No \
symbol "at_ptr" in current context.<BR>(gdb) print ar_pt<BR>No symbol "ar_pt" in \
current context.<BR>(gdb) print ar_ptr<BR>$24 = (arena *) 0x40612620<BR>(gdb) print \
*ar_ptr<BR>$25 = {av = {0x0, 0xff0717ff, 0xad237d8, 0x40612620, 0x88d9150, 0x88d9150, \
0x8411070, 0x8461238, 0x8ba40d0, 0x8ba40d0,<BR>&nbsp;&nbsp;&nbsp; 0x87b73a0, \
0x8410ff0, 0x8a99df8, 0xaa05c10, 0x89600e8, 0x8a90c58, 0x40612658, 0x40612658, \
0x40612660, 0x40612660,<BR>&nbsp;&nbsp;&nbsp; 0x40612668, 0x40612668, 0x8483790, \
0x8866008, 0x40612678, 0x40612678, 0x87cbbd8, 0x87cbbd8, 0x87d6c70, \
0x8bc9948,<BR>&nbsp;&nbsp;&nbsp; 0x846f0c8, 0x8457e10! , 0x87dd370, 0x87dd370, \
0x406126a0, 0x406126a0, 0x406126a8, 0x406126a8, 0x868d1a8, \
0x868d1a8,<BR>&nbsp;&nbsp;&nbsp; 0x406126b8, 0x406126b8, 0x8875608, 0x841e778, \
0x406126c8, 0x406126c8, 0x406126d0, 0x406126d0, 0x8b377b0, \
0x887a510,<BR>&nbsp;&nbsp;&nbsp; 0x8962b28, 0x8962b28, 0x86785b0, 0xa8ff8c0, \
0xad236a0, 0xad236a0, 0x406126f8, 0x406126f8, 0x868d0b0, \
0x868d0b0,<BR>&nbsp;&nbsp;&nbsp; 0x87ed6a0, 0x8ba81a8, 0x40612710, 0x40612710, \
0x40612718, 0x40612718, 0x40612720, 0x40612720, 0x40612728, \
0x40612728,<BR>&nbsp;&nbsp;&nbsp; 0x40612730, 0x40612730, 0x40612738, 0x40612738, \
0x40612740, 0x40612740, 0x40612748, 0x40612748, 0x83f5368, \
0x83f5368,<BR>&nbsp;&nbsp;&nbsp; 0x40612758, 0x40612758, 0x40612760, 0x40612760, \
0x40612768, 0x40612768, 0x885e828, 0x847c9e0, 0x40612778, \
0x40612778,<BR>&nbsp;&nbsp;&nbsp; 0x40612780, 0x40612780, 0x40612788, 0x40612788, \
0x40612790, 0x40612790, 0x40612798, 0x40612798, 0x406127a0,<BR>&nbsp;&nbsp;&nbsp; \
0x406127a0, 0x406127a8, 0x406127a8, 0x862de30, 0x84! 0cbc0, 0x406127b8, 0x406127b8, \
0x406127c0, 0x406127c0, 0x406127c8,<BR>&nbsp;&nbsp;&nbsp; 0x406127c8, 0x406127d0, \
0x406127d0, 0x406127d8, 0x406127d8, 0x406127e0, 0x406127e0, 0x406127e8, \
0x406127e8,<BR>&nbsp;&nbsp;&nbsp; 0x406127f0, 0x406127f0, 0x406127f8, 0x406127f8, \
0x40612800, 0x40612800, 0x40612808, 0x40612808, 0x40612810,<BR>&nbsp;&nbsp;&nbsp; \
0x40612810, 0x40612818, 0x40612818, 0x87d69b0, 0x87d69b0, 0x83f5010, 0x83f5010, \
0x40612830, 0x40612830, 0x8236530,<BR>&nbsp;&nbsp;&nbsp; 0x8236530, 0x40612840, \
0x40612840, 0x40612848, 0x40612848, 0x40612850, 0x40612850, 0x40612858, 0x40612858, \
0x8b47ae0,<BR>&nbsp;&nbsp;&nbsp; 0x8b47ae0, 0x40612868, 0x40612868, 0x40612870, \
0x40612870, 0x40612878, 0x40612878, 0x40612880, 0x40612880, \
0x40612888,<BR>&nbsp;&nbsp;&nbsp; 0x40612888, 0x40612890, 0x40612890, 0x40612898, \
0x40612898, 0x406128a0, 0x406128a0, 0x406128a8, 0x406128a8,<BR>&nbsp;&nbsp;&nbsp; \
0x406128b0, 0x406128b0, 0x406128b8, 0x406128b8, 0x406128c0, 0x406128c0, 0x406128c8, \
0x406128! c8, 0x406128d0,<BR>&nbsp;&nbsp;&nbsp; 0x406128d0, 0x406128d8, 0x406128d8, \
0x406128e0, 0x406128e0, 0x406128e8, 0x406128e8, 0x406128f0, \
0x406128f0,<BR>&nbsp;&nbsp;&nbsp; 0x406128f8, 0x406128f8, 0x40612900, 0x40612900, \
0x40612908, 0x40612908, 0x40612910, 0x40612910, 0x40612918,<BR>&nbsp;&nbsp;&nbsp; \
0x40612918, 0x40612920, 0x40612920, 0x8b481b8, 0x8b481b8, 0x8479f18, 0x8b342d0...}, \
next = 0x40612620,<BR>&nbsp; size = 45112412, mutex = {__m_reserved = 0, __m_count = \
0, __m_owner = 0x0, __m_kind = 0, __m_lock = {__status = \
1,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __spinlock = 0}}}<BR>(gdb)<BR>$26 = {av = {0x0, \
0xff0717ff, 0xad237d8, 0x40612620, 0x88d9150, 0x88d9150, 0x8411070, 0x8461238, \
0x8ba40d0, 0x8ba40d0,<BR>&nbsp;&nbsp;&nbsp; 0x87b73a0, 0x8410ff0, 0x8a99df8, \
0xaa05c10, 0x89600e8, 0x8a90c58, 0x40612658, 0x40612658, 0x40612660, \
0x40612660,<BR>&nbsp;&nbsp;&nbsp; 0x40612668, 0x40612668, 0x8483790, 0x8866008, \
0x40612678, 0x40612678, 0x87cbbd8, 0x87cbbd8, 0x87d6c70, 0x8bc9948,<BR>&nbs! \
p;&nbsp;&nbsp; 0x846f0c8, 0x8457e10, 0x87dd370, 0x87dd370, 0x406126a0, 0x406126a0, \
0x406126a8, 0x406126a8, 0x868d1a8, 0x868d1a8,<BR>&nbsp;&nbsp;&nbsp; 0x406126b8, \
0x406126b8, 0x8875608, 0x841e778, 0x406126c8, 0x406126c8, 0x406126d0, 0x406126d0, \
0x8b377b0, 0x887a510,<BR>&nbsp;&nbsp;&nbsp; 0x8962b28, 0x8962b28, 0x86785b0, \
0xa8ff8c0, 0xad236a0, 0xad236a0, 0x406126f8, 0x406126f8, 0x868d0b0, \
0x868d0b0,<BR>&nbsp;&nbsp;&nbsp; 0x87ed6a0, 0x8ba81a8, 0x40612710, 0x40612710, \
0x40612718, 0x40612718, 0x40612720, 0x40612720, 0x40612728, \
0x40612728,<BR>&nbsp;&nbsp;&nbsp; 0x40612730, 0x40612730, 0x40612738, 0x40612738, \
0x40612740, 0x40612740, 0x40612748, 0x40612748, 0x83f5368, \
0x83f5368,<BR>&nbsp;&nbsp;&nbsp; 0x40612758, 0x40612758, 0x40612760, 0x40612760, \
0x40612768, 0x40612768, 0x885e828, 0x847c9e0, 0x40612778, \
0x40612778,<BR>&nbsp;&nbsp;&nbsp; 0x40612780, 0x40612780, 0x40612788, 0x40612788, \
0x40612790, 0x40612790, 0x40612798, 0x40612798, 0x406127a0,<BR>&nbsp;&nbsp;&nbsp; \
0x406127a0, 0x40! 6127a8, 0x406127a8, 0x862de30, 0x840cbc0, 0x406127b8, 0x406127b8, \
0x406127c0, 0x406127c0, 0x406127c8,<BR>&nbsp;&nbsp;&nbsp; 0x406127c8, 0x406127d0, \
0x406127d0, 0x406127d8, 0x406127d8, 0x406127e0, 0x406127e0, 0x406127e8, \
0x406127e8,<BR>&nbsp;&nbsp;&nbsp; 0x406127f0, 0x406127f0, 0x406127f8, 0x406127f8, \
0x40612800, 0x40612800, 0x40612808, 0x40612808, 0x40612810,<BR>&nbsp;&nbsp;&nbsp; \
0x40612810, 0x40612818, 0x40612818, 0x87d69b0, 0x87d69b0, 0x83f5010, 0x83f5010, \
0x40612830, 0x40612830, 0x8236530,<BR>&nbsp;&nbsp;&nbsp; 0x8236530, 0x40612840, \
0x40612840, 0x40612848, 0x40612848, 0x40612850, 0x40612850, 0x40612858, 0x40612858, \
0x8b47ae0,<BR>&nbsp;&nbsp;&nbsp; 0x8b47ae0, 0x40612868, 0x40612868, 0x40612870, \
0x40612870, 0x40612878, 0x40612878, 0x40612880, 0x40612880, \
0x40612888,<BR>&nbsp;&nbsp;&nbsp; 0x40612888, 0x40612890, 0x40612890, 0x40612898, \
0x40612898, 0x406128a0, 0x406128a0, 0x406128a8, 0x406128a8,<BR>&nbsp;&nbsp;&nbsp; \
0x406128b0, 0x406128b0, 0x406128b8, 0x406128b8, 0x406128c! 0, 0x406128c0, 0x406128c8, \
0x406128c8, 0x406128d0,<BR>&nbsp;&nbsp;&nbsp; 0x406128d0, 0x406128d8, 0x406128d8, \
0x406128e0, 0x406128e0, 0x406128e8, 0x406128e8, 0x406128f0, \
0x406128f0,<BR>&nbsp;&nbsp;&nbsp; 0x406128f8, 0x406128f8, 0x40612900, 0x40612900, \
0x40612908, 0x40612908, 0x40612910, 0x40612910, 0x40612918,<BR>&nbsp;&nbsp;&nbsp; \
0x40612918, 0x40612920, 0x40612920, 0x8b481b8, 0x8b481b8, 0x8479f18, 0x8b342d0...}, \
next = 0x40612620,<BR>&nbsp; size = 45112412, mutex = {__m_reserved = 0, __m_count = \
0, __m_owner = 0x0, __m_kind = 0, __m_lock = {__status = \
1,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; __spinlock = 0}}}<BR>(gdb) print p<BR>$27 = \
0x8793968<BR>(gdb) print *p<BR>$28 = {prev_size = 0, size = 200, fd = 0x0, bk = \
0x2}<BR>(gdb)<BR>(gdb) frame 4<BR>#4&nbsp; 0x40290784 in scanTimedoutTCPSessions \
(actualDeviceId=0) at \
sessions.c:310<BR>310&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
freeSession(thisSession, actualDeviceId, 1);<BR>(gdb) print actualDevice! Id<BR>$29 = \
0<BR>(gdb) print actualDeviceId<BR>$30 = 0<BR>(gdb) print *actualDeviceId<BR>Cannot \
access memory at address 0x0<BR><BR><BR></P></DIV> <DIV></DIV>
<DIV></DIV>&gt;From: "Burton M. Strauss III" <BURTON@NTOPSUPPORT.COM>
<DIV></DIV>&gt;To: <NTOP@UNIPI.IT>
<DIV></DIV>&gt;CC: <MAUDDIB888@HOTMAIL.COM>
<DIV></DIV>&gt;Subject: RE: [Ntop] Suspicious FTP message from ntop 
<DIV></DIV>&gt;Date: Thu, 30 May 2002 16:00:47 -0500 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;Nope, you've mostly missed the point of my instructions... 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;you use the frame command in gdb to set which stack frame is "current" \
so  <DIV></DIV>&gt;that commands like list and print work in THAT context... the \
default is  <DIV></DIV>&gt;frame 0, where the failure occurred, and that's deep into \
malloc.c  <DIV></DIV>&gt; 
<DIV></DIV>&gt;You begin to get the point with this: 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;(gdb) print ar_ptr 
<DIV></DIV>&gt;$10 = (arena *) 0x40612620 
<DIV></DIV>&gt;(gdb) print p 
<DIV></DIV>&gt;$11 = 0x8793968 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;But they're variables deep in malloc.c and a) I don't have the source \
and b)  <DIV></DIV>&gt;don't care - I know what's wrong - it's trying to free \
something that wasn't  <DIV></DIV>&gt;allocated. What I don't know is what &amp; why \
- and that's what locked up in  <DIV></DIV>&gt;the scanTimedoutTCPSessions() and \
freeSession() variables...  <DIV></DIV>&gt; 
<DIV></DIV>&gt;Basically, what you have to do is to follow the code and print what \
seems to  <DIV></DIV>&gt;be related... 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;(gdb) info stack 
<DIV></DIV>&gt;#0 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at 
<DIV></DIV>&gt;malloc.c:3228 
<DIV></DIV>&gt;#1 0x4055ebf4 in __libc_free (mem=0x8793970) at malloc.c:3154 
<DIV></DIV>&gt;#2 0x40284c55 in ntop_safefree (ptr=0x41ad29dc, file=0x402a55b9 
<DIV></DIV>&gt;"sessions.c", line=246) at leaks.c:485 
<DIV></DIV>&gt;#3 0x402905cf in freeSession (sessionToPurge=0x8793970, \
actualDeviceId=0,  <DIV></DIV>&gt;allocateMemoryIfNeeded=1 '\001') 
<DIV></DIV>&gt; at sessions.c:246 
<DIV></DIV>&gt;#4 0x40290784 in scanTimedoutTCPSessions (actualDeviceId=0) at 
<DIV></DIV>&gt;sessions.c:310 
<DIV></DIV>&gt;#5 0x4028107e in purgeIdleHosts (actDevice=0) at hash.c:471 
<DIV></DIV>&gt;#6 0x40286909 in scanIdleLoop (notUsed=0x0) at ntop.c:619 
<DIV></DIV>&gt;#7! 0x4022fb9c in pthread_start_thread (arg=0x41ad2be0) at \
manager.c:274  <DIV></DIV>&gt;#8 0x4022fc7f in pthread_start_thread_event \
(arg=0x41ad2be0) at  <DIV></DIV>&gt;manager.c:298 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;So reversing this gives us: 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;scanIdleLoop() at ntop.c:619, invokes 
<DIV></DIV>&gt; purgeIdleHosts (actDevice=0) at hash.c:471, invokes 
<DIV></DIV>&gt; scanTimedoutTCPSessions (actualDeviceId=0) at sessions.c:310, 
<DIV></DIV>&gt;invokes 
<DIV></DIV>&gt; freeSession (sessionToPurge=0x8793970, actualDeviceId=0, 
<DIV></DIV>&gt;allocateMemoryIfNeeded=1 '\001') 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;OK? Follow me so far? 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;sure enough, 310 in sessions.c is 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; freeSession(thisSession, actualDeviceId, 1); 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;thisSession (called sessionToPurge in freeSession()) is defined as 
<DIV></DIV>&gt;"IPSession *". So one question is what's in that session... (it's \
defined  <DIV></DIV>&gt;in ntop.h, 1480-&gt;1516) 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;What you should do is 
<DIV></DIV>&gt;(gdb) frame 3 
<DIV></DIV>&gt;(gdb) list 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;this will now show you the code in for the call to free() in \
freeSession()  <DIV></DIV>&gt;in sessions.c 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;then do 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;(gdb) print sessionToPurge 
<DIV></DIV>&gt;(gdb) print *sessionToPurge 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;This should give us the contents of the IPSession variable that's \
being  <DIV></DIV>&gt;purged... 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;then do 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;(gdb) frame 4 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;which makes the current frame the one in scanTimedoutTCPSessions, and \
again  <DIV></DIV>&gt;you can list and print variable values... 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;-----Burton 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;-----Original Message----- 
<DIV></DIV>&gt;From: ntop-admin@unipi.it [mailto:ntop-admin@unipi.it]On Behalf Of \
patrick  <DIV></DIV>&gt;wong 
<DIV></DIV>&gt;Sent: Thursday, May 30, 2002 11:48 AM 
<DIV></DIV>&gt;To: ntop@Unipi.IT 
<DIV></DIV>&gt;Subject: RE: [Ntop] Suspicious FTP message from ntop 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;Hello, 
<DIV></DIV>&gt;Here is the back trace (or info stack) on the thread that's dying and \
the  <DIV></DIV>&gt;frame command to point at the last place in ntop code. Also \
included is the  <DIV></DIV>&gt;list and print command. I hope this is helpful. \
Please let me know how to  <DIV></DIV>&gt;interpret and any assistance would be \
greatly appreciated.  <DIV></DIV>&gt;Regards, Patrick 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;[root@localhost ntopuser]# gdb /usr/local/bin/ntop 
<DIV></DIV>&gt;GNU gdb Red Hat Linux 7.x (5.0rh-15) (MI_OUT) 
<DIV></DIV>&gt;Copyright 2001 Free Software Foundation, Inc. 
<DIV></DIV>&gt;GDB is free software, covered by the GNU General Public License, and \
you are  <DIV></DIV>&gt;welcome to change it and/or distribute copies of it under \
certain  <DIV></DIV>&gt;conditions. 
<DIV></DIV>&gt;Type "show copying" to see the conditions. 
<DIV></DIV>&gt;There is absolutely no warranty for GDB. Type "show warranty" for \
details.  <DIV></DIV>&gt;This GDB was configured as "i386-redhat-linux"... 
<DIV></DIV>&gt;(gdb) set args -u root -P /home/ntopuser -i eth0 -K 
<DIV></DIV>&gt;(gdb) run 
<DIV></DIV>&gt;Starting program: /usr/local/bin/ntop -u root -P /home/ntopuser -i \
eth0 -K  <DIV></DIV>&gt;[New Thread 1024 (LWP 13670)] 
<DIV></DIV>&gt;Wait please: ntop is coming up... 
<DIV></DIV>&gt;30/May/2002 11:08:45 Initializing IP services... 
<DIV></DIV>&gt;SSL is present but https is disabled: use -W <HTTPS port>for enabling \
it  <DIV></DIV>&gt;30/May/2002 11:08:45 Initializing GDBM... 
<DIV></DIV>&gt;30/May/2002 11:08:45 Initializing network devices... 
<DIV></DIV>&gt;30/May/2002 11:08:45 ntop v.2.0.99 MT ! (SSL) [i686-pc-linux-gnu] \
(05/30/02  <DIV></DIV>&gt;09:39:29 AM build) 
<DIV></DIV>&gt;30/May/2002 11:08:45 Listening on [eth0] 
<DIV></DIV>&gt;30/May/2002 11:08:45 Copyright 1998-2002 by Luca Deri <DERI@NTOP.ORG>
<DIV></DIV>&gt;30/May/2002 11:08:45 Get the freshest ntop from http://www.ntop.org/ 
<DIV></DIV>&gt;30/May/2002 11:08:45 Initializing... 
<DIV></DIV>&gt;30/May/2002 11:08:45 Truncated network size to 1024 hosts (real \
netmask  <DIV></DIV>&gt;255.255.0.0) 
<DIV></DIV>&gt;30/May/2002 11:08:45 Loading plugins (if any)... 
<DIV></DIV>&gt;30/May/2002 11:08:45 Searching plugins in /usr/local/lib/ntop/plugins 
<DIV></DIV>&gt;30/May/2002 11:08:47 Welcome to icmpWatchPlugin. (C) 1999 by Luca \
Deri.  <DIV></DIV>&gt;30/May/2002 11:08:48 Welcome to LastSeenWatchPlugin. (C) 1999 \
by Andrea  <DIV></DIV>&gt;Marangoni. 
<DIV></DIV>&gt;30/May/2002 11:08:50 Welcome to NetFlow. (C) 2002 by Luca Deri. 
<DIV></DIV>&gt;30/May/2002 11:08:53 Welcome to nfsWatchPlugin. (C) 1999 by Luca Deri. \
 <DIV></DIV>&gt;30/May/2002 11:08:55 Welcome to PDAPlugin. (C) 2001-2002 by L.Deri \
and  <DIV></DIV>&gt;W.Brock 
<DIV></DIV>&gt;30/May/2002 11:08:57 Welcome ! to sFlowPlugin. (C) 2002 by Luca Deri. 
<DIV></DIV>&gt;30/May/2002 11:08:57 Resetting traffic statistics... 
<DIV></DIV>&gt;[New Thread 2049 (LWP 13678)] 
<DIV></DIV>&gt;[New Thread 1026 (LWP 13679)] 
<DIV></DIV>&gt;30/May/2002 11:08:58 Started thread (1026) for network packet \
analyser.  <DIV></DIV>&gt;[New Thread 2051 (LWP 13680)] 
<DIV></DIV>&gt;30/May/2002 11:08:58 Started thread (2051) for idle hosts detection. 
<DIV></DIV>&gt;[New Thread 3076 (LWP 13681)] 
<DIV></DIV>&gt;30/May/2002 11:08:59 Started thread (3076) for DNS address resolution. \
 <DIV></DIV>&gt;[New Thread 4101 (LWP 13682)] 
<DIV></DIV>&gt;30/May/2002 11:08:59 Started thread (4101) for address purge. 
<DIV></DIV>&gt;30/May/2002 11:08:59 Initializing plugins (if any)... 
<DIV></DIV>&gt;30/May/2002 11:08:59 NetFlow export disabled 
<DIV></DIV>&gt;30/May/2002 11:08:59 Waiting for HTTP connections on port 3000... 
<DIV></DIV>&gt;[New Thread 5126 (LWP 13683)] 
<DIV></DIV>&gt;30/May/2002 11:08:59 Started thread (5126) for web server. 
<DIV></DIV>&gt;30/May/2002 11:08:59 Sniffying... 
<DIV></DIV>&gt;[New Thread 6151 (LWP 13684)] 
<DIV></DIV>&gt;30/May/2002 11:08:59 Extending hash size [newSize=512][deviceId=0] 
<DIV></DIV>&gt;30/May/2002 11:09:00 Started th! read (6151) for network packet \
sniffing on  <DIV></DIV>&gt;eth0. 
<DIV></DIV>&gt;30/May/2002 11:09:24 Extending hash size [newSize=1024][deviceId=0] 
<DIV></DIV>&gt;30/May/2002 11:10:04 Extending hash size [newSize=2048][deviceId=0] 
<DIV></DIV>&gt;30/May/2002 11:11:34 Extending hash size [newSize=4096][deviceId=0] 
<DIV></DIV>&gt;30/May/2002 11:14:34 Extending hash size [newSize=8192][deviceId=0] 
<DIV></DIV>&gt;Program received signal SIGSEGV, Segmentation fault. 
<DIV></DIV>&gt;[Switching to Thread 2051 (LWP 13680)] 
<DIV></DIV>&gt;0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at \
malloc.c:3228  <DIV></DIV>&gt;3228 malloc.c: No such file or directory. 
<DIV></DIV>&gt; in malloc.c 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;(gdb) info stack 
<DIV></DIV>&gt;#0 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at 
<DIV></DIV>&gt;malloc.c:3228 
<DIV></DIV>&gt;#1 0x4055ebf4 in __libc_free (mem=0x8793970) at malloc.c:3154 
<DIV></DIV>&gt;#2 0x40284c55 in ntop_safefree (ptr=0x41ad29dc, file=0x402a55b9 
<DIV></DIV>&gt;"sessions.c", line=246) at leaks.c:485 
<DIV></DIV>&gt;#3 0x402905cf in freeSession (sessionToPurge=0x8793970, \
actualDeviceId=0,  <DIV></DIV>&gt;allocateMemoryIfNeeded=1 '\001') 
<DIV></DIV>&gt; at sessions.c:246 
<DIV></DIV>&gt;#4 0x40290784 in scanTimedoutTCPSessions (actualDeviceId=0) at 
<DIV></DIV>&gt;sessions.c:310 
<DIV></DIV>&gt;#5 0x4028107e in purgeIdleHosts (actDevice=0) at hash.c:471 
<DIV></DIV>&gt;#6 0x40286909 in scanIdleLoop (notUsed=0x0) at ntop.c:619 
<DIV></DIV>&gt;#7! 0x4022fb9c in pthread_start_thread (arg=0x41ad2be0) at \
manager.c:274  <DIV></DIV>&gt;#8 0x4022fc7f in pthread_start_thread_event \
(arg=0x41ad2be0) at  <DIV></DIV>&gt;manager.c:298 
<DIV></DIV>&gt;(gdb) frame 
<DIV></DIV>&gt;#0 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at 
<DIV></DIV>&gt;malloc.c:3228 
<DIV></DIV>&gt;3228 in malloc.c 
<DIV></DIV>&gt;(gdb) list 
<DIV></DIV>&gt;3223 in malloc.c 
<DIV></DIV>&gt;(gdb) print ar_ptr 
<DIV></DIV>&gt;$1 = (arena *) 0x40612620 
<DIV></DIV>&gt;(gdb) print p 
<DIV></DIV>&gt;$2 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;$3 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;$4 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;$5 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;$6 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;$7 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;$8 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt;$9 = 0x8793968 
<DIV></DIV>&gt;(gdb) list 
<DIV></DIV>&gt;3223 in malloc.c 
<DIV></DIV>&gt;(gdb) info stack 
<DIV></DIV>&gt;#0 0x4055ee9c in chunk_free (ar_ptr=0x40612620, p=0x8793968) at 
<DIV></DIV>&gt;malloc.c:3228 
<DIV></DIV>&gt;#1 0x4055ebf4 in __libc_free (mem=0x8793970) at malloc.c:3154 
<DIV></DIV>&gt;#2 0x40284c55 in ntop_safefree (ptr=0x41ad29dc, file=0x402a55b9 
<DIV></DIV>&gt;"sessions.c", line=246) at leaks.c:485 
<DIV></DIV>&gt;#3 0x402! 905cf in freeSession (sessionToPurge=0x8793970, \
actualDeviceId=0,  <DIV></DIV>&gt;allocateMemoryIfNeeded=1 '\001') 
<DIV></DIV>&gt; at sessions.c:246 
<DIV></DIV>&gt;#4 0x40290784 in scanTimedoutTCPSessions (actualDeviceId=0) at 
<DIV></DIV>&gt;sessions.c:310 
<DIV></DIV>&gt;#5 0x4028107e in purgeIdleHosts (actDevice=0) at hash.c:471 
<DIV></DIV>&gt;#6 0x40286909 in scanIdleLoop (notUsed=0x0) at ntop.c:619 
<DIV></DIV>&gt;#7 0x4022fb9c in pthread_start_thread (arg=0x41ad2be0) at \
manager.c:274  <DIV></DIV>&gt;#8 0x4022fc7f in pthread_start_thread_event \
(arg=0x41ad2be0) at  <DIV></DIV>&gt;manager.c:298 
<DIV></DIV>&gt;(gdb) print ar_ptr 
<DIV></DIV>&gt;$10 = (arena *) 0x40612620 
<DIV></DIV>&gt;(gdb) print p 
<DIV></DIV>&gt;$11 = 0x8793968 
<DIV></DIV>&gt;(gdb) 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; &gt;From: "Burton M. Strauss III" 
<DIV></DIV>&gt; &gt;To: 
<DIV></DIV>&gt; &gt;CC: 
<DIV></DIV>&gt; &gt;Subject: RE: [Ntop] Suspicious FTP message from ntop 
<DIV></DIV>&gt; &gt;Date: Thu, 30 May 2002 09:37:08 -0500 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt;Fine... how about doing the back trace... (info stack) on the \
thread that's  <DIV></DIV>&gt; &gt;dying... then use the frame command to point at \
the last place in ntop  <DIV></DIV>&gt;code. 
<DIV></DIV>&gt; &gt;Then the list will be meaningful. Also, print requires a variable \
name...  <DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt;-----Burton 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt;-----Original Message----- 
<DIV></DIV>&gt; &gt;From: ntop-admin@unipi.it [mailto:ntop-admin@unipi.it]On Behalf \
Of patrick  <DIV></DIV>&gt; &gt;wong 
<DIV></DIV>&gt; &gt;Sent: Thursday, May 30, 2002 9:23 AM 
<DIV></DIV>&gt; &gt;To: Burton@ntopsupport.com; ntop@Unipi.IT 
<DIV></DIV>&gt; &gt;Subject: RE: [Ntop] Suspicious FTP message from ntop 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt;Hello, 
<DIV></DIV>&gt; &gt;I have a new error now. I get the following segmentation fault \
from the  <DIV></DIV>&gt; &gt;lastest build of Ntop. Ntop is a compiled build of \
ntop-02-05-30.tgz  <DIV></DIV>&gt; &gt;It looks like Ntop is having segmentation \
faults at malloc.c. Any  <DIV></DIV>&gt;assistance 
<DIV></DIV>&gt; &gt;would appreciated. 
<DIV></DIV>&gt; &gt;Regards, Patrick 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt;[root@localhost ntopuser]# gdb /usr/local/bin/ntop 
<DIV></DIV>&gt; &gt;GNU gdb Red Hat Linux 7.x (5.0rh-15) (MI_OUT) 
<DIV></DIV>&gt; &gt;Copyright 2001 Free Software Foundation, Inc. 
<DIV></DIV>&gt; &gt;GDB is free software, covered by the GNU General Public License, \
and you  <DIV></DIV>&gt;are 
<DIV></DIV>&gt; &gt;welcome to change it and/or distribute copies of it under certain \
 <DIV></DIV>&gt; &gt;conditions. 
<DIV></DIV>&gt; &gt;Type "show copying" to see the conditions. 
<DIV></DIV>&gt; &gt;There is absolutely no warranty for GDB. Type "show warranty" for \
details.  <DIV></DIV>&gt; &gt;This GDB was configured as "i386-redhat-linux"... 
<DIV></DIV>&gt; &gt;(gdb) set args -u root -i eth0 -P /home/ntopuser -K 
<DIV></DIV>&gt; &gt;(gdb) run 
<DIV></DIV>&gt; &gt;Starting program: /usr/local/bin/ntop -u root -i eth0 -P \
/home/ntopuser -K  <DIV></DIV>&gt; &gt;[New Thread 1024 (LWP 13543)] 
<DIV></DIV>&gt; &gt;Wait please: ntop is coming up... 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Initializing IP services... 
<DIV></DIV>&gt; &gt;SSL is present but https is disabled: use -W for enabling it 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Initializing GDBM... 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Initializing network devices... 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 ntop v.2.0.99 MT ! (SSL) [i686-pc-linux-gnu] \
(05/30/02  <DIV></DIV>&gt; &gt;09:39:29 AM build) 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Listening on [eth0] 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Copyright 1998-2002 by Luca Deri 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Get the freshest ntop from \
http://www.ntop.org/  <DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Initializing... 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Truncated network size to 1024 hosts (real \
netmask  <DIV></DIV>&gt; &gt;255.255.0.0) 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Loading plugins (if any)... 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:22 Searching plugins in \
/usr/local/lib/ntop/plugins  <DIV></DIV>&gt; &gt;30/May/2002 10:20:24 Welcome to \
icmpWatchPlugin. (C) 1999 by Luca Deri.  <DIV></DIV>&gt; &gt;30/May/2002 10:20:26 \
Welcome to LastSeenWatchPlugin. (C) 1999 by Andrea  <DIV></DIV>&gt; &gt;Marangoni. 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:28 Welcome to NetFlow. (C) 2002 by Luca Deri. 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:30 Welcome to nfsWatchPlugin. (C) 1999 by Luca \
Deri.  <DIV></DIV>&gt; &gt;30/May/2002 10:20:32 Welcome to PDAPlugin. (C) 2001-2002 \
by L.Deri and  <DIV></DIV>&gt; &gt;W.Brock 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:35 Welcome ! to sFlowPlugin. (C) 2002 by Luca \
Deri.  <DIV></DIV>&gt; &gt;30/May/2002 10:20:35 Resetting traffic statistics... 
<DIV></DIV>&gt; &gt;[New Thread 2049 (LWP 13550)] 
<DIV></DIV>&gt; &gt;[New Thread 1026 (LWP 13551)] 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:36 Started thread (1026) for network packet \
analyser.  <DIV></DIV>&gt; &gt;[New Thread 2051 (LWP 13552)] 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:36 Started thread (2051) for idle hosts \
detection.  <DIV></DIV>&gt; &gt;[New Thread 3076 (LWP 13553)] 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:36 Started thread (3076) for DNS address \
resolution.  <DIV></DIV>&gt; &gt;[New Thread 4101 (LWP 13554)] 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:37 Started thread (4101) for address purge. 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:37 Initializing plugins (if any)... 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:37 NetFlow export disabled 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:37 Waiting for HTTP connections on port 3000... \
 <DIV></DIV>&gt; &gt;[New Thread 5126 (LWP 13555)] 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:37 Started thread (5126) for web server. 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:37 Sniffying... 
<DIV></DIV>&gt; &gt;[New Thread 6151 (LWP 13556)] 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:37 Extending hash size \
[newSize=512][deviceId=0]  <DIV></DIV>&gt; &gt;30/May/2002 10:20:38 Started th! read \
(6151) for network packet sniffing on  <DIV></DIV>&gt; &gt;eth0. 
<DIV></DIV>&gt; &gt;30/May/2002 10:20:58 Extending hash size \
[newSize=1024][deviceId=0]  <DIV></DIV>&gt; &gt;30/May/2002 10:21:28 Extending hash \
size [newSize=2048][deviceId=0]  <DIV></DIV>&gt; &gt;30/May/2002 10:22:48 Extending \
hash size [newSize=4096][deviceId=0]  <DIV></DIV>&gt; &gt;30/May/2002 10:25:48 \
Extending hash size [newSize=8192][deviceId=0]  <DIV></DIV>&gt; &gt;Program received \
signal SIGSEGV, Segmentation fault.  <DIV></DIV>&gt; &gt;[Switching to Thread 2051 \
(LWP 13552)]  <DIV></DIV>&gt; &gt;0x4055ee9c in chunk_free (ar_ptr=0x40612620, \
p=0x93bcc68) at malloc.c:3228  <DIV></DIV>&gt; &gt;3228 malloc.c: No such file or \
directory.  <DIV></DIV>&gt; &gt; in malloc.c 
<DIV></DIV>&gt; &gt;(gdb) list 
<DIV></DIV>&gt; &gt;3223 in malloc.c 
<DIV></DIV>&gt; &gt;(gdb) print 
<DIV></DIV>&gt; &gt;The history is empty. 
<DIV></DIV>&gt; &gt;(gdb) list 
<DIV></DIV>&gt; &gt;3223 in malloc.c 
<DIV></DIV>&gt; &gt;(gdb) thread 
<DIV></DIV>&gt; &gt;[Current thread is 4 (Thread 2051 (LWP 13552))] 
<DIV></DIV>&gt; &gt;(gdb) thread 
<DIV></DIV>&gt; &gt;[Current thread is 4 (Thread 2051 (LWP 13552))] 
<DIV></DIV>&gt; &gt;(gdb) thread 1 
<DIV></DIV>&gt; &gt;[Switching to thread 1 (Thread 1024 (LWP 13543))]#0 0x405989e7 in \
 <DIV></DIV>&gt; &gt;__libc_pause () from /lib/i686/libc.so.6 
<DIV></DIV>&gt; &gt;(gdb) list 
<DIV></DIV>&gt; &gt;3223 in malloc.c 
<DIV></DIV>&gt; &gt;(gdb) print 
<DIV></DIV>&gt; &gt;The history is empty. 
<DIV></DIV>&gt; &gt;(gdb) thread 2 
<DIV></DIV>&gt; &gt;[Switching to thread 2 (Thread 2049 (LWP 13550))]#0 0x405c39f7 in \
__poll  <DIV></DIV>&gt; &gt;(fds=0x82a99cc, nfds=1, timeout=2000) 
<DIV></DIV>&gt; &gt; at ../sysdeps/unix/sysv/linu! x/poll.c:63 
<DIV></DIV>&gt; &gt;63 ../sysdeps/unix/sysv/linux/poll.c: No such file or directory. 
<DIV></DIV>&gt; &gt; in ../sysdeps/unix/sysv/linux/poll.c 
<DIV></DIV>&gt; &gt;(gdb) list 
<DIV></DIV>&gt; &gt;58 in ../sysdeps/unix/sysv/linux/poll.c 
<DIV></DIV>&gt; &gt;(gdb) list 3 
<DIV></DIV>&gt; &gt;1 in ../sysdeps/unix/sysv/linux/poll.c 
<DIV></DIV>&gt; &gt;(gdb) list 
<DIV></DIV>&gt; &gt;1 in ../sysdeps/unix/sysv/linux/poll.c 
<DIV></DIV>&gt; &gt;(gdb) thread 3 
<DIV></DIV>&gt; &gt;[Switching to thread 3 (Thread 1026 (LWP 13551))]#0 0x4050caa5 in \
 <DIV></DIV>&gt; &gt;__sigsuspend (set=0x412d263c) 
<DIV></DIV>&gt; &gt; at ../sysdeps/unix/sysv/linux/sigsuspend.c:45 
<DIV></DIV>&gt; &gt;45 ../sysdeps/unix/sysv/linux/sigsuspend.c: No such file or \
directory.  <DIV></DIV>&gt; &gt; in ../sysdeps/unix/sysv/linux/sigsuspend.c 
<DIV></DIV>&gt; &gt;(gdb) list 
<DIV></DIV>&gt; &gt;40 in ../sysdeps/unix/sysv/linux/sigsuspend.c 
<DIV></DIV>&gt; &gt;(gdb) 
<DIV></DIV>&gt; &gt;40 i! n ../sysdeps/unix/sysv/linux/sigsuspend.c 
<DIV></DIV>&gt; &gt;(gdb) 
<DIV></DIV>&gt; &gt;40 in ../sysdeps/unix/sysv/linux/sigsuspend.c 
<DIV></DIV>&gt; &gt;(gdb) thread 4 
<DIV></DIV>&gt; &gt;[Switching to thread 4 (Thread 2051 (LWP 13552))]#0 0x4055ee9c in \
 <DIV></DIV>&gt; &gt;chunk_free (ar_ptr=0x40612620, p=0x93bcc68) 
<DIV></DIV>&gt; &gt; at malloc.c:3228 
<DIV></DIV>&gt; &gt;3228 malloc.c: No such file or directory. 
<DIV></DIV>&gt; &gt; in malloc.c 
<DIV></DIV>&gt; &gt;(gdb) list 
<DIV></DIV>&gt; &gt;3223 in malloc.c 
<DIV></DIV>&gt; &gt;(gdb) 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; &gt;Send and receive Hotmail on your mobile device: Click Here 
<DIV></DIV>&gt; &gt;_______________________________________________ Ntop mailing list \
 <DIV></DIV>&gt; &gt;Ntop@unipi.it http://listgateway.unipi.it/mailman/listinfo/ntop 
<DIV></DIV>&gt; &gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt; 
<DIV></DIV>&gt;MSN Photos is the easiest way to share and print your photos: Click \
Here  <DIV></DIV>&gt;_______________________________________________ Ntop mailing \
list  <DIV></DIV>&gt;Ntop@unipi.it http://listgateway.unipi.it/mailman/listinfo/ntop 
<DIV></DIV>&gt; 
<DIV></DIV></div><br clear=all><hr>MSN Photos is the easiest way to share and print \
your photos: <a href='http://g.msn.com/1HM301601/43'>Click Here</a><br></html>


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic