尝试创建安全的网站,其中安全性由网站而不是用户处理

信息安全 隐私 用户跟踪
2021-08-20 01:45:05

我致力于儿童和青少年的公民权利,并正在努力为 LGBT 青少年和儿童及其家人创建一个网站。该网站需要安全,因为在许多国家承认自己是同性恋(或 LGBTQ)仍然非常危险。

我有一系列儿童短片,我想在网站上免费提供,但访问该网站的青少年、家庭和教师必须是无法追踪的。

我可以建立一个网站内的安全性的网站吗?
来到该站点的人和孩子不会设置自己的安全措施以防止被追踪。

4个回答

不要这样做

如果你的目标是不安全的制度,后果可能很严重。例如,在伊朗,被判死刑的同性恋者通常会被判处绞刑。

您的网站或您的一位用户只需稍有疏忽即可成为有罪的证据。你能想象你的善意网站最终成为导致处决的证据你会感到内疚吗?

在专制政权中进行颠覆性的在线操作需要极高的技巧和谨慎。简单地使用 Tor 本身就是一个危险信号。虽然像匿名这样的黑客团体可能能够逃脱这一点,但普通用户却不能。

对其他答案的评论说(大致)“使用 HTTPS,没关系”。我不能足够强调这是多么危险的建议。HTTPS 会显示用户正在访问的域名,它会在客户端计算机上留下痕迹,并且民族国家(包括伊朗)很可能会生成假证书并拦截所有 HTTPS 流量。

这不是一件容易的事。有几种不同的方法可以得到你想要的东西。

首先,使用 HTTPS。这会阻止除服务器和用户(我假设它们都是干净的)之外的任何人看到正在传输的数据。这不会阻止外部人员看到用户访问过该站点,而只会看到正在传输的确切数据。

如果您在登录屏幕后面隐藏了一些东西,那么没有登录名访问该站点的任何人都将无法看到该站点的内容。这不是很好,因为您需要信任确实拥有登录详细信息的用户,并且您需要设计一种方法来招募受信任的人来查看该站点。

更好的方法是让“正常”内容隐藏其他内容,并且无法确定请求的内容类型。做到这一点的最佳方法是,每次提供链接时,您提供的 URL 只能工作一次(或者安全性较低,只能与该用户独有的 cookie 一起工作),这将给出用户对他们正在查看的内容的合理否认。没有人可以证明他们没有访问“正常”内容,因为任何人都在观看数据传输,访问相同页面会收到错误消息或“正常”内容(取决于您如何设置)

我希望上面的建议有所帮助,之所以没有像“更改服务器上的xxx设置”这样的原因是您希望任何用户都能够访问该站点,这必须包括那些会迫害那些访问者的人。

您所说的要求在物理上是不可能的。

像这样想。如果您要向另一个国家的某人寄信,并想确定一个强大的危险团体既是

  1. 不知道信的内容

  1. 不知道收件人收到了您的来信

你会怎么做?

您身边的安全性可能很棒,但是一旦信件离开您的国家,这并不重要。

如果信件在从您的办公桌到收件人办公桌的任何地方被截获,那么您的收件人就有风险。

因此,安全是各方共同的责任

  • 你(网络服务器)

  • 您的邮政系统(您的 ISP / 网络主机)

  • 国际邮政系统(公共国际互联网 - 与政府间谍一起爬行!)

  • 您的收件人邮政系统(他们的 ISP)

  • 您的收件人(他们的 PC、网络浏览器等)

如果接收者具有建立安全连接的培训和工具,则仅通过保护 2 个端点来安全地进行通信是可行的。

两个端点都必须积极参与安全通信链路的要求是全球互联网的固有技术限制,包括任何“构建”在其上的技术。“默认”网络没有“内置”匿名安全性,因此很容易被那些控制物理基础设施的人监视。

有更好的技术方法来构建全球网络,例如 F2F 无线电网状网络,但目前只存在有限的小例子。

您可能需要查看替代分发方法并与您的用户和其他组织交谈,以了解他们认为什么是实用的。

这是@TopherBrink 答案的补充,我非常同意。首先是的,使用 HTTPS 和 HSTS,并且在登录屏幕后面确实有一些东西。其次,我们需要看到一些伦理:


伦理讨论

这是互联网,所有内容都在那里,如果有人想要,他就会得到。它可能被防火墙阻止,有人会找到打孔器或使用代理/VPN,它可能会被 DNS 过滤,有人会制作一个 IP 网站来使用。

如果内容是危险的,那么在几个国家就会存在巨大的风险:监狱、酷刑、死刑。但面对这些风险,您几乎有两种选择:

  1. 不要这样做并允许其他人向这些人提供内容。会有其他,这就是互联网。

  2. 尽最大努力推诿我不认为可否认性是安全性差,但你真的没有选择。

