我错过了什么明显的检查吗?
在我看来,您似乎已经对您进行了相当多的本地分析,因此您可能没有遗漏任何明显的东西,但您可能遗漏了一些微妙的东西。作为此答案的补充,我将解释多种攻击,这些攻击可能非常微妙且几乎超出您的控制范围,以至于任何使用主机名的不安全网站和/或使用不安全 DNS 和 HTTPS 配置的客户端(即任何使用普通的旧 HTTP 并且不明确依赖 DNSSEC)成为受害者,攻击者有时几乎无法主动关闭。我还将描述如何防止这些微妙的攻击,以防你错过了本段中的微妙提示。
例如,这样做是否存在 Apache / 服务器级别的妥协?
我想您可以将不安全的配置称为妥协,特别是如果攻击者故意将其配置为不安全。这些错误配置中最危险的可能以服务器上的恶意管理帐户、恶意软件安装、恶意证书颁发机构等形式存在。防病毒软件可能无法检测到所有危害(配置错误),重要的是要考虑到由多个组件组成的安全机制,而不仅仅是防病毒软件。
您应该使所有软件保持最新,尤其是 Apache、您的操作系统,尤其是 Web 浏览器,因为存在针对特定版本的 Apache、您的操作系统和 Web 浏览器的攻击,我建议所有这些类型的攻击是常用的。然而,这里描述的那些不太可能被普遍观察到,因为它们的风险因素或复制它们所需的技能水平与建立该技能所必须具备的成熟度成比例,而且不太可能被被防病毒软件检测到,因为它们作为配置缺陷而不是恶意软件存在。出于某种原因,这两个概念之间存在区别。我认为不应该。
简而言之,互联网由薄薄的一层冰保持平衡,这是事实,成熟、经验丰富的互联网用户(如果你愿意,可以说是前 1%)还没有决定对互联网上的每个人发动战争。行星。当然,可能有一些俄罗斯和中国的黑客破坏了它,但是那些恶意的 IP 子网可以被防火墙和 DNSBL 阻止,它们的扫描被 tarpit 破坏,等等。
要考虑的第一个攻击就像服务提供商过滤其客户流量一样简单。这样做,他们可以很容易地在你的网站上建立一个钓鱼网站,或者注入一些 Javascript 来重定向用户。这样的攻击在法庭上是显而易见的,而且在法庭上是站不住脚的,但你仍然可以观察到这一点。
这可能发生在您的服务器和客户端之间的任何地方,甚至在您自己(或他们自己的)路由器上,我们稍后会检查。现在,我们将专注于存在于您的网络和您的客户网络之间的路由器,您的网络和您的客户网络都不属于您。这可能包括代理服务器和名称服务器。
典型的 ISP 至少为客户端运行一个缓存 DNS 解析器,以减少上游网络的拥塞,这本身就是一种过滤形式。有些人甚至可能运行压缩媒体文件和/或缓存静态 HTML 页面以减少客户端带宽的代理软件。这些缓存中的每一个都有可能在内部或外部被篡改。
在内部,ISP 的恶意员工可能会破坏本地 DNS 缓存,为客户端提供不同的主机名 IP,或者破坏代理以发送不同的页面(或者可能是不同版本的 jquery)。这将是非常明目张胆、难以置信的愚蠢攻击,因为随着攻击的重复,陷入这种高度非法攻击的风险会增加。尽管如此,如果您是美国公民,那么祝您在中国被恶意托管的公共代理服务器移除......
此外,如果您的客户端最终访问的据称由您托管的页面没有一些源代码,您就无法证明您的客户端和服务器之间的某个上游提供商干扰了流量。如果你想找到源头,你需要找到那个证据,或者如果你想解决问题,你需要解决问题。该源代码只是您追查罪魁祸首所需的信息来源之一。
当浏览器从服务器发送一个签名页面时,它会联系一些证书颁发机构,以确保合法签名页面的证书来自它显然来自的服务器。证书颁发机构发送的响应本身使用密钥进行签名,这些密钥通常硬配置到您的操作系统/网络配置/浏览器中,因此欺诈性地伪造这样的响应(我们稍后将针对其他攻击进行介绍)会更少比以某种方式鼓励最终用户公开安装流氓证书颁发机构签名更实用(比如说服他们安装恶意软件). 毫无疑问,两端(服务器和最终用户)的强化 SSL 配置将阻止我在此处描述的所有攻击。
事实证明,即使是现在的家庭路由器也有自己的缓存解析器,再次减少上游网络的流量拥塞。因此,同一专用网络上的恶意计算机可能会毫无问题地感染您的路由器并破坏其 DNS 缓存解析器。
提示蜂窝攻击: - 典型的消费级手机互联网用户在技术上也在专用网络上。实际上,小区路由器可能被错误配置以允许客户端攻击其他客户端。路由器启用了 3G/HSPDA+,可能会引发大量倾向于加密的电磁攻击,但我想如果客户端启用漫游,他们可能不一定知道他们连接到哪些塔或谁运行这些“塔”,导致类似于其他一些无线网络攻击的 MITM 攻击的可能性。- 通过其他提供商进行外部访问的典型手机客户端可以对该移动互联网运营商在本地区域(可能与州区域一样大)和...任何不安全的网站的所有其他用户发起另一种类型的攻击...可能是你的,可能是全部,可能会受到影响。重要的是内容是端到端未加密的。该客户端拥有触发 ISP 缓存解析器发送区域请求所需的一切(您基本上可以将其视为domain,如果您是新手),并为请求伪造数千个虚假响应,这些响应都将击败对目标的任何合法响应。
正如我之前解释的那样,重要的是要意识到签名的、域验证的加密的安全实现(例如强化的 HTTPS 配置)将削弱我在此描述的所有攻击。
针对 DNS 本身的攻击并不少见。有一种称为“比特抢注”的技术,其中注册了一个恶意域,它与目标域只有一位不同。例如,针对 stac k
exchange.com 托管的不安全 HTTP 配置的攻击者可能会注册域 stac i
exchange.com。k
请注意和之间的区别i
只有一位。这针对任何可能具有偶尔翻转该位的 RAM 错误的路由器。
尽管如此,如果攻击者无法计算出他们的目标私钥是什么以使内容看起来合法,那么通过强化的 HTTPS 配置连接的用户几乎肯定会收到有关无效证书的警告。例如,如果他/她说“浏览器说证书无效”,这将作为用户报告的线索出现。
最后的几次攻击使得很难责怪服务器、客户端或路由器之间的任何地方。为了证明谁(可能是无意的)篡改了流量,您需要为您和客户端之间的每个路由器致电管理员,并查看他们的缓存中有什么。这在您寻找潜在问题的过程中引入了额外的更高级别的挑战。您可能会很快被任何外国 ISP 或您接近追踪此问题的权威机构关闭。他们可能会说不同的语言(例如俄语或汉语),他们可能没有将这些行为定为犯罪的法律,他们可能会因为您的种族而对您表现出敌意,并且他们可能不想承认自己网络中的不安全感。
但是,您可以采取一些措施来保护自己免受这种特定攻击,正如他们所说,预防胜于治疗。最重要的是,您应该尝试至少优雅地将用户升级到安全的 SSL 连接。此外,如果您碰巧接到客户的电话,并且当您在打电话时,他们可能会反复重现该问题,请考虑指示他们采取措施,例如清除本地 DNS、代理和浏览器缓存,一个在每次检查症状是否消失。这将告诉您客户端网络(不仅仅是一台计算机)是否有故障。此外,如果您还没有为您的区域使用启用 DNSSEC 的名称服务器,您可能应该考虑迁移到一个,因为这将消除对其他非 HTTP 服务的类似攻击。
同时,我将假设 HTTP 是您想要强化的服务,并且由于您不能保证用户会强化他们的 DNS 配置,您应该依赖浏览器和操作系统来强化他们的 HTTPS 配置,从而尝试升级尽可能让您的用户连接到 HTTPS。
对于在 OS X 上没有防病毒软件的客户端计算机,这不足以确定是否应归咎于客户端网络。OS X 并非完全不安全。当然,它们偶尔会有漏洞,但这些漏洞往往会像任何操作系统一样得到修补。客户在这里出错的地方是他们没有应用确保系统安全所需的自动更新或补丁,或者他们自己安装了流氓软件。在这种情况下,现在默认的 Apple 配置使用类似的证书颁发机构技术来确保对二进制文件进行签名由 Apple 提供,否则会向用户弹出警告(或完全拒绝执行该程序)。当然,Apple 可以自行决定撤销签名的合法性,并且他们主要依靠这一点来保护用户免受恶意软件的侵害。这是一个很好的系统,Linux 上的包管理器也倾向于遵循。
最可怕的是,似乎没有可用于扫描在您的打印机上执行的软件的防病毒软件。因此,一些打印机可能能够攻击他们安装的网络的用户,甚至是外部网络。
总而言之,这些是您可能需要考虑的事项:
- 使您的计算机软件保持最新,包括您的操作系统、任何可能或可能不需要的防病毒软件,尤其是任何浏览器软件。这适用于所有互联网用户,包括您自己,但您可能需要考虑一些软件:tarpits 和 DNSBL 集成软件。
- 警惕浏览器扩展,因为它们本身可能会篡改页面或引入漏洞。
- 在启用 DNSSEC 的名称服务器上托管您的区域。做吧,伙计。不要 ummm 和 arrr 关于它。这就像电子邮件服务器的 SPF;如果你不这样做,你最终会成为攻击的受害者。
- 至少,配置您的服务器以优雅地将您的客户端升级到 SSL。