Re: [Full-Disclosure] SQL Slammer - lessons learned

From: David Howe (DaveHowe@gmx.co.uk)
Date: 02/10/03

  • Next message: I.R. van Dongen: "Re: RE: [Full-Disclosure] SQL Slammer - lessons learned"
    From: "David Howe" <DaveHowe@gmx.co.uk>
    To: "Email List: Full Disclosure" <full-disclosure@lists.netsys.com>
    Date: Mon, 10 Feb 2003 14:14:02 -0000
    

    >>> There's no reason to insist an IP stack would re-use it ever.
    >> Fairly common - particularly in download managers and/or multthreaded
    >> ftp clients.
    >> what will normally happen is that the controller app will start one
    >> or more worker threads - each one of which will obtain one or two
    >> ports, and request from the controller app a task (a specific
    >> download). Because it is inefficient to release those ports then
    >> request another from the os, they don't - they simply re-use the
    >> ports (ideally in the case of ftp retaining the control channel
    >> intact) until they are shut down. The IP stack isn't insisting on
    >> *anything* - the programs are simply performing their tasks as
    >> programmed.
    > Read my sentence again. I didn't say that you couldn't reuse a port.
    > I said you shouldn't insist an IP stack re-use a port.
    Indeed so - however, you replied to
    >a "well behaved" program may well re-use that port
    > several times if it is performing sequential actions.
    The fact that it doesn't insist that you re-use a port doesn't mean it
    insists you don't either. The stack allows it, and it happens in the
    Real World.

    >> what RFC does port re-use break? and just how long has every server
    >> on the planet been breaking it?
    > RFC793 for a start. Even if it was random or sequential assignment,
    > you'd still need to keep the port "open" to re-use it. ie the
    > resources required to track all the ports you've ever opened and
    > closed would be prohibitive. Name me one server that uses port re-use.
    any that runs on a well-known port, or relies on RFC to locate its
    service. any server daemon, in fact.

    > Windows 2000 uses random assignment for passive (PASV) mode ftp.
    are you sure it is windows that does that, and not the ftp server
    itself? I have several ftpd which deliberately handle their own port
    assignments to avoid the sequential allocation "vunerability" - this
    isn't a hard task, as all you do is ask the os for port xxx (chosen at
    random) and the os will say yes or no. They don't rely on the os to do
    this, as sequential is usually fine, and much, much simpler to program.

    > Now please name me one OS that uses sequential assignment from 1024
    > other than unpatched Windows 2000 (see
    > http://support.microsoft.com/default.aspx?scid=kb;en-us;260934). I've
    > seen evidence of sequential assignment that started at a higher
    > address.
    almost any - all versions of windows I have looked at (w2K and below, I
    have never checked XP) and most unixen.

    > Plenty of sites have records that are too big to fit in UDP.
    > Hotmail.com's MX records for one. If your DNS servers can't use a TCP
    > port, then you can't email hotmail.com (some would say that isn't a
    > bad thing).
    I would agree, but as a email admin I sorta get the pain if mail bounces
    due to server misconfiguration. do you have an RFC reference for how
    this happens (I assume the udp reply indicates the port for a tcp
    connect)

    > Incidentally, if anyone contacts me off the list about this subject
    > (for example, alleging that UDP is insecure without any evidence), my
    > reply together with your message will go to the list.
    UDP tends to be less secure than TCP - simply because there is no
    initial handshake to prevent spoofed source addresses.

    > NOTICE: The information contained in this email and any attachments is
    > confidential and may be legally privileged. If you are not the
    > intended recipient you are hereby notified that you must not use,
    > disclose, distribute, copy, print or rely on this email's content. If
    > you are not the intended recipient, please notify the sender
    > immediately and then delete the email and any attachments from your
    > system.
    This is irritating - can't you turn it off?

    > Please note that the statements and views expressed in this email
    > and any attachments are those of the author and do not necessarily
    > represent those of RNIB.
    This however is usually a good move - better as an overridable definite
    assertion (do not rather than do not neccessarily) that you can turn off
    when actually speaking on behalf of your company.

    _______________________________________________
    Full-Disclosure - We believe in it.
    Charter: http://lists.netsys.com/full-disclosure-charter.html



    Relevant Pages

    • Re: Microsoft FTP Server problem on W2K?
      ... I have technical responsibility for this FTP implementation, ... Since PASV voids PORT, the client side ... connect to the server from" isn't implied by the text of the RFC. ...
      (microsoft.public.inetserver.iis.security)
    • Re: Some questions
      ... > using my ftp software behind my router. ... > issued to server by the client. ... When PORT is used: ... > Can you give me a command line used in a browser to explain me what is the ...
      (comp.security.firewalls)
    • Re: Firewall and ftp service
      ... I'll say it again, FTP is eeeevul. ... > which redirects the traffic to my public ftp server. ... > should force the server to stay on port 21 for tha data connection, ... the client tells the server what port it will be ...
      (FreeBSD-Security)
    • Re: Firewall and ftp service
      ... FTP is eeeevul. ... >> which redirects the traffic to my public ftp server. ... > client connects to the server on port 21. ... the client tells the server what port it will be ...
      (FreeBSD-Security)
    • RE: Telnet/ftp problems SBS2000
      ... Please make sure your client computers are configured as both Firewall ... will find two options "Enable folder view for FTP sites" and "Use Passive ... that the control connection has been successfully established, ... (other than port 21) ...
      (microsoft.public.windows.server.sbs)