而且我确实看到青少年能够根据互联网上的教程使用 VPN。问题是,尽管他们的配置有效,但它泄露了大量信息。一般来说,如果您不提供其他人会提供的内容,即使内容需要代理/VPN 才能访问。

道德原因比不服务更复杂,也不对某人的死亡负间接责任。如果您放弃提供内容,如果某人因从比您所能做的更安全的地方访问内容而被抓获,您仍然要为某人的死亡负责。

逃避责任不是道德问题。因此,我会为最不受欢迎的选择辩护并主张这样做但要尽最大努力否认。

最后的道德说明

永远记住,有些用户只是愚蠢的,因此没有办法保护他们。 如果您无法处理这样一个事实,即在某些时候您需要为了许多人的利益而牺牲一个,那么就不要这样做但不要因为这个原因而这样做。不仅仅是因为它很危险。


可否认性提议(即一种方法)

最大的问题是您需要找到一种方法将登录信息提供给受信任的用户,而不是将其提供给不受信任的用户。一种绕过它拥有两个网站的方法,比如说:safewebsite.comsecretwebsite.com.

(两个域都只通过 HTTPS 运行,并实现 HSTS)

safewbsite.com 将包含安全内容,默认情况下无需登录即可访问,但用户将能够注册。

secretwebsite.com将始终为任何人返回相同的“安全”页面。获得其余内容的唯一方法是获得授权,即成为 的注册用户secretwebsite.com现在,没有办法注册secretwebsite.com(它只返回一个页面)。为您提供正确令牌的唯一方法secretwebsite.com(为简单起见,假设为 httpsonly cookie)是向正确的 URL 发出 GET。https://secretwebsite.com/logon/6733abf78..77bab99(或base64编码,无论如何)。该 URL 是您的会话令牌。

(使用 GET 进行身份验证是不好的,但由于我们使用的是 HTTPS 并且 URL 是正确的、难以猜测的令牌,因此可以接受)。

令牌必须难以暴力破解。获得正确令牌(指向 的正确链接secretwebsite.com)的唯一方法是来自safewebsite.com

现在,您可以从safewebsite.com可以访问secretwebsite.com.

这种方法的优点是您可以创建一个分类区域(安全网站),您可以从中选择足够负责访问秘密网站的用户。如果您正确构建会话机制,您可以授予和获取用户访问秘密网站的能力。

问题是这仅适用于少数用户,并且容易受到针对您的社会工程的影响。评估用户真实性的制作和算法并非易事(如果可能的话),因此无法自动进行用户选择。另一个问题是,您需要防止safewebsite.com成为有关如何访问的讨论场sectretwebsite.com,因为从那时起您就完全无法控制谁是受信任的,谁不是。


安全摘要

好点:

  • secretwebsite.com不存在,好吗?不,它没有,它总是“正在建设中”。有人在里面看到东西的事实是他自己的思想创造的。
  • 您可以删除有问题的用户的登录信息。或者更好的是,你需要把它们拿出来。如果用户公开谈论他secretwebsite.comsafewebsite.com两个网站的伤害大于好处。
  • 你给自己和你的用户否认。为了使它更合理一点,您可以随机化发送的(假)​​页面的大小secretwebsite.com(因此认为有人获得不同大小的页面是不可行的)。
  • 还有一点混乱。由于没有人知道如何实际访问secretwebsite.com(根据您的心血来潮,该 URL 对某些用户显示,而对其他人不显示,无法量化),您可以secretwebsite.com在危险时刻暂时关闭。

坏点:

  • 否认性不适用于仅仅因为他需要对某人做某事(即,他需要替罪羊)而想要对你做某事的攻击者。否认永远不会阻止任何人成为替罪羊,但如果攻击者拥有对您的身体和司法权力,任何其他安全措施也不会阻止。
  • 您将需要处理关于secretwebsite.com. 重要的是,您不允许它们在 上自由漫游safewebsite.com,否则您将有明显的相关性。
  • 可否认性之所以有效,是因为在现代社会中,怀疑证明(即suspicion != proof)不同。一旦攻击者可以依靠他的怀疑来判刑,他就可以随心所欲地去做。好的一面是,这样的攻击者可能会怀疑任何人,与在街上随便抓人相比,通过网站循环是很多工作。
  • 这是很多工作。如果您的用户社区发展壮大,您将需要非常合乎道德的节制,这很难找到。

额外说明:

  • 危险吗?是的,人们可能会被抓住。但无论如何,他们都会成为替罪羊。专制政权需要替罪羊,您需要确保您的用户比其他人更难成为替罪羊。
  • 您说了很多,但是这样的网站在现实世界中会起作用吗? 的,它有效。曾几何时,我帮助建立了一个这样的网站。那是5年前的事了,这个网站还活着。安全和秘密的一面。
  • 你能告诉我们它是哪个网站吗? ,请阅读上面的原因。