FileZilla FTP 服务器甚至在用户验证之前就提供了命令帮助

FileZilla FTP 服务器甚至在用户验证之前就提供了命令帮助

我有一台运行 FileZilla 服务器的 Windows 7 计算机。不久前,我阅读了我的日志,注意到一段我不理解的奇怪摘录。

199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> 220 PlayNice in the SandBox
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> USER anonymous
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> 331 Password required for anonymous
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> PASS **********
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> 530 Login or password incorrect!
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> help
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> 214-The following commands are recognized:
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)>    ABOR   ADAT   ALLO   APPE   AUTH   CDUP   CLNT   CWD 
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)>    DELE   EPRT   EPSV   FEAT   HASH   HELP   LIST   MDTM
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)>    MFMT   MKD    MLSD   MLST   MODE   NLST   NOOP   NOP 
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)>    OPTS   P@SW   PASS   PASV   PBSZ   PORT   PROT   PWD 
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)>    QUIT   REST   RETR   RMD    RNFR   RNTO   SITE   SIZE
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)>    STOR   STRU   SYST   TYPE   USER   XCUP   XCWD   XMKD
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)>    XPWD   XRMD
(000199)10/28/2014 23:07:57 PM - (not logged in) (66.240.192.138)> 214 Have a nice day.

无需登录,有人就能获得可用命令的列表吗?

这是正常的吗?
我应该担心吗?
这可以预防吗?

除了禁止整个子网,我还应该做什么?

答案1

是的,这很正常。协议首先不强制身份验证。甚至不需要匿名身份验证。实际上,大多数 ftp 服务器仅用于提供文件。您不应将其视为安全漏洞。您可以尝试使用任何 ftp 服务器。我认为这是无法预防的。

答案2

您甚至需要在进行身份验证之前使用一些命令,并且可能需要获得帮助。

显然是USERPASSAUTH(对于 TLS)。

但例如HOSTRFC 7151)。但是 FileZilla Server 不支持。

即使您使用 GUI FTP 客户端,这样您就不必关心帮助,客户端也可能需要知道服务器支持哪些命令。对于命令尤其如此HOST。当服务器支持时HOST,客户端需要在之前发送该命令USER

请注意,GUI FTP 客户端将使用FEAT,而不是HELP,但后果是一样的。

在您实际进行身份验证之前,服务器可能会选择不列出未经身份验证而不允许的命令HELP或响应。但规范,FEATFEATRFC 2389,没有说明这种可能性。因此,这种服务器实现可能会破坏某些客户端(FEAT在身份验证之前使用,期望一组完整的命令/功能)。

相关内容