通过使用以下代码,我的客户端应用程序正在连接到安全FTP服务器并成功推送文件。 您是否认为以下方法仍然通过接受所有证书而离开安全漏洞。如果是这样,任何人都可以帮助我从FTP服务器上的客户端传递特定证书。
ServicePointManager.ServerCertificateValidationCallback = new System.Net.Security.RemoteCertificateValidationCallback(AcceptAllCertifications);
// Where AcceptAllCertifications is defined as...
public bool AcceptAllCertifications(object sender,
System.Security.Cryptography.X509Certificates.X509Certificate certification,
System.Security.Cryptography.X509Certificates.X509Chain chain,
System.Net.Security.SslPolicyErrors sslPolicyErrors)
{
return true;
}
答案 0 :(得分:1)
我不确定是否从服务器验证特定证书,但您在此方案中引入的安全问题非常简单。
在这种情况下,攻击者可以将自己置于您和服务器之间并将流量重定向到自己,构成另一个安全的FTP站点(您无法区分,因为您没有检查服务器的凭据)并采取上传或者提供要下载的文件。一个特别阴险的攻击者实际上会将文件转发到真实服务器上,可能只需要很小的改动,如果它们可以让你觉得一切正常。
验证服务器的证书可确保您将文件FTP到正确的目标