Re: [HAT-SQUAD] NetCat Remote Critical Vulnerability, Poc included

From: Chris Wysopal (
Date: 12/28/04

Date: Tue, 28 Dec 2004 16:59:32 -0500 (EST)
To: Hat-Squad Security Team <>

Application: Netcat for Windows 1.1
   Platform: Windows NT/2000/XP/2003
   Severity: Remote code execution
     Status: Fixed, new version available
       Date: 12/27/2004


Netcat for Windows 1.1 has a buffer overflow vulnerability that allows
remote execution of code. It is exposed when netcat is run using the -e
option which execs a process and pipes the listening socket io to the
stdio of the exec'd process.

Note that this issue does not exist in netcat for the unix platform.


doexec.c (line 445) was missing a check to see if BufferCnt had
incremented past the end of the recieve buffer. With the check in place
the buffer is flushed before it overwrites the end. The following new
line adds the check.

  if (RecvBuffer[0] == '\n' || RecvBuffer[0] == '\r' ||
      BufferCnt > BUFFER_SIZE-1) {


A fixed version, Netcat for Windows 1.11, is available at:


Hat Squad discovered this vulnerabiltiy. Hat Squad's advisory is
available at

Relevant Pages