![通过复制我的在线文本文件中的内容来安排脚本来更新“hosts”文件是不是很愚蠢?](https://linux22.com/image/1543779/%E9%80%9A%E8%BF%87%E5%A4%8D%E5%88%B6%E6%88%91%E7%9A%84%E5%9C%A8%E7%BA%BF%E6%96%87%E6%9C%AC%E6%96%87%E4%BB%B6%E4%B8%AD%E7%9A%84%E5%86%85%E5%AE%B9%E6%9D%A5%E5%AE%89%E6%8E%92%E8%84%9A%E6%9C%AC%E6%9D%A5%E6%9B%B4%E6%96%B0%E2%80%9Chosts%E2%80%9D%E6%96%87%E4%BB%B6%E6%98%AF%E4%B8%8D%E6%98%AF%E5%BE%88%E6%84%9A%E8%A0%A2%EF%BC%9F.png)
我在用着本网站上传一个我会偶尔更新的文本文件。在另一个系统上,我计划在任务计划程序中添加一个任务来运行一个 Python 脚本,该脚本访问此在线文本文件,并将其中的一行附加到hosts
存储在 中的文件中C:\Windows\System32\drivers\etc\
。
当然,我会从管理员登录来安排任务,并且我会启用“无论用户是否登录都运行”选项,这样即使其他用户登录该脚本也会运行。
在线文件仅可读。只有所有者才能修改文本文件。
那么,这里面有什么安全隐患?这真的是一个愚蠢的设置吗?我是不是最好不要安排任务?
答案1
这样做是非常糟糕的事情从安全角度来看。
您实际上是将您的互联网连接信任到存储在互联网上开放主机上的不安全文件,而几乎没有办法验证该文件是否被恶意更改。
如果任何人获得该位置的访问权限后,他们就可以轻松地将互联网上所有热门位置填充到该位置,并将每个位置重定向到恶意软件托管位置。他们可以造成各种恶作剧,而您却无法发现,直到为时已晚。您实际上已经将重要系统文件的管理员访问权限授予了“互联网上的某个人”。
黑客可以通过入侵网站、猜测您的用户名和密码或其他方式实现此目的。您可能会被鱼叉式诱骗而意外泄露您的登录信息。
不过,默认情况下,这些页面似乎可以通过 http 而不是 https 来查看。我希望您至少尝试通过 https(安全 http)下载,因为如果您使用非安全 http,则很容易被人嗅探和修改流量,因为流量会通过您和该网站之间的路由器。同样,这将有效地允许某人重写您的主机文件并对您的计算机进行一些有趣的操作。
如果您需要定期更改主机名,您实际上应该做的是在网络上设置 DNS 服务器以进行名称解析。正如我在上一个问题的评论中提到的那样, dnsmasq
应该能够处理这个问题,只需正确设置您的网络即可。基本上,您的路由器需要设置为使用新的内部 DNS 服务器,然后您的 DNS 服务器通过网关到达您的“旧”DNS 服务器。然后,您可以在集中配置的位置获得名称解析的所有好处,而无需危险地破坏主机文件。