【问题标题】:What damage can a website do?网站能造成什么损害?
【发布时间】:2015-09-04 14:50:46
【问题描述】:

我时不时地(不小心)遇到我的防病毒软件会警告我的网站。出于好奇,网站可以造成什么样的损害?

我已经从事网络开发工作大约 4 年了,我想不出任何值得警告用户的“真正”损害。也许我遗漏了一些明显的东西,但浏览器和主要操作系统实施的基本安全措施肯定会阻止任何特别侵入性的事情发生吗?

我说的是除了任何欺骗性的威胁(网络钓鱼等)之外的威胁。对浏览器征税是否足以保证防病毒警告(即使用耗尽资源的 javascript 使页面超载)?通常,cookie、缓存和本地存储都有限制——所以我想不出那里会发生什么。

我怀疑这可能有点离题,因为它在技术上没有我通常问的那么具体。如果是这种情况,我会很乐意删除它。

【问题讨论】:

  • 鉴于普通用户会单击他们看到的任何按钮以关闭对话框并查看正在跳舞的泰迪熊,因此谨慎的做法是显示警告。由于浏览器的安全措施,该网站可能需要用户的许可才能进行恶意操作,但用户非常乐意授予该许可。
  • 我认为可能是这种情况。所以答案(基本上)是“没有,未经许可”,但安全软件正在保护用户免受他们自己的天真?
  • 在像 BestBuy 这样的大型电脑商店停下来,询问他们的支持人员,他们正在从那些毫无戒心、不知道该怎么做的普通用户的机器中删除什么样的东西除了单击“确定”或“安装”或“给我看小猫”或“是的,让我的机器更快”之外的任何东西。或者阅读 FBI 关于系统被恶意软件劫持以勒索赎金的警告,这些恶意软件传递给盲目打开附件、点击链接或下载文件的用户。
  • 在大多数情况下,是的。网站可能恶意利用网络浏览器或主机系统中的漏洞的可能性非零,人们永远不应忘记这一点。但是网站可以做的绝大多数事情至少需要用户授予的一些权限。 (除了对弹出窗口等真的很烦。)
  • 这不仅仅是天真。即使是精通网络的专业人士也没有时间审查每个网站和来源。更糟糕的是,许多组织,甚至是技术组织,在没有正确配置 CA 的情况下使用内部自签名证书,因此用户习惯于警告和绕过保护。你追赶那些人并要求他们修复它。几个月过去了。你是 A) 辞掉工作 B) 永远纠缠组织不同部门的人还是 C) 开始无视警告以便完成工作?

标签: security web


【解决方案1】:

主要风险是遇到drive-by download

路过式下载不一定是通常意义上的文件下载,它可能是允许可执行代码在您的系统上下载和执行的浏览器漏洞(称为有效负载)。

一个例子是Microsoft Internet Explorer colspan Element Processing Arbitrary Code Execution Vulnerability

Microsoft Internet Explorer 包含一个漏洞,可能允许 未经身份验证的远程攻击者在服务器上执行任意代码 目标系统。

该漏洞是由于对 web 中的元素处理不当造成的 页。未经身份验证的远程攻击者可以利用此 通过说服用户查看恶意网站的漏洞。如果 成功,攻击者可以利用该漏洞执行 具有用户权限的系统上的任意代码。

该漏洞是由于处理不当不断变化的 colspan 在固定的表格布局中。如果 colspan 可以在之后增加 初始化,它可能会触发基于堆的缓冲区溢出。

但是,今年(2015 年)在 Flash Player 中存在更多最近的利用 such as this 一个:

Adobe Flash Player 13.0.0.269 之前和 14.x 到 16.x 之前 Windows 和 OS X 上的 16.0.0.305 和 Linux 上的 11.2.202.442 之前的版本允许攻击者执行任意代码或导致拒绝服务 (内存损坏)通过未指定的向量

来自网站的另一个攻击向量可能是利用跨域攻击,例如Cross Site Request Forgery。这样的恶意站点可能会向您登录的其他站点发出后台请求。例如,它可能正在向https://facebook.com/delete_account(组成的 URL 路径)发出 AJAX 请求,当您登录 Facebook 时,您的浏览器将传递 cookie 并触发操作。也就是说,如果 Facebook 没有针对删除帐户功能的 CSRF 保护(不过我很确定它有)。

跨域攻击的另一个例子是该站点可能试图利用您使用的另一个站点上的任何XSS 漏洞。它可以将您重定向到另一个站点并在您登录时捕获您的凭据,或者它可以做一些更偷偷摸摸的事情,例如在后台请求一个站点并获取您的会话 cookie。然而,这需要目标站点包含这样的 XSS 漏洞。

【讨论】:

  • 非常有趣!我不明白处理 DOM 元素的缓冲区溢出如何打开一个执行代码的系统!?感谢您的回答。
  • 嗯,浏览器只是软件。它与其他软件一样容易受到缓冲区溢出的影响。该版本的 IE 在存储 colspan 的值时不能进行边界检查 - 将足够的数据放入其中,繁荣!,您可以溢出并将程序流重定向到您的有效负载并控制机器。
  • 这是我正在努力解决的“重定向”位。这一切仍然在造成损害的网页范围内吗?即是否可以完全通过 IE 处理colspan 的糟糕方式来控制系统?还是必须在受害者的机器上驻留其他东西才能利用缓冲区溢出?
  • IE 处理colspan的糟糕方式。
  • 仍然很困惑,不知道 DOM 中的脚本或其他内容如何利用它所呈现的无能力浏览器。无论哪种方式,您已经回答了我的问题,如果我问任何问题更具体地说,它可能会变得可疑,所以我现在对此感到满意。再次感谢队友,非常感谢。
【解决方案2】:

其中一个主要问题是,当您访问某个网站时,它会自动将某些内容下载到您的计算机上。通常普通网站会询问您是否确定要下载该项目,但网站可以在未经您许可的情况下下载某些内容。如果下载的文件是病毒,那么您的计算机上现在就有病毒,该病毒可能对计算机造成任何形式的损害。

查看此处 (https://www.microsoft.com/security/pc-security/virus-whatis.aspx) 了解病毒问题以及如何删除它们。

【讨论】:

  • 虽然这是我所追求的信息,但我不确定情况是否如此。当然它必须是可执行文件并且以某种方式自我执行?
  • 这可能是一个技术问题,但是当您访问一个网站时,它不仅可以自动将某些内容下载到您的计算机上,而且必须。这是网络工作的唯一方式。下载 HTML 和资源,并解析和执行这些资源。
  • 我很欣赏一个响应,通常是我将下载并渲染或显示的一组文件(显然来自本地驱动器),但仅限于浏览器中 - 当然这是绑定的到一定的限度?网站肯定不能将病毒推送到我的驱动器上吗?
  • @JayMee 这就是所有病毒的工作方式,如果它们不能自行执行,那么任何人的计算机都不会出现问题。浏览器可以将病毒推送到计算机上。最好的事情是,如果您可以使用独立的浏览器,该浏览器位于安全的沙箱环境中,不允许任何东西离开此环境。这样做的问题是你会失去很多浏览器需要的功能
  • @ZacharyWeixelbaum - 我可能错了,但我不相信可执行文件可以调用自己?可以更改注册表项或操作系统启动配置,但它不能仅通过存在于我的驱动器上来执行。如果是这样,则 OP 上的所有 cmets 都不正确。
猜你喜欢
  • 2011-02-03
  • 2012-05-29
  • 2014-06-17
  • 2010-09-15
  • 2015-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-10-04
相关资源
最近更新 更多