UDP DoS attack in Win2k via IKE

From: c0redump (c0redumpat_private)
Date: Tue Dec 11 2001 - 15:58:30 PST

  • Next message: Gert-Jan Hagenaars: "Re: SPAMMERS DELIGHT: as feeble as feeble can be"

    CLARIFICATION
    =============
    This memo should clarify the issue discovered with the UDP DOS
    against windows 2000, involving port 500 UDP. We have recieved
    numerous comments and questions about BugTraq Advisory 244265.
    
    
    PROBLEM
    =======
    Sending of UDP traffic to port 500 UDP will cause windows to
    spend excessive CPU time on processing this traffic. It is
    possible for an attacker to cause excessive CPU usage by
    continuously sending UDP traffic on port 500 to the target
    machine. This may degrade performance on the target machine
    or even render it useless, as long as the attacker sends
    traffic.
    
    
    IMPACT
    ======
    The primary impact is that the attacker can cause high
    CPU loads on the target machine. If the machine is used for
    critical tasks (domain controller, web server, etc), this
    might lead to a serious degradation in performance or even
    complete loss of service.
    
    Indirect impact may result to all windows 2000 sites relying
    on IPSec to secure their internet communications (ie if the
    attacked host is an IPSec gateway). This was however not
    tested by us and might require further investigations.
    
    
    DETAILS
    =======
    All testings have been conducted with a simple UDP flooder.
    The traffic sent was not related to IKE, instead the payload
    on the UDP traffic was simply made up of dots (ASCII 46).
    We have conducted tests with various packet lenghts, and
    we noticed that with a packet lenght of 800 bytes, it was
    possible to drive a windows 2000 professional SP2, installed
    on a pentium I 233mmx machine, to 99% CPU usage. The machine
    was connected to a 10mbit ethernet, on which also the
    attacking machine resided.
    
    Another test configuration included a pIII based server
    running @ 933MHz, connected to the attacking machine via
    2mbit SDSL line. We were able to cause a CPU usage of around
    50% to 80% on this machine by flooding its UDP port 500.
    
    We also tested various other UDP ports than 500, and it
    became quite clear to us that none of the open ports causes
    as much CPU usage as port 500 does when getting flooded.
    
    
    SOLUTION
    ========
    When IPSec is not in use, filter UDP dst port 500 on your
    border router / firewall. If you don't have a border router
    or firewall, then one of the various commercially available
    "personal type" firewalls can help.
    
    Notice that with built in Windows 2000 IPSec filters you
    *can not* firewall port 500 off (see also Microsoft
    Knowledgebase article Q253169).
    
    If you are actively making usage of IPSec at your site,
    then an immediate fix to this problem might not be
    available. ACL Lists on your Firewall/Router may help
    by limiting the range of IP addresses that are allowed to
    send UDP port 500 traffic to you, so that only legitimate
    IPSec tunnel partners can reach your server, might help.
    
    REFERENCES
    ==========
    Original Advisory:
     http://www.securityfocus.com/archive/1/244265
    
    Microsoft Knowledge Base Article Q253169:
     http://support.microsoft.com/default.aspx?scid=kb;EN-US;q253169
    
    
    ====
    
    gridrunat_private
    c0redumpat_private
    #hacktech @ undernet
    
    
    
    Special thanks to Synecta Informatik AG Switzerland for providing
    us with valuable resources and supporting our work!
    http://www.synecta.ch
    
    
        .-.
        /v\    L   I   N   U   X
       // \\   >I know KungFu!!<
      /(   )\
       ^^-^^
    



    This archive was generated by hypermail 2b30 : Tue Dec 11 2001 - 20:22:41 PST