nc的一个bug,nc ip port -e cmd.exe 命令后ctrl+c后不会关闭连接[已解决]


nc112.rar by chenghao0511#gmail.com




现象是nc ip port -e cmd.exe一端的cmd.exe没有销毁。

nc -lp port的一端nc输入没有反应。需要ctrl+c结束。



doexec.c里面的一段:


BOOL
doexec(
    SOCKET  ClientSocket
    )
{

...

    // Close my handles to the threads, the shell process, and the shell pipes
    shutdown(Session->ClientSocket, SD_BOTH);
      closesocket(Session->ClientSocket);

...

}

而服务端nc -lp 55端发出ctrl+c则能调用上面的代码正常关闭连接。


https://github.com/chenghao11/netcat-1.12

https://www.box.com/s/z9gpmtparg2vfayc9s1m


http://pan.baidu.com/share/link?shareid=436129&uk=453348606

猜你喜欢

转载自blog.csdn.net/sitelist/article/details/8827751