保护C#TcpClient操作

时间:2011-11-23 15:29:59

标签: c# .net security tcp

我有几个关于通过Tcp进行通信的C#.NET客户端/服务器应用程序的问题。

  1. 如何从缓冲区溢出攻击中最好地保护我的Tcp侦听器?我想象它发生在我读取与给定TcpClient的NetworkStream相关联的StreamReader的一行,但我不知道具体细节。

  2. 有人会指点我用一个非常好的TcpClient .NET和SSL(通过SslStream我猜)教程或文档吗?

  3. 谢谢你们。

1 个答案:

答案 0 :(得分:2)

  1. 如果您尝试编写外部缓冲区,.NET会抛出异常。

  2. 这是一个非常广泛的问题。您只需使用SslStream包装NetworkStream并作为客户端或服务器进行身份验证。

  3. 示例:

    var secureStream = new SslStream(tcpClient.GetStream());
    

    MSDN得到了一个例子:http://msdn.microsoft.com/en-us/library/system.net.security.sslstream.aspx